diff mbox

[v2] package/mpd: fix static linking with tremor

Message ID 20170110223925.2896-1-joerg.krause@embedded.rocks
State Accepted
Commit 43b49a091e886fb1f2d411187d2929d8d17ce3a4
Headers show

Commit Message

Jörg Krause Jan. 10, 2017, 10:39 p.m. UTC
Although tremor (the library is named vorbisidec) provides a pkg-config
file, mpd does not use it to find tremor. Since version 0.20 does throw
an error instead of a warning, that's why the issue was left unnoticed
by the autobuilders.

Help mpd to find tremor by providing the path to the library and passing
LIBS through the environment. We use the host pkg-config tool to get the
correct values from the vorbisidec.pc file.

Fixes:
http://autobuild.buildroot.net/results/6b9/6b97403e70caa12c32494b1c82ce61d3e4e456f6/

Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
---
Changes v2:
  - Add autobuild link
---
 package/mpd/mpd.mk | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

Comments

Peter Korsgaard Jan. 11, 2017, 11:31 a.m. UTC | #1
>>>>> "Jörg" == Jörg Krause <joerg.krause@embedded.rocks> writes:

 > Although tremor (the library is named vorbisidec) provides a pkg-config
 > file, mpd does not use it to find tremor. Since version 0.20 does throw
 > an error instead of a warning, that's why the issue was left unnoticed
 > by the autobuilders.

 > Help mpd to find tremor by providing the path to the library and passing
 > LIBS through the environment. We use the host pkg-config tool to get the
 > correct values from the vorbisidec.pc file.

 > Fixes:
 > http://autobuild.buildroot.net/results/6b9/6b97403e70caa12c32494b1c82ce61d3e4e456f6/

 > Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
 > ---
 > Changes v2:
 >   - Add autobuild link

Committed, thanks.
Peter Korsgaard Jan. 11, 2017, 12:44 p.m. UTC | #2
>>>>> "Jörg" == Jörg Krause <joerg.krause@embedded.rocks> writes:

 > Although tremor (the library is named vorbisidec) provides a pkg-config
 > file, mpd does not use it to find tremor. Since version 0.20 does throw
 > an error instead of a warning, that's why the issue was left unnoticed
 > by the autobuilders.

 > Help mpd to find tremor by providing the path to the library and passing
 > LIBS through the environment. We use the host pkg-config tool to get the
 > correct values from the vorbisidec.pc file.

 > Fixes:
 > http://autobuild.buildroot.net/results/6b9/6b97403e70caa12c32494b1c82ce61d3e4e456f6/

 > Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
 > ---
 > Changes v2:
 >   - Add autobuild link

It seems like this isn't sufficient:

http://autobuild.buildroot.net/results/2e3/2e3dbcdea34053675a0139c1911b6da1a6670e2c/build-end.log

Perhaps we need to add libogg to the pkg-config line as well?
Jörg Krause Jan. 11, 2017, 7:56 p.m. UTC | #3
On Wed, 2017-01-11 at 13:44 +0100, Peter Korsgaard wrote:
> > > > > > "Jörg" == Jörg Krause <joerg.krause@embedded.rocks> writes:
> 
>  > Although tremor (the library is named vorbisidec) provides a pkg-
> config
>  > file, mpd does not use it to find tremor. Since version 0.20 does
> throw
>  > an error instead of a warning, that's why the issue was left
> unnoticed
>  > by the autobuilders.
> 
>  > Help mpd to find tremor by providing the path to the library and
> passing
>  > LIBS through the environment. We use the host pkg-config tool to
> get the
>  > correct values from the vorbisidec.pc file.
> 
>  > Fixes:
>  > http://autobuild.buildroot.net/results/6b9/6b97403e70caa12c32494b1
> c82ce61d3e4e456f6/
> 
>  > Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
>  > ---
>  > Changes v2:
>  >   - Add autobuild link
> 
> It seems like this isn't sufficient:
> 
> http://autobuild.buildroot.net/results/2e3/2e3dbcdea34053675a0139c191
> 1b6da1a6670e2c/build-end.log
> 
> Perhaps we need to add libogg to the pkg-config line as well?

This is not a static linking issue. My read is that mpd forgets to
consider OGG_LIBS in XIPH_LIBS. I will contact upstream about this
issue.

Jörg
diff mbox

Patch

diff --git a/package/mpd/mpd.mk b/package/mpd/mpd.mk
index 10e6b90dd..bee68436d 100644
--- a/package/mpd/mpd.mk
+++ b/package/mpd/mpd.mk
@@ -222,7 +222,10 @@  endif
 
 ifeq ($(BR2_PACKAGE_MPD_TREMOR),y)
 MPD_DEPENDENCIES += tremor
-MPD_CONF_OPTS += --with-tremor
+# Help mpd to find tremor in static linking scenarios
+MPD_CONF_ENV += \
+	TREMOR_LIBS="`$(PKG_CONFIG_HOST_BINARY) --libs vorbisidec`"
+MPD_CONF_OPTS += --with-tremor=$(STAGING_DIR)/usr
 endif
 
 ifeq ($(BR2_PACKAGE_MPD_TWOLAME),y)