Skip to contentSkip to conversation

package/patch: add optional support for attr

PATCH New Bernd Kuhls 4 participants 19 messages Feb 21, 2016

lore
Share & tools
lore
#0 lore raw

PATCH 1/14 package/patch: add optional support for attr

When attr was compiled before, patch will use it as optional dependency:

$ output/host/usr/bin/x86_64-linux-readelf -a output/target/usr/bin/patch | grep NEEDED
 0x0000000000000001 (NEEDED)             Shared library: [libattr.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.1]
---
 package/patch/patch.mk | 7 +++++++
 1 file changed, 7 insertions(+)
package/patch/patch.mk +7 -0
index 765dfa9..3a94252 100644
@@ -10,4 +10,11 @@ PATCH_SITE = $(BR2_GNU_MIRROR)/patch
 PATCH_LICENSE = GPLv3+
 PATCH_LICENSE_FILES = COPYING
 
+ifeq ($(BR2_PACKAGE_ATTR),y)
+PATCH_CONF_OPTS += --enable-attr
+PATCH_DEPENDENCIES += attr
+else
+PATCH_CONF_OPTS += --disable-attr
+endif
+
 $(eval $(autotools-package))
Signature · 1 line
2.7.0
#1 lore raw

PATCH 2/14 package/libglib2: add optional support for elfutils

When elfutils was compiled before, libglib2 will use it as optional dependency:

$ output/host/usr/bin/x86_64-linux-readelf -a output/target/usr/bin/gresource | grep NEEDED
 0x0000000000000001 (NEEDED)             Shared library: [libgio-2.0.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libgobject-2.0.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libgmodule-2.0.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libglib-2.0.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libelf.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libintl.so.8]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.1]
---
 package/libglib2/libglib2.mk | 7 +++++++
 1 file changed, 7 insertions(+)
package/libglib2/libglib2.mk +7 -0
index 881c5ce..ea45f4a 100644
@@ -107,6 +107,13 @@ ifneq ($(BR2_ENABLE_LOCALE),y)
 LIBGLIB2_DEPENDENCIES += libiconv
 endif
 
+ifeq ($(BR2_PACKAGE_ELFUTILS),y)
+LIBGLIB2_CONF_OPTS += --enable-libelf
+LIBGLIB2_DEPENDENCIES += elfutils
+else
+LIBGLIB2_CONF_OPTS += --disable-libelf
+endif
+
 ifeq ($(BR2_PACKAGE_LIBICONV),y)
 LIBGLIB2_CONF_OPTS += --with-libiconv=gnu
 LIBGLIB2_DEPENDENCIES += libiconv
Signature · 1 line
2.7.0
#2 lore raw

PATCH 3/14 package/pure-ftpd: add optional support for elfutils

In reply to Bernd Kuhls

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

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

The build system offers no option to en-/disable elfutils support, check m4/getloadavg.m4, line 44.

---
 package/pure-ftpd/pure-ftpd.mk | 4 ++++
 1 file changed, 4 insertions(+)
package/pure-ftpd/pure-ftpd.mk +4 -0
index aa65e9e..8df4c23 100644
@@ -16,6 +16,10 @@ PURE_FTPD_CONF_OPTS = \
 	--with-puredb \
 	--with-rfc2640
 
+ifeq ($(BR2_PACKAGE_ELFUTILS),y)
+PURE_FTPD_DEPENDENCIES += elfutils
+endif
+
 ifeq ($(BR2_PACKAGE_LIBCAP),y)
 PURE_FTPD_CONF_OPTS += --with-capabilities
 PURE_FTPD_DEPENDENCIES += libcap
Signature · 1 line
2.7.0
#3 lore raw

PATCH 4/14 package/iproute2: add optional support for elfutils

In reply to Bernd Kuhls

When elfutils was compiled before, iproute2 will use it as optional dependency:

$ output/host/usr/bin/x86_64-linux-readelf -a output/target/sbin/tc | grep NEEDED
 0x0000000000000001 (NEEDED)             Shared library: [libelf.so.1]
[...]

The build system offers no option to en-/disable elfutils support:
http://git.kernel.org/cgit/linux/kernel/git/shemminger/iproute2.git/tree/configure#n252

---
 package/iproute2/iproute2.mk | 4 ++++
 1 file changed, 4 insertions(+)
