Skip to contentSkip to conversation

package/gnuradio: add optional support for orc

PATCH New Bernd Kuhls 3 participants 16 messages Feb 21, 2016 – Feb 23, 2016

lore
Share & tools
lore
#0 lore raw

PATCH 1/10 package/gnuradio: add optional support for orc

When orc was compiled before, gnuradio will use it as optional dependency:

$ output/host/usr/bin/x86_64-linux-readelf -a output/target/usr/bin/gnuradio-config-info | grep NEEDED
[...]
 0x0000000000000001 (NEEDED)             Shared library: [liborc-0.4.so.0]
[...]

Apparently there is no option provided by the build system to en-/disable support for orc:
https://github.com/gnuradio/volk/blob/41b4df055b2c8d4f2c23ad2bdc60c0b47b4f0dd8/lib/CMakeLists.txt#L449

---
 package/gnuradio/gnuradio.mk | 4 ++++
 1 file changed, 4 insertions(+)
package/gnuradio/gnuradio.mk +4 -0
index fc5cd1f..b7dbcb9 100644
@@ -17,6 +17,10 @@ GNURADIO_DEPENDENCIES = \
 	host-swig \
 	boost
 
+ifeq ($(BR2_PACKAGE_ORC),y)
+GNURADIO_DEPENDENCIES += orc
+endif
+
 GNURADIO_CONF_OPTS = \
 	-DENABLE_DEFAULT=OFF \
 	-DENABLE_VOLK=ON \
Signature · 1 line
2.7.0
#1 lore raw

PATCH 2/10 package/openobex: depends on libusb-compat

Openobex looks for libusb.pc provided by libusb-compat, not libusb-1.0.pc provided by libusb:
https://github.com/zuckschwerdt/openobex/blob/master/acinclude.m4#L171

Openobex links against both libusb (libusb-1.0.so.0) and libusb-compat (libusb-0.1.so.4):

$ output/host/usr/bin/x86_64-linux-readelf -a output/target/usr/bin/ircp | grep NEEDED
 0x0000000000000001 (NEEDED)             Shared library: [libopenobex.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libusb-0.1.so.4]
 0x0000000000000001 (NEEDED)             Shared library: [libusb-1.0.so.0]
[...]

This patch changes the dependency in openobex.mk and also selects libusb-compat.

---
 package/openobex/Config.in   | 3 ++-
 package/openobex/openobex.mk | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)
package/openobex/Config.in +2 -1
index 2b8cf38..ed1b81f 100644
@@ -22,8 +22,9 @@ comment "bluez support needs a toolchain w/ wchar, threads, dynamic library"
 
 config BR2_PACKAGE_OPENOBEX_LIBUSB
 	bool "enable libusb support"
-	depends on BR2_TOOLCHAIN_HAS_THREADS
+	depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
 	select BR2_PACKAGE_LIBUSB
+	select BR2_PACKAGE_LIBUSB_COMPAT
 
 comment "libusb support needs a toolchain w/ threads"
 	depends on !BR2_TOOLCHAIN_HAS_THREADS
package/openobex/openobex.mk +1 -1
index b50dbb7..6a1a10b 100644
@@ -36,7 +36,7 @@ OPENOBEX_CONF_OPTS += --disable-bluetooth
 endif
 
 ifeq ($(BR2_PACKAGE_OPENOBEX_LIBUSB),y)
-OPENOBEX_DEPENDENCIES += libusb
+OPENOBEX_DEPENDENCIES += libusb-compat
 OPENOBEX_CONF_OPTS += --with-usb=$(STAGING_DIR)
 else
 OPENOBEX_CONF_OPTS += --disable-usb
Signature · 1 line
2.7.0
#2 lore raw

PATCH 2/10 package/openobex: depends on libusb-compat

Dear Bernd Kuhls,

Quoted 12 lines · Bernd Kuhls

Openobex looks for libusb.pc provided by libusb-compat, not libusb-1.0.pc provided by libusb:
https://github.com/zuckschwerdt/openobex/blob/master/acinclude.m4#L171

Openobex links against both libusb (libusb-1.0.so.0) and libusb-compat (libusb-0.1.so.4):

