* [Buildroot] Discussing libudev, was: Re: [PATCH v6 09/32] mesa3d: dri2 does not need udev support
@ 2014-05-12 19:55 Bernd Kuhls
2014-05-12 20:53 ` Yann E. MORIN
2014-05-12 21:02 ` Thomas Petazzoni
0 siblings, 2 replies; 6+ messages in thread
From: Bernd Kuhls @ 2014-05-12 19:55 UTC (permalink / raw)
To: buildroot
Bernd Kuhls <bernd.kuhls@t-online.de> wrote in
news:1399716164-6452-10-git-send-email-bernd.kuhls at t-online.de:
> http://cgit.freedesktop.org/mesa/mesa/commit/configure.ac?id=b959fd967493
> 8e127a34d42d34b903e3a9ae7ad9 "The loader infrastructure for everything
> but DRI2 requires that udev be present"
>
> Check for udev only for dri3.
> Patch sent upstream:
> https://bugs.freedesktop.org/show_bug.cgi?id=75212#c5
Hi,
I would like to discuss feedback I received for my patch to remove udev as
a requirement for mesa dri2 support. Before going into details I would like
to explain the system where I am using xbmc:
The distro (www.fli4l.de) uses buildroot to compile its binary files and
the kernel. As an user-provided package for fli4l I am building xbmc &
tvheadend here, so I am not in a position to have a free design choice
while using fli4l, which I want to do.
Quoted are some important configuration options of fli4l:
buildroot .config
BR2_i386=y
BR2_TOOLCHAIN_USES_UCLIBC=y
BR2_TOOLCHAIN_BUILDROOT=y
BR2_ROOTFS_DEVICE_CREATION_STATIC=y
busybox .config
CONFIG_MDEV=y
Now the feedback on the mesa3d bug tracker:
https://bugs.freedesktop.org/show_bug.cgi?id=75212#c6
Emil Velikov wrote:
--- snip
udev != libudev. The latter can be used without the presence of the former
as it is a selection of helper functions that helps abstract dev
manipulations.
AFAICS you have a couple options here - install libudev or keep a bunch of
local patches. I would encourage you go with the former.
--- snap
This was an interesting piece of information for me because I am patching
xbmc to remove its libudev dependency in the cec-adapter detection part.
While trying to setup Emil?s suggestion I created a libudev package which
was successfully linked by libcec and its binary cec-client to detect my
cec adapter so I guess Emil?s idea could really work.
I have yet to do more testing but reading through the udev/systemd/eudev
discussion of the last months here I would like to ask for feedback already
at this early stage whether a seperate libudev package is useful for the
broader public.
Regards, Bernd
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Buildroot] Discussing libudev, was: Re: [PATCH v6 09/32] mesa3d: dri2 does not need udev support
2014-05-12 19:55 [Buildroot] Discussing libudev, was: Re: [PATCH v6 09/32] mesa3d: dri2 does not need udev support Bernd Kuhls
@ 2014-05-12 20:53 ` Yann E. MORIN
2014-05-12 20:59 ` Bernd Kuhls
2014-05-12 21:02 ` Thomas Petazzoni
1 sibling, 1 reply; 6+ messages in thread
From: Yann E. MORIN @ 2014-05-12 20:53 UTC (permalink / raw)
To: buildroot
Bernd, All,
On 2014-05-12 21:55 +0200, Bernd Kuhls spake thusly:
> Emil Velikov wrote:
> --- snip
> udev != libudev. The latter can be used without the presence of the former
> as it is a selection of helper functions that helps abstract dev
> manipulations.
>
> AFAICS you have a couple options here - install libudev or keep a bunch of
> local patches. I would encourage you go with the former.
> --- snap
>
> This was an interesting piece of information for me because I am patching
> xbmc to remove its libudev dependency in the cec-adapter detection part.
> While trying to setup Emil?s suggestion I created a libudev package which
> was successfully linked by libcec and its binary cec-client to detect my
> cec adapter so I guess Emil?s idea could really work.
>
> I have yet to do more testing but reading through the udev/systemd/eudev
> discussion of the last months here I would like to ask for feedback already
> at this early stage whether a seperate libudev package is useful for the
> broader public.
Short answer: yes.
Loang answer: yes, it would be interesting to the broader public. :-)
Now, this should be well integrated with the existing udev providers.
Regards,
Yann E. MORIN.
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Buildroot] Discussing libudev, was: Re: [PATCH v6 09/32] mesa3d: dri2 does not need udev support
2014-05-12 20:53 ` Yann E. MORIN
@ 2014-05-12 20:59 ` Bernd Kuhls
0 siblings, 0 replies; 6+ messages in thread
From: Bernd Kuhls @ 2014-05-12 20:59 UTC (permalink / raw)
To: buildroot
"Yann E. MORIN" <yann.morin.1998@free.fr> wrote in
news:20140512205324.GD3619 at free.fr:
> Now, this should be well integrated with the existing udev providers.
Hi,
reading the current code I am not sure what BR2_PACKAGE_HAS_UDEV means.
Currently only eudev and systemd select BR2_PACKAGE_HAS_UDEV, both are system
daemons while libudev being only a subset of them. I am not sure if libudev
should be a udev provider at all. My current patch includes
depends on !BR2_INIT_SYSTEMD
depends on !BR2_PACKAGE_EUDEV
Regards, Bernd
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Buildroot] Discussing libudev, was: Re: [PATCH v6 09/32] mesa3d: dri2 does not need udev support
2014-05-12 19:55 [Buildroot] Discussing libudev, was: Re: [PATCH v6 09/32] mesa3d: dri2 does not need udev support Bernd Kuhls
2014-05-12 20:53 ` Yann E. MORIN
@ 2014-05-12 21:02 ` Thomas Petazzoni
2014-05-12 21:12 ` Bernd Kuhls
1 sibling, 1 reply; 6+ messages in thread
From: Thomas Petazzoni @ 2014-05-12 21:02 UTC (permalink / raw)
To: buildroot
Dear Bernd Kuhls,
On Mon, 12 May 2014 21:55:37 +0200, Bernd Kuhls wrote:
> This was an interesting piece of information for me because I am patching
> xbmc to remove its libudev dependency in the cec-adapter detection part.
> While trying to setup Emil?s suggestion I created a libudev package which
> was successfully linked by libcec and its binary cec-client to detect my
> cec adapter so I guess Emil?s idea could really work.
>
> I have yet to do more testing but reading through the udev/systemd/eudev
> discussion of the last months here I would like to ask for feedback already
> at this early stage whether a seperate libudev package is useful for the
> broader public.
What would be the upstream source for this libudev package?
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Buildroot] Discussing libudev, was: Re: [PATCH v6 09/32] mesa3d: dri2 does not need udev support
2014-05-12 21:02 ` Thomas Petazzoni
@ 2014-05-12 21:12 ` Bernd Kuhls
2014-05-12 21:50 ` Thomas Petazzoni
0 siblings, 1 reply; 6+ messages in thread
From: Bernd Kuhls @ 2014-05-12 21:12 UTC (permalink / raw)
To: buildroot
Thomas Petazzoni
<thomas.petazzoni@free-electrons.com> wrote
in news:20140512230238.76c7fb6b at free-electrons.com:
> What would be the upstream source for this libudev package?
Hi,
I copied the systemd package and build only the libudev part, short snippets
from my hacky package:
LIBUDEV_VERSION = 212
LIBUDEV_SITE = http://www.freedesktop.org/software/systemd/
LIBUDEV_SOURCE = systemd-$(LIBUDEV_VERSION).tar.xz
[...]
define LIBUDEV_BUILD_CMDS
$(TARGET_MAKE_ENV) $(MAKE1) -C $(@D) \
src/libudev/libudev.pc \
src/shared/errno-from-name.h \
src/shared/errno-to-name.h \
src/shared/af-from-name.h \
src/shared/af-to-name.h
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) libudev.la
endef
followed by some LIBUDEV_INSTALL_STAGING/TARGET_CMDS file copying.
Regards, Bernd
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Buildroot] Discussing libudev, was: Re: [PATCH v6 09/32] mesa3d: dri2 does not need udev support
2014-05-12 21:12 ` Bernd Kuhls
@ 2014-05-12 21:50 ` Thomas Petazzoni
0 siblings, 0 replies; 6+ messages in thread
From: Thomas Petazzoni @ 2014-05-12 21:50 UTC (permalink / raw)
To: buildroot
Dear Bernd Kuhls,
On Mon, 12 May 2014 23:12:16 +0200, Bernd Kuhls wrote:
> I copied the systemd package and build only the libudev part, short snippets
> from my hacky package:
>
> LIBUDEV_VERSION = 212
> LIBUDEV_SITE = http://www.freedesktop.org/software/systemd/
> LIBUDEV_SOURCE = systemd-$(LIBUDEV_VERSION).tar.xz
> [...]
> define LIBUDEV_BUILD_CMDS
> $(TARGET_MAKE_ENV) $(MAKE1) -C $(@D) \
> src/libudev/libudev.pc \
> src/shared/errno-from-name.h \
> src/shared/errno-to-name.h \
> src/shared/af-from-name.h \
> src/shared/af-to-name.h
> $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) libudev.la
> endef
>
> followed by some LIBUDEV_INSTALL_STAGING/TARGET_CMDS file copying.
To be honest, this seems quite hacky to me, and fragile for future
version bumps.
If you run a complete monster software such as XBMC, I'm pretty sure
your platform can also afford to run either eudev or systemd, no?
In Buildroot, we've always tried to avoid going *against* upstream
decisions. The decision of upstream for udev is to bundle it as part of
systemd. Gentoo has decided to provide a maintained fork of udev as
eudev, so we support both options. But I definitely wouldn't want to
support things that are completely Buildroot-specific.
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2014-05-12 21:50 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-05-12 19:55 [Buildroot] Discussing libudev, was: Re: [PATCH v6 09/32] mesa3d: dri2 does not need udev support Bernd Kuhls
2014-05-12 20:53 ` Yann E. MORIN
2014-05-12 20:59 ` Bernd Kuhls
2014-05-12 21:02 ` Thomas Petazzoni
2014-05-12 21:12 ` Bernd Kuhls
2014-05-12 21:50 ` Thomas Petazzoni
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox