[oe-commits] Denis 'GNUtoo' Carikli : libsdl-mixer: fixed the absence of ogg support( because of a libmikmod issue), bump PR and convert libmikmod staging

git version control git at git.openembedded.org
Sun Aug 8 18:37:03 UTC 2010


Module: openembedded.git
Branch: org.openembedded.dev
Commit: 6548af38728b8929e773fbe86418b794def3c338
URL:    http://gitweb.openembedded.net/?p=openembedded.git&a=commit;h=6548af38728b8929e773fbe86418b794def3c338

Author: Denis 'GNUtoo' Carikli <GNUtoo at no-log.org>
Date:   Sat Aug  7 14:56:38 2010 +0200

libsdl-mixer: fixed the absence of ogg support(because of a libmikmod issue),bump PR and convert libmikmod staging

When I ran wesnoth 1.8.3 I had no music and similar messages on the console:
  error audio: Could not load music file '/usr/share/wesnoth/data/core/music/breaking_the_chains.ogg': Couldn't read from '/usr/share/wesnoth/data/core/music/breaking_the_chains.ogg'
At first I tought that I missed a dlopend library.
But I did an ldd on libsdl-mixer and compared with the version on my desktop:
 root at htcdream ~ # ldd /usr/lib/libSDL_mixer-1.2.so.0.10.1
 	libSDL-1.2.so.0 => /usr/lib/libSDL-1.2.so.0 (0x400 54000)
 	libpthread.so.0 => /lib/libpthread.so.0 (0x400d4000)
 	libmad.so.0 => /usr/lib/libmad.so.0 (0x400f4000)
 	libc.so.6 => /lib/libc.so.6 (0x40110000)
 	libm.so.6 => /lib/libm.so.6 (0x40234000)
 	libts-1.0.so.0 => /usr/lib/libts-1.0.so.0 (0x402d0000)
 	libdl.so.2 => /lib/libdl.so.2 (0x402dc000)
 	libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x402e8000)
 	/lib/ld-linux.so.3 (0x2a000000)
And I found huge differences with my desktop version:
	linux-vdso.so.1 =>  (0x00007fff63cef000)
	libm.so.6 => /lib/libm.so.6 (0x00007f32232dd000)
	libmikmod.so.2 => /usr/lib/libmikmod.so.2 (0x00007f322308d000)
	libdl.so.2 => /lib/libdl.so.2 (0x00007f3222e88000)
	libvorbisfile.so.3 => /usr/lib/libvorbisfile.so.3 (0x00007f3222c80000)
	libsmpeg-0.4.so.0 => /usr/lib/libsmpeg-0.4.so.0 (0x00007f3222a25000)
	libSDL-1.2.so.0 => /usr/lib/libSDL-1.2.so.0 (0x00007f322278c000)
	libc.so.6 => /lib/libc.so.6 (0x00007f3222409000)
	/lib64/ld-linux-x86-64.so.2 (0x00007f32237e3000)
	libvorbis.so.0 => /usr/lib/libvorbis.so.0 (0x00007f32221dc000)
	libogg.so.0 => /usr/lib/libogg.so.0 (0x00007f3221fd4000)
	libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007f3221cc0000)
	libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00007f3221aa9000)
	libpulse-simple.so.0 => /usr/lib/libpulse-simple.so.0 (0x00007f32218a4000)
	libpulse.so.0 => /usr/lib/libpulse.so.0 (0x00007f3221662000)
	libdirectfb-1.2.so.0 => /usr/lib/libdirectfb-1.2.so.0 (0x00007f32213df000)
	libfusion-1.2.so.0 => /usr/lib/libfusion-1.2.so.0 (0x00007f32211d4000)
	libdirect-1.2.so.0 => /usr/lib/libdirect-1.2.so.0 (0x00007f3220fbb000)
	libpthread.so.0 => /lib/libpthread.so.0 (0x00007f3220d9e000)
	libpulsecommon-0.9.21.so => /usr/lib/libpulsecommon-0.9.21.so (0x00007f3220b51000)
	librt.so.1 => /lib/librt.so.1 (0x00007f3220949000)
	libX11.so.6 => /usr/lib/libX11.so.6 (0x00007f3220610000)
	libICE.so.6 => /usr/lib/libICE.so.6 (0x00007f32203f4000)
	libSM.so.6 => /usr/lib/libSM.so.6 (0x00007f32201eb000)
	libXtst.so.6 => /usr/lib/libXtst.so.6 (0x00007f321ffe4000)
	libwrap.so.0 => /lib/libwrap.so.0 (0x00007f321fdd8000)
	libsndfile.so.1 => /usr/lib/libsndfile.so.1 (0x00007f321fb73000)
	libdbus-1.so.3 => /lib/libdbus-1.so.3 (0x00007f321f934000)
	libxcb.so.1 => /usr/lib/libxcb.so.1 (0x00007f321f716000)
	libuuid.so.1 => /lib/libuuid.so.1 (0x00007f321f511000)
	libXext.so.6 => /usr/lib/libXext.so.6 (0x00007f321f2ff000)
	libXi.so.6 => /usr/lib/libXi.so.6 (0x00007f321f0ee000)
	libnsl.so.1 => /lib/libnsl.so.1 (0x00007f321eed4000)
	libFLAC.so.8 => /usr/lib/libFLAC.so.8 (0x00007f321ec89000)
	libvorbisenc.so.2 => /usr/lib/libvorbisenc.so.2 (0x00007f321e8ad000)
	libXau.so.6 => /usr/lib/libXau.so.6 (0x00007f321e6a9000)
	libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x00007f321e4a3000)