$ output/host/usr/bin/x86_64-linux-readelf -a output/target/usr/bin/ircp | grep NEEDED
 0x0000000000000001 (NEEDED)             Shared library: [libopenobex.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libusb-0.1.so.4]
 0x0000000000000001 (NEEDED)             Shared library: [libusb-1.0.so.0]
[...]
Quoted 8 lines

This patch changes the dependency in openobex.mk and also selects libusb-compat.

---
 package/openobex/Config.in   | 3 ++-
 package/openobex/openobex.mk | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

Applied to master, thanks.

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#3 lore raw

PATCH 3/10 package/gnupg2: add optional support for libusb-compat

In reply to Bernd Kuhls

When libusb-compat was compiled before, gnupg2 will use it as optional dependency:

$ output/host/usr/bin/x86_64-linux-readelf -a output/target/usr/libexec/scdaemon | grep NEEDED
[...]
 0x0000000000000001 (NEEDED)             Shared library: [libusb-0.1.so.4]
[...]
---
 package/gnupg2/gnupg2.mk | 7 +++++++
 1 file changed, 7 insertions(+)
package/gnupg2/gnupg2.mk +7 -0
index 2e1f067..8d4f373 100644
@@ -38,6 +38,13 @@ else
 GNUPG2_CONF_OPTS += --disable-bzip2
 endif
 
+ifeq ($(BR2_PACKAGE_LIBUSB_COMPAT),y)
+GNUPG2_CONF_OPTS += --enable-ccid-driver
+GNUPG2_DEPENDENCIES += libusb-compat
+else
+GNUPG2_CONF_OPTS += --disable-ccid-driver
+endif
+
 ifeq ($(BR2_PACKAGE_READLINE),y)
 GNUPG2_CONF_OPTS += --with-readline=$(STAGING_DIR)
 GNUPG2_DEPENDENCIES += readline
Signature · 1 line
2.7.0
#4 lore raw

PATCH 3/10 package/gnupg2: add optional support for libusb-compat

Dear Bernd Kuhls,

Quoted 8 lines · Bernd Kuhls

When libusb-compat was compiled before, gnupg2 will use it as optional dependency:

$ output/host/usr/bin/x86_64-linux-readelf -a output/target/usr/libexec/scdaemon | grep NEEDED
[...]
 0x0000000000000001 (NEEDED)             Shared library: [libusb-0.1.so.4]
[...]
Quoted 4 lines
---
 package/gnupg2/gnupg2.mk | 7 +++++++
 1 file changed, 7 insertions(+)

Applied to master, thanks.

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#5 lore raw

PATCH 4/10 package/mediastreamer: add optional support for libupnp

In reply to Bernd Kuhls

When libupnp was compiled before, mediastreamer will use it as optional dependency:

$ output/host/usr/bin/x86_64-linux-readelf -a output/target/usr/lib/libmediastreamer_voip.so.3.0.0 | grep NEEDED
 0x0000000000000001 (NEEDED)             Shared library: [libmediastreamer_base.so.3]
 0x0000000000000001 (NEEDED)             Shared library: [libupnp.so.6]
[...]
---
 package/mediastreamer/mediastreamer.mk | 7 +++++++
 1 file changed, 7 insertions(+)
package/mediastreamer/mediastreamer.mk +7 -0
index 79d8e75..047509e 100644
@@ -20,6 +20,13 @@ else
 MEDIASTREAMER_CONF_OPTS += --disable-alsa
 endif
 
+ifeq ($(BR2_PACKAGE_LIBUPNP),y)
+MEDIASTREAMER_CONF_OPTS += --enable-upnp
+MEDIASTREAMER_DEPENDENCIES += libupnp
+else
+MEDIASTREAMER_CONF_OPTS += --disable-upnp
+endif
+
 # portaudio backend needs speex as well
 ifeq ($(BR2_PACKAGE_PORTAUDIO)$(BR2_PACKAGE_SPEEX),yy)
 MEDIASTREAMER_CONF_OPTS += --enable-portaudio
Signature · 1 line
2.7.0
#6 lore raw

PATCH 4/10 package/mediastreamer: add optional support for libupnp

Dear Bernd Kuhls,

Quoted 8 lines · Bernd Kuhls

