systemd: add option to enable kdbus support
PATCH v2 1/2 systemd: add option to enable kdbus support
In the future when the kernel offically supports kdbus, this option should automatically enable the kernel kdbus config option(s).
--- package/systemd/Config.in | 5 +++++ package/systemd/systemd.mk | 6 ++++++ 2 files changed, 11 insertions(+)
package/systemd/Config.in +5 -0
@@ -71,6 +71,11 @@ config BR2_PACKAGE_SYSTEMD_ALL_EXTRAS Enable extra features for Systemd: journal compression and signing. +config BR2_PACKAGE_SYSTEMD_KDBUS + bool "enable kdbus support" + help + Enable kdbus support for Systemd. + config BR2_PACKAGE_SYSTEMD_JOURNAL_GATEWAY bool "HTTP server for journal events" select BR2_PACKAGE_LIBMICROHTTPD
package/systemd/systemd.mk +6 -0
@@ -77,6 +77,12 @@ else SYSTEMD_CONF_OPTS += --disable-seccomp endif +ifeq ($(BR2_PACKAGE_SYSTEMD_KDBUS),y) +SYSTEMD_CONF_OPTS += --enable-kdbus +else +SYSTEMD_CONF_OPTS += --disable-kdbus +endif + ifeq ($(BR2_PACKAGE_SYSTEMD_ALL_EXTRAS),y) SYSTEMD_DEPENDENCIES += \ xz \
Signature · 1 line
1.9.1
PATCH v2 2/2 miraclecast: new package
---
Changes v1 -> v2:
- Added a SYSTEMD_KDBUS option (suggested by Baruch)
- Fixed select and depends (suggested by Yann)
- Add dependancy on host-pkgconf (suggested by Yann)
- Installed dbus configuration file
To Do:
- Need to actually test the package on real hardware
--- package/Config.in | 1 + package/miraclecast/Config.in | 23 +++++++++++++++++++++++ package/miraclecast/miraclecast.mk | 23 +++++++++++++++++++++++ 3 files changed, 47 insertions(+) create mode 100644 package/miraclecast/Config.in create mode 100644 package/miraclecast/miraclecast.mk
package/Config.in +1 -0
@@ -20,6 +20,7 @@ menu "Audio and video applications" source "package/lame/Config.in" source "package/libvpx/Config.in" source "package/madplay/Config.in" + source "package/miraclecast/Config.in" source "package/mjpegtools/Config.in" source "package/modplugtools/Config.in" source "package/mpd/Config.in"
package/miraclecast/Config.in new file +23 -0
@@ -0,0 +1,23 @@ +config BR2_PACKAGE_MIRACLECAST + bool "miraclecast" + depends on BR2_PACKAGE_SYSTEMD + depends on BR2_TOOLCHAIN_USES_GLIBC + depends on BR2_USE_WCHAR # glib2 + depends on BR2_TOOLCHAIN_HAS_THREADS # glib2 + depends on BR2_USE_MMU # glib2 + select BR2_PACKAGE_LIBGLIB2 + select BR2_PACKAGE_GSTREAMER1 + select BR2_PACKAGE_READLINE + select BR2_PACKAGE_SYSTEMD_KDBUS + help + The MiracleCast project provides software to connect external + monitors to your system via Wifi. It is compatible to the + Wifi-Display specification also known as Miracast. MiracleCast + implements the Display-Source as well as Display-Sink side. + + https://github.com/albfan/miraclecast + +comment "miraclecast needs systemd and a glibc toolchain w/ threads and wchar" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_USES_GLIBC || !BR2_USE_WCHAR \ + || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_PACKAGE_SYSTEMD
package/miraclecast/miraclecast.mk new file +23 -0
@@ -0,0 +1,23 @@ +################################################################################ +# +# miraclecast +# +################################################################################ + +MIRACLECAST_VERSION = 8b61f733da124ccbfd1b85e188581fad1c41c1e1 +MIRACLECAST_SITE = $(call github,albfan,miraclecast,$(MIRACLECAST_VERSION)) +MIRACLECAST_LICENSE = LGPLv2.1+ GPLv2 (gdhcp) GPLv2.1 (htable) +MIRACLECAST_LICENSE_FILES = COPYING LICENSE_gdhcp LICENSE_htable LICENSE_lgpl +MIRACLECAST_DEPENDENCIES = host-pkgconf systemd gstreamer1 \ + readline libglib2 +# Straight out the repository, no ./configure +MIRACLECAST_AUTORECONF = YES + +define MIRACLECAST_INSTALL_DBUS_POLICY + $(INSTALL) -m 0644 -D \ + $(@D)/res/org.freedesktop.miracle.conf \ + $(TARGET_DIR)/etc/dbus-1/system.d/org.freedesktop.miracle.conf +endef +MIRACLECAST_POST_INSTALL_TARGET_HOOKS += MIRACLECAST_INSTALL_DBUS_POLICY + +$(eval $(autotools-package))
Signature · 1 line
1.9.1
PATCH v2 2/2 miraclecast: new package
Dear Ryan Barnett,
Quoted 3 lines · Ryan Barnett
Signed-off-by Ryan Barnett <[email protected]>CC Baruch Siach <[email protected]>CC Yann E. MORIN <[email protected]>
Guess what? A miracle happened for miraclecast: it was just merged in Buildroot's next branch!
I just did a few minor fixups:
[Thomas:
- add hash file
- fix license information: use comma as a separator in <pkg>_LICENSE, and htable is under LGPLv2.1+ and not GPLv2.1+ (which doesn't exist)]
Thanks, and sorry for the long wait. Feel free to send a follow-up patch bumping miraclecast if there's a more recent upstream version available.
Thanks!
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH v2 1/2 systemd: add option to enable kdbus support
In reply to Ryan BarnettHi Ryan,
Quoted 2 lines · Ryan Barnett
In the future when the kernel offically supports kdbus, this option should automatically enable the kernel kdbus config option(s).
So there is no need to fiddle with kernel version dependency for --enable-kdbus?
[...]
package/systemd/systemd.mk else · line 84
Quoted 5 lines
package/systemd/systemd.mk +5
-0+ifeq ($(BR2_PACKAGE_SYSTEMD_KDBUS),y) +SYSTEMD_CONF_OPTS += --enable-kdbus +else +SYSTEMD_CONF_OPTS += --disable-kdbus +endif
Is there any reason not to enable kdbus when the kernel supports that? If not, I'd suggest to add --enable-kdbus unconditionally, and remove BR2_PACKAGE_SYSTEMD_KDBUS.
baruch
Signature · 3 lines
http://baruch.siach.name/blog/ ~. .~ Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
- baruch at tkos.co.il - tel: +972.2.679.5364, http://www.tkos.co.il -PATCH v2 1/2 systemd: add option to enable kdbus support
Baruch,
Quoted 8 lines · Baruch Siach
Hi Ryan,
Quoted 2 lines · Ryan Barnett
In the future when the kernel offically supports kdbus, this option should automatically enable the kernel kdbus config option(s).
So there is no need to fiddle with kernel version dependency for --enable-kdbus?
To be honest, this is the first time I ever used systemd with buildroot and I really don't know how kdbus integrates with it. The real reason that the kdbus support is needed for miraclecast is for it to install headers that it depends on "systemd/sd-events.h". I've build the raspberry pi kernel and a vanilla 3.19 (QEMU x86) kernel with systemd with the --enable-kdbus and it compiled and installed the required headers I needed. So it appears that you can enable kdbus without the kernel side support. There also isn't anything (that I can find) in the systemd documentation saying that the kernel side kdbus support is required.
If anyone can help clarify this I would appreciate since I am by no means knowledge in this area.
Quoted 9 lines
package/systemd/systemd.mk else · line 84
Quoted 5 lines
package/systemd/systemd.mk +5
-0+ifeq ($(BR2_PACKAGE_SYSTEMD_KDBUS),y) +SYSTEMD_CONF_OPTS += --enable-kdbus +else +SYSTEMD_CONF_OPTS += --disable-kdbus +endifIs there any reason not to enable kdbus when the kernel supports that? If not, I'd suggest to add --enable-kdbus unconditionally, and remove
BR2_PACKAGE_SYSTEMD_KDBUS.
In the future, I would agree with this. However, as I stated above, it appears that systemd can be compiled with kdbus support without having the kernel side feature enabled. With kdbus in systemd being able to enabled with the kernel kdbus support, I would be in favor of keeping this BR2_PACKAGE_SYSTEMD_KDBUS option.
Thanks,
-Ryan
PATCH v2 1/2 systemd: add option to enable kdbus support
All,
Quoted 9 lines
Quoted 3 lines
Is there any reason not to enable kdbus when the kernel supports that? If not, I'd suggest to add --enable-kdbus unconditionally, and remove
BR2_PACKAGE_SYSTEMD_KDBUS.In the future, I would agree with this. However, as I stated above, it appears that systemd can be compiled with kdbus support without having the kernel side feature enabled. With kdbus in systemd being able to enabled with the kernel kdbus support, I would be in favor of keeping this
BR2_PACKAGE_SYSTEMD_KDBUSoption.
I'm actually using this patch as is, and it works for me. I also do not have kdbus enabled in the kernel, and am only using this support to get additional libraries provided by systemd for
Thanks,
Mike
Thomas Petazzoni
AppliedPATCH v2 1/2 systemd: add option to enable kdbus support
In reply to Ryan BarnettDear Ryan Barnett,
Quoted 8 lines · Ryan Barnett
In the future when the kernel offically supports kdbus, this option should automatically enable the kernel kdbus config option(s).
Signed-off-by Ryan Barnett <[email protected]>--- package/systemd/Config.in | 5 +++++ package/systemd/systemd.mk | 6 ++++++ 2 files changed, 11 insertions(+)
Applied, thanks.
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com