Then I looked in the configure log of libsdl-mixer and found that:
 .../sysroots/armv6-novfp-oe-linux-gnueabi/usr/lib/libmikmod.so: undefined reference to `floor'
 collect2: ld returned 1 exit status
 configure:11865: $? = 1
During the detection of libvorbis.

I had no idea on how to fix that,so I asked on irc(#oe on Freenode):
Khem helped me a lot and at some point said(about libmikmod):
 Aug 03 16:57:38 <khem>  add -lm to LDFLAGS
And finally:
 Aug 03 17:35:33 <ensc|w>	GNUtoo|laptop: on first glance, EXTRA_OECONF='-lm' might fix it
 Aug 03 17:35:37 <GNUtoo|laptop>	armv6-novfp-oe-linux-gnueabi/libmikmod-3.2.0-beta2-r1/libmikmod-3.2.0-beta2/libmikmod
 Aug 03 17:35:50 <GNUtoo|laptop>	ensc|w, isn't that risky? but I can try that
 Aug 03 17:36:02 <GNUtoo|laptop>	you mean OEMAKE?
 Aug 03 17:36:11 <ensc|w>	wrong... EXTRA_OECONF='LIBRARY_LIB=-lm'
Thanks a lot for the help

About the PR bump:
 19:59 < khem> you should only bump the pr of the package you are modifying
 19:59 < GNUtoo|htcdream> khem: ok thanks a lot
So I bumped only PR of libmikmod and sdl-mixer

---

 recipes/libmikmod/libmikmod_3.2.0-beta2.bb |   11 ++---------
 recipes/libsdl/libsdl-mixer_1.2.11.bb      |    2 +-
 2 files changed, 3 insertions(+), 10 deletions(-)

diff --git a/recipes/libmikmod/libmikmod_3.2.0-beta2.bb b/recipes/libmikmod/libmikmod_3.2.0-beta2.bb
index 61cbdbc..d692f1a 100644
--- a/recipes/libmikmod/libmikmod_3.2.0-beta2.bb
+++ b/recipes/libmikmod/libmikmod_3.2.0-beta2.bb
@@ -3,7 +3,7 @@ SECTION = "libs"
 PRIORITY = "optional"
 LICENSE = "LGPL"
 
-PR="r1"
+PR="r2"
 
 DEFAULT_PREFERENCE = "-1"
 
@@ -26,14 +26,7 @@ EXTRA_OECONF = "\
   --disable-ultra \
   --disable-esdtest \
   --enable-threads \
+  LIBRARY_LIB=-lm \
 "
-
-do_stage() {
-	oe_libinstall -a -so -C libmikmod libmikmod ${STAGING_LIBDIR}
-	install -m 0644 ${S}/include/mikmod.h ${STAGING_INCDIR}/
-	install -d ${STAGING_DATADIR}/aclocal/
-	install -m 0644 libmikmod.m4 ${STAGING_DATADIR}/aclocal/
-}
-
 SRC_URI[md5sum] = "19fc0879aebd1610813a23bd84726362"
 SRC_URI[sha256sum] = "857b66ef04d695f70414188b985e08b04f1f62cc250d72a43d0e0609dfbdba03"
diff --git a/recipes/libsdl/libsdl-mixer_1.2.11.bb b/recipes/libsdl/libsdl-mixer_1.2.11.bb
index 8f45939..1d5b1f9 100644
--- a/recipes/libsdl/libsdl-mixer_1.2.11.bb
+++ b/recipes/libsdl/libsdl-mixer_1.2.11.bb
@@ -4,7 +4,7 @@ PRIORITY = "optional"
 DEPENDS = "virtual/libsdl flac libmikmod libvorbis libmad"
 LICENSE = "LGPL"
 
-PR = "r2"
+PR = "r3"
 
 SRC_URI = "http://www.libsdl.org/projects/SDL_mixer/release/SDL_mixer-${PV}.tar.gz \
            file://fix-flac-madness.diff"





More information about the Openembedded-commits mailing list