When libupnp was compiled before, mediastreamer will use it as optional dependency:

$ output/host/usr/bin/x86_64-linux-readelf -a output/target/usr/lib/libmediastreamer_voip.so.3.0.0 | grep NEEDED
 0x0000000000000001 (NEEDED)             Shared library: [libmediastreamer_base.so.3]
 0x0000000000000001 (NEEDED)             Shared library: [libupnp.so.6]
[...]
Quoted 4 lines
---
 package/mediastreamer/mediastreamer.mk | 7 +++++++
 1 file changed, 7 insertions(+)

Patches 4 to 10 applied to master, thanks!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#7 lore raw

PATCH 5/10 package/mediastreamer: add optional support for opus

In reply to Bernd Kuhls

When opus was compiled before, mediastreamer will use it as optional dependency:

$ output/host/usr/bin/x86_64-linux-readelf -a output/target/usr/lib/libmediastreamer_voip.so.3.0.0 | grep NEEDED
 0x0000000000000001 (NEEDED)             Shared library: [libmediastreamer_base.so.3]
 0x0000000000000001 (NEEDED)             Shared library: [libopus.so.0]
[...]
---
 package/mediastreamer/mediastreamer.mk | 7 +++++++
 1 file changed, 7 insertions(+)
package/mediastreamer/mediastreamer.mk +7 -0
index 047509e..cf25196 100644
@@ -27,6 +27,13 @@ else
 MEDIASTREAMER_CONF_OPTS += --disable-upnp
 endif
 
+ifeq ($(BR2_PACKAGE_OPUS),y)
+MEDIASTREAMER_CONF_OPTS += --enable-opus
+MEDIASTREAMER_DEPENDENCIES += opus
+else
+MEDIASTREAMER_CONF_OPTS += --disable-opus
+endif
+
 # portaudio backend needs speex as well
 ifeq ($(BR2_PACKAGE_PORTAUDIO)$(BR2_PACKAGE_SPEEX),yy)
 MEDIASTREAMER_CONF_OPTS += --enable-portaudio
Signature · 1 line
2.7.0
#8 lore raw

PATCH 6/10 package/mediastreamer: add optional support for libvpx

In reply to Bernd Kuhls

When libvpx was compiled before, mediastreamer will use it as optional dependency:

$ output/host/usr/bin/x86_64-linux-readelf -a output/target/usr/lib/libmediastreamer_voip.so.3.0.0 | grep NEEDED
 0x0000000000000001 (NEEDED)             Shared library: [libmediastreamer_base.so.3]
 0x0000000000000001 (NEEDED)             Shared library: [libopus.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libvpx.so.2]
[...]
---
 package/mediastreamer/mediastreamer.mk | 7 +++++++
 1 file changed, 7 insertions(+)
package/mediastreamer/mediastreamer.mk +7 -0
index cf25196..81f5b50 100644
@@ -27,6 +27,13 @@ else
 MEDIASTREAMER_CONF_OPTS += --disable-upnp
 endif
 
+ifeq ($(BR2_PACKAGE_LIBVPX),y)
+MEDIASTREAMER_CONF_OPTS += --enable-vp8
+MEDIASTREAMER_DEPENDENCIES += libvpx
+else
+MEDIASTREAMER_CONF_OPTS += --disable-vp8
+endif
+
 ifeq ($(BR2_PACKAGE_OPUS),y)
 MEDIASTREAMER_CONF_OPTS += --enable-opus
 MEDIASTREAMER_DEPENDENCIES += opus
Signature · 1 line
2.7.0
#9 lore raw

PATCH 7/10 package/pure-ftpd: add optional support for libsodium

In reply to Bernd Kuhls

When libsodium was compiled before, pure-ftpd will use it as optional dependency:

$ output/host/usr/bin/x86_64-linux-readelf -a output/target/usr/bin/pure-statsdecode | grep NEEDED
 0x0000000000000001 (NEEDED)             Shared library: [libsodium.so.17]
 0x0000000000000001 (NEEDED)             Shared library: [libcrypt.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.1]

The build system offers no option to en-/disable libsodium support, check configure.ac, line 953.

