Message ID | 1456048218-4061-13-git-send-email-bernd.kuhls@t-online.de |
---|---|
State | Accepted |
Headers | show |
On 02/21/16 10:50, Bernd Kuhls wrote: > 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] > [...] > > Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de> Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> 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 > --- > package/jack2/jack2.mk | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/package/jack2/jack2.mk b/package/jack2/jack2.mk > index 73328d3..e018861 100644 > --- a/package/jack2/jack2.mk > +++ b/package/jack2/jack2.mk > @@ -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) \ >
Hi Arnout, Am Sun, 21 Feb 2016 11:51:14 +0100 schrieb Arnout Vandecappelle: > 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. > 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
Bernd, Arnout, All, On 2016-02-21 12:03 +0100, Bernd Kuhls spake thusly: > Am Sun, 21 Feb 2016 11:51:14 +0100 schrieb Arnout Vandecappelle: > > 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. > > 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@busybox.net > http://lists.busybox.net/mailman/listinfo/buildroot
diff --git a/package/jack2/jack2.mk b/package/jack2/jack2.mk index 73328d3..e018861 100644 --- a/package/jack2/jack2.mk +++ b/package/jack2/jack2.mk @@ -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) \
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] [...] Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de> --- package/jack2/jack2.mk | 4 ++++ 1 file changed, 4 insertions(+)