package/iproute2/iproute2.mk +4 -0
index 6789c52..6fa68c2 100644
@@ -18,6 +18,10 @@ ifeq ($(BR2_PACKAGE_BUSYBOX),y)
 IPROUTE2_DEPENDENCIES += busybox
 endif
 
+ifeq ($(BR2_PACKAGE_ELFUTILS),y)
+IPROUTE2_DEPENDENCIES += elfutils
+endif
+
 # If we've got iptables enable xtables support for tc
 ifeq ($(BR2_PACKAGE_IPTABLES)x$(BR2_STATIC_LIBS),yx)
 IPROUTE2_DEPENDENCIES += iptables
Signature · 1 line
2.7.0
#4 lore raw

PATCH 5/14 package/openipmi: add optional support for gdbm

In reply to Bernd Kuhls

When gdbm was compiled before, openipmi will use it as optional dependency:

$ output/host/usr/bin/x86_64-linux-readelf -a output/target/usr/bin/ipmi_sim | grep NEEDED | sort
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libdl.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libgdbm.so.4]
[...]

The build system offers no option to en-/disable gdbm support, check configure.ac, line 309+

---
 package/openipmi/openipmi.mk | 4 ++++
 1 file changed, 4 insertions(+)
package/openipmi/openipmi.mk +4 -0
index 4dd901b..ea46e19 100644
@@ -23,6 +23,10 @@ OPENIPMI_CONF_OPTS = \
 	--with-python=no \
 	--with-swig=no
 
+ifeq ($(BR2_PACKAGE_GDBM),y)
+OPENIPMI_DEPENDENCIES += gdbm
+endif
+
 ifeq ($(BR2_PACKAGE_OPENSSL),y)
 OPENIPMI_DEPENDENCIES += openssl
 OPENIPMI_CONF_OPTS += --with-openssl=yes
Signature · 1 line
2.7.0
#5 lore raw

PATCH 6/14 package/zsh: add optional support for gdbm

In reply to Bernd Kuhls

When gdbm was compiled before, zsh will use it as optional dependency:

$ output/host/usr/bin/x86_64-linux-readelf -a output/target/bin/zsh | grep NEEDED
 0x0000000000000001 (NEEDED)             Shared library: [libgdbm.so.4]
[...]
---
 package/zsh/zsh.mk | 7 +++++++
 1 file changed, 7 insertions(+)
package/zsh/zsh.mk +7 -0
index 03456b8..c3af034 100644
@@ -12,6 +12,13 @@ ZSH_CONF_OPTS = --bindir=/bin
 ZSH_LICENSE = MIT-like
 ZSH_LICENSE_FILES = LICENCE
 
+ifeq ($(BR2_PACKAGE_GDBM),y)
+ZSH_CONF_OPTS += --enable-gdbm
+ZSH_DEPENDENCIES += gdbm
+else
+ZSH_CONF_OPTS += --disable-gdbm
+endif
+
 # Remove versioned zsh-x.y.z binary taking up space
 define ZSH_TARGET_INSTALL_FIXUPS
 	rm -f $(TARGET_DIR)/bin/zsh-$(ZSH_VERSION)
Signature · 1 line
2.7.0
#6 lore raw

PATCH 7/14 package/zsh: add optional support for libcap

In reply to Bernd Kuhls

When libcap was compiled before, zsh will use it as optional dependency:

$ output/host/usr/bin/x86_64-linux-readelf -a output/target/bin/zsh | grep NEEDED
 0x0000000000000001 (NEEDED)             Shared library: [libgdbm.so.4]
 0x0000000000000001 (NEEDED)             Shared library: [libcap.so.2]
[...]
---
 package/zsh/zsh.mk | 7 +++++++
 1 file changed, 7 insertions(+)
package/zsh/zsh.mk +7 -0
index c3af034..9f4a582 100644
@@ -19,6 +19,13 @@ else
 ZSH_CONF_OPTS += --disable-gdbm
 endif
 
+ifeq ($(BR2_PACKAGE_LIBCAP),y)
+ZSH_CONF_OPTS += --enable-cap
+ZSH_DEPENDENCIES += libcap
+else
+ZSH_CONF_OPTS += --disable-cap
+endif
+
 # Remove versioned zsh-x.y.z binary taking up space
 define ZSH_TARGET_INSTALL_FIXUPS
 	rm -f $(TARGET_DIR)/bin/zsh-$(ZSH_VERSION)