---
 package/pure-ftpd/pure-ftpd.mk | 4 ++++
 1 file changed, 4 insertions(+)
package/pure-ftpd/pure-ftpd.mk +4 -0
index 8df4c23..e1040fa 100644
@@ -27,6 +27,10 @@ else
 PURE_FTPD_CONF_OPTS += --without-capabilities
 endif
 
+ifeq ($(BR2_PACKAGE_LIBSODIUM),y)
+PURE_FTPD_DEPENDENCIES += libsodium
+endif
+
 ifeq ($(BR2_PACKAGE_OPENSSL),y)
 PURE_FTPD_CONF_OPTS += --with-tls
 PURE_FTPD_DEPENDENCIES += openssl
Signature · 1 line
2.7.0
#10 lore raw

PATCH 8/10 package/gawk: add optional support for libsigsegv

In reply to Bernd Kuhls

When libsigsegv was compiled before, gawk will use it as optional dependency:

$ output/host/usr/bin/x86_64-linux-readelf -a output/target/usr/bin/gawk | grep NEEDED
  0x0000000000000001 (NEEDED)             Shared library: [libsigsegv.so.2]
[...]

The build system offers no option to en-/disable libsigsegv support:
http://git.savannah.gnu.org/cgit/gawk.git/tree/m4/libsigsegv.m4

---
 package/gawk/gawk.mk | 4 ++++
 1 file changed, 4 insertions(+)
package/gawk/gawk.mk +4 -0
index 507ea6d..da9be95 100644
@@ -16,6 +16,10 @@ ifeq ($(BR2_PACKAGE_BUSYBOX),y)
 GAWK_DEPENDENCIES += busybox
 endif
 
+ifeq ($(BR2_PACKAGE_LIBSIGSEGV),y)
+GAWK_DEPENDENCIES += libsigsegv
+endif
+
 # --with-mpfr requires an argument so just let
 # configure find it automatically
 ifeq ($(BR2_PACKAGE_MPFR),y)
Signature · 1 line
2.7.0
#11 lore raw

PATCH 9/10 package/lxc: add optional support for libseccomp

In reply to Bernd Kuhls

When libseccomp was compiled before, lxc will use it as optional dependency:

$ output/host/usr/bin/x86_64-linux-readelf -a output/target/usr/libexec/lxc/lxc-monitord | grep NEEDED
 0x0000000000000001 (NEEDED)             Shared library: [liblxc.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libcap.so.2]
 0x0000000000000001 (NEEDED)             Shared library: [libseccomp.so.2]
[...]
---
 package/lxc/lxc.mk | 7 +++++++
 1 file changed, 7 insertions(+)
package/lxc/lxc.mk +7 -0
index e382f4d..8190969 100644
@@ -15,4 +15,11 @@ LXC_CONF_OPTS = --disable-apparmor --with-distro=buildroot \
 	--disable-lua --disable-python \
 	$(if $(BR2_PACKAGE_BASH),,--disable-bash)
 
+ifeq ($(BR2_PACKAGE_LIBSECCOMP),y)
+LXC_CONF_OPTS += --enable-seccomp
+LXC_DEPENDENCIES += libseccomp
+else
+LXC_CONF_OPTS += --disable-seccomp
+endif
+
 $(eval $(autotools-package))
Signature · 1 line
2.7.0
#12 lore raw

PATCH 10/10 package/mutt: add optional support for libidn

In reply to Bernd Kuhls

When libidn was compiled before, mutt will use it as optional dependency:

$ output/host/usr/bin/x86_64-linux-readelf -a output/target/usr/bin/mutt | grep NEEDED
 0x0000000000000001 (NEEDED)             Shared library: [libncurses.so.5]
 0x0000000000000001 (NEEDED)             Shared library: [libidn.so.11]
 0x0000000000000001 (NEEDED)             Shared library: [libintl.so.8]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.1]
---
 package/mutt/mutt.mk | 7 +++++++
 1 file changed, 7 insertions(+)
package/mutt/mutt.mk +7 -0
index b07f9b2..14c5be9 100644
@@ -17,6 +17,13 @@ MUTT_DEPENDENCIES += libiconv
 MUTT_CONF_OPTS += --enable-iconv
 endif
 