Signature · 1 line
2.7.0
#7 lore raw

PATCH 8/14 package/zsh: add optional support for pcre

In reply to Bernd Kuhls

When pcre was compiled before, zsh will use it as optional dependency:

$ output/host/usr/bin/x86_64-linux-readelf -a output/target/bin/zsh | grep NEEDED
 0x0000000000000001 (NEEDED)             Shared library: [libgdbm.so.4]
 0x0000000000000001 (NEEDED)             Shared library: [libpcre.so.1]
[...]
---
 package/zsh/zsh.mk | 7 +++++++
 1 file changed, 7 insertions(+)
package/zsh/zsh.mk +7 -0
index 9f4a582..8659fc4 100644
@@ -26,6 +26,13 @@ else
 ZSH_CONF_OPTS += --disable-cap
 endif
 
+ifeq ($(BR2_PACKAGE_PCRE),y)
+ZSH_CONF_OPTS += --enable-pcre
+ZSH_DEPENDENCIES += pcre
+else
+ZSH_CONF_OPTS += --disable-pcre
+endif
+
 # Remove versioned zsh-x.y.z binary taking up space
 define ZSH_TARGET_INSTALL_FIXUPS
 	rm -f $(TARGET_DIR)/bin/zsh-$(ZSH_VERSION)
Signature · 1 line
2.7.0
#8 lore raw

PATCH 9/14 package/pulseaudio: add optional support for gdbm

In reply to Bernd Kuhls

When gdbm was compiled before, pulseaudio will use it as optional dependency:

$ output/host/usr/bin/x86_64-linux-readelf -a output/target/usr/bin/pacat | grep NEEDED | sort
 0x0000000000000001 (NEEDED)             Shared library: [libcap.so.2]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libdl.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libgdbm.so.4]
[...]
---
 package/pulseaudio/pulseaudio.mk | 6 ++++++
 1 file changed, 6 insertions(+)
package/pulseaudio/pulseaudio.mk +6 -0
index 86bbb2f..ee522cb 100644
@@ -35,6 +35,12 @@ PULSEAUDIO_DEPENDENCIES = \
 	$(if $(BR2_PACKAGE_WEBRTC_AUDIO_PROCESSING),webrtc-audio-processing) \
 	$(if $(BR2_PACKAGE_SYSTEMD),systemd)
 
+ifeq ($(BR2_PACKAGE_GDBM),y)
+PULSEAUDIO_CONF_OPTS += --with-database=gdbm
+PULSEAUDIO_DEPENDENCIES += gdbm
+else
+PULSEAUDIO_CONF_OPTS += --with-database=simple
+endif
 
 ifeq ($(BR2_PACKAGE_ORC),y)
 PULSEAUDIO_DEPENDENCIES += orc
Signature · 1 line
2.7.0
#9 lore raw

PATCH 10/14 package/pulseaudio: add optional support for jack2

In reply to Bernd Kuhls

When jack2 was compiled before, pulseaudio will use it as optional dependency:

$ output/host/usr/bin/x86_64-linux-readelf -a output/target/usr/lib/pulse-8.0/modules/module-jack-source.so | grep NEEDED | sort
 0x0000000000000001 (NEEDED)             Shared library: [libcap.so.2]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libdl.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libgdbm.so.4]
 0x0000000000000001 (NEEDED)             Shared library: [libjack.so.0]
[...]
---
 package/pulseaudio/pulseaudio.mk | 7 +++++++
 1 file changed, 7 insertions(+)
package/pulseaudio/pulseaudio.mk +7 -0
index ee522cb..cd8d0f9 100644
@@ -42,6 +42,13 @@ else
 PULSEAUDIO_CONF_OPTS += --with-database=simple
 endif
 
+ifeq ($(BR2_PACKAGE_JACK2),y)
+PULSEAUDIO_CONF_OPTS += --enable-jack
+PULSEAUDIO_DEPENDENCIES += jack2
+else
+PULSEAUDIO_CONF_OPTS += --disable-jack
+endif
+
 ifeq ($(BR2_PACKAGE_ORC),y)
 PULSEAUDIO_DEPENDENCIES += orc
 PULSEAUDIO_CONF_ENV += ORCC=$(HOST_DIR)/usr/bin/orcc
Signature · 1 line
2.7.0
#10 lore raw

PATCH 11/14 package/pulseaudio: add optional support for libsoxr

In reply to Bernd Kuhls

When libsoxr was compiled before, pulseaudio will use it as optional dependency:

$ output/host/usr/bin/x86_64-linux-readelf -a output/target/usr/bin/pulseaudio | grep NEEDED
 0x0000000000000001 (NEEDED)             Shared library: [libpulsecore-8.0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libpulse.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libspeexdsp.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libsoxr.so.0]
[...]
---
 package/pulseaudio/pulseaudio.mk | 7 +++++++
 1 file changed, 7 insertions(+)
package/pulseaudio/pulseaudio.mk +7 -0
index cd8d0f9..36661cc 100644
@@ -72,6 +72,13 @@ else
 PULSEAUDIO_CONF_OPTS += --disable-gtk3
 endif
 
+ifeq ($(BR2_PACKAGE_LIBSOXR),y)
+PULSEAUDIO_CONF_OPTS += --with-soxr
+PULSEAUDIO_DEPENDENCIES += libsoxr
+else
+PULSEAUDIO_CONF_OPTS += --without-soxr
+endif
+
 ifneq ($(BR2_INSTALL_LIBSTDCPP),y)
 # The optional webrtc echo canceller is written in C++, causing auto* to want
 # to link module-echo-cancel.so with CXX even if webrtc ISN'T used.
Signature · 1 line
2.7.0
#11 lore raw

PATCH 12/14 package/pulseaudio: add optional support for udev

In reply to Bernd Kuhls

When udev was compiled before, pulseaudio will use it as optional dependency:

$ output/host/usr/bin/x86_64-linux-readelf -a output/target/usr/lib/pulse-8.0/modules/module-alsa-sink.so | grep NEEDED
[...]
 0x0000000000000001 (NEEDED)             Shared library: [libudev.so.1]
[...]
---
 package/pulseaudio/pulseaudio.mk | 7 +++++++
 1 file changed, 7 insertions(+)
package/pulseaudio/pulseaudio.mk +7 -0
index 36661cc..fbac516 100644
@@ -79,6 +79,13 @@ else
 PULSEAUDIO_CONF_OPTS += --without-soxr
 endif
 
+ifeq ($(BR2_PACKAGE_HAS_UDEV),y)
+PULSEAUDIO_CONF_OPTS += --enable-libudev
+PULSEAUDIO_DEPENDENCIES += udev
+else
+PULSEAUDIO_CONF_OPTS += --disable-libudev
+endif
+
 ifneq ($(BR2_INSTALL_LIBSTDCPP),y)
 # The optional webrtc echo canceller is written in C++, causing auto* to want
 # to link module-echo-cancel.so with CXX even if webrtc ISN'T used.
Signature · 1 line
2.7.0
#12 lore raw

PATCH 12/14 package/pulseaudio: add optional support for udev

Bernd,

Quoted 18 lines · Bernd Kuhls

When udev was compiled before, pulseaudio will use it as optional dependency:

$ output/host/usr/bin/x86_64-linux-readelf -a output/target/usr/lib/pulse-8.0/modules/module-alsa-sink.so | grep NEEDED
[...]
 0x0000000000000001 (NEEDED)             Shared library: [libudev.so.1]
[...]
---
 package/pulseaudio/pulseaudio.mk | 7 +++++++
 1 file changed, 7 insertions(+)
package/pulseaudio/pulseaudio.mk +0 -0
index 36661cc..fbac516 100644

package/pulseaudio/pulseaudio.mk else · line 87

Quoted 9 lines
package/pulseaudio/pulseaudio.mk +6 -0
@@ -79,6 +79,13 @@ else
 PULSEAUDIO_CONF_OPTS += --without-soxr
 endif
 
+ifeq ($(BR2_PACKAGE_HAS_UDEV),y)
+PULSEAUDIO_CONF_OPTS += --enable-libudev
+PULSEAUDIO_DEPENDENCIES += udev
+else
+PULSEAUDIO_CONF_OPTS += --disable-libudev
+endif

The udev dependency was already handled by:

	$(if $(BR2_PACKAGE_HAS_UDEV),udev)