+ifeq ($(BR2_PACKAGE_LIBIDN),y)
+MUTT_DEPENDENCIES += libidn
+MUTT_CONF_OPTS += --with-idn
+else
+MUTT_CONF_OPTS += --without-idn
+endif
+
 ifeq ($(BR2_PACKAGE_MUTT_IMAP),y)
 MUTT_CONF_OPTS += --enable-imap
 else
Signature · 1 line
2.7.0
#13 lore raw

PATCH 1/10 package/gnuradio: add optional support for orc

In reply to Bernd Kuhls

Dear Bernd Kuhls,

Quoted 8 lines · Bernd Kuhls

When orc was compiled before, gnuradio will use it as optional dependency:

$ output/host/usr/bin/x86_64-linux-readelf -a output/target/usr/bin/gnuradio-config-info | grep NEEDED
[...]
 0x0000000000000001 (NEEDED)             Shared library: [liborc-0.4.so.0]
[...]
Quoted 5 lines

Apparently there is no option provided by the build system to en-/disable support for orc:
https://github.com/gnuradio/volk/blob/41b4df055b2c8d4f2c23ad2bdc60c0b47b4f0dd8/lib/CMakeLists.txt#L449

Can you check it properly finds the orcc compiler in $(HOST_DIR)/usr/bin ? I believe this might need some more tweaks than just depending on orc.

I'm Cc'ing Gwenhael, who is the main contributor to the GNURadio package. Gwenhael, can you have a look at Bernd's patch to enable ORC as an optional dependency of GNURadio ?

Thanks!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#14 lore raw

PATCH 1/10 package/gnuradio: add optional support for orc

In reply to Bernd Kuhls

Hi Bernd,

Best regards,

Gwenhael

Quoted 39 lines · On Sun, 21 Feb 2016 18:34:50 +0100 Bernd Kuhls <[email protected]> wrote:

When orc was compiled before, gnuradio will use it as optional dependency:

$ output/host/usr/bin/x86_64-linux-readelf -a
output/target/usr/bin/gnuradio-config-info | grep NEEDED [...]
 0x0000000000000001 (NEEDED)             Shared library:
[liborc-0.4.so.0] [...]

Apparently there is no option provided by the build system to en-/disable support for orc:
https://github.com/gnuradio/volk/blob/41b4df055b2c8d4f2c23ad2bdc60c0b47b4f0dd8/lib/CMakeLists.txt#L449

---
 package/gnuradio/gnuradio.mk | 4 ++++
 1 file changed, 4 insertions(+)
(quoted diff) +0 -0

b/package/gnuradio/gnuradio.mk index fc5cd1f..b7dbcb9 100644

package/gnuradio/gnuradio.mk +4 -0
@@ -17,6 +17,10 @@ GNURADIO_DEPENDENCIES = \
 	host-swig \
 	boost
 
+ifeq ($(BR2_PACKAGE_ORC),y)
+GNURADIO_DEPENDENCIES += orc
+endif
+
 GNURADIO_CONF_OPTS = \
 	-DENABLE_DEFAULT=OFF \
 	-DENABLE_VOLK=ON \
Signature · 6 lines
2.7.0

_______________________________________________
buildroot mailing list
buildroot at busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot
#15 lore raw

PATCH 1/10 package/gnuradio: add optional support for orc

In reply to Bernd Kuhls

Dear Bernd Kuhls,

Quoted 8 lines · Bernd Kuhls

When orc was compiled before, gnuradio will use it as optional dependency:

$ output/host/usr/bin/x86_64-linux-readelf -a output/target/usr/bin/gnuradio-config-info | grep NEEDED
[...]
 0x0000000000000001 (NEEDED)             Shared library: [liborc-0.4.so.0]
[...]
Quoted 8 lines

Apparently there is no option provided by the build system to en-/disable support for orc:
https://github.com/gnuradio/volk/blob/41b4df055b2c8d4f2c23ad2bdc60c0b47b4f0dd8/lib/CMakeLists.txt#L449

---
 package/gnuradio/gnuradio.mk | 4 ++++
 1 file changed, 4 insertions(+)

Applied to master, thanks!

Thanks to Gwenhael for testing!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com