However, your patch makes it more explicit by using --enable/--disable. I've therefore adapted your patch and its commit log before applying.

Thanks,

Thomas

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

PATCH 13/14 package/jack2: add optional support for opus

In reply to Bernd Kuhls

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

$ output/host/usr/bin/x86_64-linux-readelf -a output/target/usr/bin/jackd | grep NEEDED
 0x0000000000000001 (NEEDED)             Shared library: [libjackserver.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libpthread.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libopus.so.0]
[...]
---
 package/jack2/jack2.mk | 4 ++++
 1 file changed, 4 insertions(+)
package/jack2/jack2.mk +4 -0
index 73328d3..e018861 100644
@@ -10,6 +10,10 @@ JACK2_LICENSE = GPLv2+ (jack server), LGPLv2.1+ (jack library)
 JACK2_DEPENDENCIES = libsamplerate libsndfile alsa-lib host-python
 JACK2_INSTALL_STAGING = YES
 
+ifeq ($(BR2_PACKAGE_OPUS),y)
+JACK2_DEPENDENCIES += opus
+endif
+
 define JACK2_CONFIGURE_CMDS
 	(cd $(@D); \
 		$(TARGET_CONFIGURE_OPTS)	\
Signature · 1 line
2.7.0
#14 lore raw

PATCH 13/14 package/jack2: add optional support for opus

Quoted 9 lines · Bernd Kuhls

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

$ output/host/usr/bin/x86_64-linux-readelf -a output/target/usr/bin/jackd | grep NEEDED
 0x0000000000000001 (NEEDED)             Shared library: [libjackserver.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libpthread.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libopus.so.0]
[...]

I checked that there is no way to explicitly turn on/off the optional packages
in jack2.

Note that it also seems to have an optional dependency on celt051, dbus,
libsndfile, libsamplerate (based on looking at the wscripts).

Which makes me wonder: how did you find these optional dependencies? I assumed
that you had built an allyesconfig, then deleted output/build, then built again, and then did a readelf. But in that case, you should have caught these other dependencies.

Regards,
Arnout

Quoted 20 lines
---
 package/jack2/jack2.mk | 4 ++++
 1 file changed, 4 insertions(+)
package/jack2/jack2.mk +4 -0
index 73328d3..e018861 100644
@@ -10,6 +10,10 @@ JACK2_LICENSE = GPLv2+ (jack server), LGPLv2.1+ (jack library)
 JACK2_DEPENDENCIES = libsamplerate libsndfile alsa-lib host-python
 JACK2_INSTALL_STAGING = YES
 
+ifeq ($(BR2_PACKAGE_OPUS),y)
+JACK2_DEPENDENCIES += opus
+endif
+
 define JACK2_CONFIGURE_CMDS
 	(cd $(@D); \
 		$(TARGET_CONFIGURE_OPTS)	\
Signature · 6 lines
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF
#15 lore raw

PATCH 13/14 package/jack2: add optional support for opus

Hi Arnout,

Am Sun, 21 Feb 2016 11:51:14 +0100 schrieb Arnout Vandecappelle:

Quoted 3 lines

Note that it also seems to have an optional dependency on celt051, dbus,
libsndfile, libsamplerate (based on looking at the wscripts).

Quoting https://git.busybox.net/buildroot/tree/package/jack2/jack2.mk#n10
"JACK2_DEPENDENCIES = libsamplerate libsndfile alsa-lib host-python"

I tried to compile celt051 with jack2 but somehow celt051 was not detected by jack2.

Quoted 6 lines

Which makes me wonder: how did you find these optional dependencies? I assumed
that you had built an allyesconfig, then deleted output/build, then built again,
and then did a readelf. But in that case, you should have caught these other dependencies.

I built an allyesconfig, but the dependency check was done by the fli4l
[1] build system. Fli4l uses buildroot to compile its binaries but it extends buildroot by a sandbox mechanism. Before installing binaries to staging and target dirs all packages are installed into a package- specific sandbox directory first, in this directory all linked libraries of the package binaries are detected and checked whether they are part of <pkg>_DEPENDENCIES, if not, the build fails.

The list of packages I talked about[2] was gathered that way, so there is no guarantee I caught all dependencies, the same is true for the method you described. Thats the reason I did not bother much about the missing celt051 detection by jack2.

Btw, fli4l uses the top-level parallel make option ;)

Regards, Bernd

[1] http://www.fli4l.de/en/home/whats-that-fli4l/
[2] http://article.gmane.org/gmane.comp.lib.uclibc.buildroot/139935

#16 lore raw

PATCH 13/14 package/jack2: add optional support for opus

Bernd, Arnout, All,

On 2016-02-21 12:03 +0100, Bernd Kuhls spake thusly:

Quoted 10 lines

Am Sun, 21 Feb 2016 11:51:14 +0100 schrieb Arnout Vandecappelle:

Quoted 3 lines

Note that it also seems to have an optional dependency on celt051, dbus,
libsndfile, libsamplerate (based on looking at the wscripts).

Quoting https://git.busybox.net/buildroot/tree/package/jack2/jack2.mk#n10
"JACK2_DEPENDENCIES = libsamplerate libsndfile alsa-lib host-python"

I tried to compile celt051 with jack2 but somehow celt051 was not detected by jack2.

See my previous patch on the topic:

    https://patchwork.ozlabs.org/patch/561388/

There's a comment explaining the part about celt.

Regards,
Yann E. MORIN.

Quoted 31 lines
Quoted 6 lines

Which makes me wonder: how did you find these optional dependencies? I assumed
that you had built an allyesconfig, then deleted output/build, then built again,
and then did a readelf. But in that case, you should have caught these other dependencies.

I built an allyesconfig, but the dependency check was done by the fli4l
[1] build system. Fli4l uses buildroot to compile its binaries but it extends buildroot by a sandbox mechanism. Before installing binaries to staging and target dirs all packages are installed into a package- specific sandbox directory first, in this directory all linked libraries of the package binaries are detected and checked whether they are part of <pkg>_DEPENDENCIES, if not, the build fails.

The list of packages I talked about[2] was gathered that way, so there is no guarantee I caught all dependencies, the same is true for the method you described. Thats the reason I did not bother much about the missing celt051 detection by jack2.

Btw, fli4l uses the top-level parallel make option ;)

Regards, Bernd

[1] http://www.fli4l.de/en/home/whats-that-fli4l/
[2] http://article.gmane.org/gmane.comp.lib.uclibc.buildroot/139935

_______________________________________________
buildroot mailing list
buildroot at busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot

Signature · 6 lines
.-----------------.--------------------.------------------.--------------------.
|  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.  |
'------------------------------^-------^------------------^--------------------'
#17 lore raw

PATCH 14/14 package/jack2: add optional support for readline

In reply to Bernd Kuhls

When readline was compiled before, jack2 will use it as optional dependency:

$ output/host/usr/bin/x86_64-linux-readelf -a output/target/usr/bin/jack_transport | grep NEEDED
 0x0000000000000001 (NEEDED)             Shared library: [libjack.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libpthread.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libopus.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [librt.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libdl.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libreadline.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.1]
---
 package/jack2/jack2.mk | 4 ++++
 1 file changed, 4 insertions(+)
package/jack2/jack2.mk +4 -0
index e018861..81508da 100644
@@ -14,6 +14,10 @@ ifeq ($(BR2_PACKAGE_OPUS),y)
 JACK2_DEPENDENCIES += opus
 endif
 
+ifeq ($(BR2_PACKAGE_READLINE),y)
+JACK2_DEPENDENCIES += readline
+endif
+
 define JACK2_CONFIGURE_CMDS
 	(cd $(@D); \
 		$(TARGET_CONFIGURE_OPTS)	\
Signature · 1 line
2.7.0
#18 lore raw

PATCH 1/14 package/patch: add optional support for attr

In reply to Bernd Kuhls

Dear Bernd Kuhls,

Quoted 10 lines · Bernd Kuhls

When attr was compiled before, patch will use it as optional dependency:

$ output/host/usr/bin/x86_64-linux-readelf -a output/target/usr/bin/patch | grep NEEDED
 0x0000000000000001 (NEEDED)             Shared library: [libattr.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.1]
---
 package/patch/patch.mk | 7 +++++++
 1 file changed, 7 insertions(+)

I've applied all fourteen patches as-is to the master branch, except PATCH 12/14. I'll reply to it separately.

Thomas

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