diff mbox

sdl_mixer: Enable support for libmodplug

Message ID 1413602358-7476-1-git-send-email-maarten@treewalker.org
State Changes Requested
Headers show

Commit Message

Maarten ter Huurne Oct. 18, 2014, 3:19 a.m. UTC
Signed-off-by: Maarten ter Huurne <maarten@treewalker.org>
---
 .../sdl_mixer/sdl_mixer-0001-modplug-include.patch | 33 ++++++++++++++++++++++
 package/sdl_mixer/sdl_mixer.mk                     |  7 +++++
 2 files changed, 40 insertions(+)
 create mode 100644 package/sdl_mixer/sdl_mixer-0001-modplug-include.patch

Comments

Arnout Vandecappelle Oct. 18, 2014, 1:42 p.m. UTC | #1
On 18/10/14 05:19, Maarten ter Huurne wrote:
> Signed-off-by: Maarten ter Huurne <maarten@treewalker.org>

Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>


 Regards,
 Arnout

> ---
>  .../sdl_mixer/sdl_mixer-0001-modplug-include.patch | 33 ++++++++++++++++++++++
>  package/sdl_mixer/sdl_mixer.mk                     |  7 +++++
>  2 files changed, 40 insertions(+)
>  create mode 100644 package/sdl_mixer/sdl_mixer-0001-modplug-include.patch
> 
> diff --git a/package/sdl_mixer/sdl_mixer-0001-modplug-include.patch b/package/sdl_mixer/sdl_mixer-0001-modplug-include.patch
> new file mode 100644
> index 0000000..20a475f
> --- /dev/null
> +++ b/package/sdl_mixer/sdl_mixer-0001-modplug-include.patch
> @@ -0,0 +1,33 @@
> +Fix the modplug include path
> +
> +Since libmodplug 0.8.8.5, the cflags reported by pkg-config no longer
> +add the "libmodplug" dir, so the #include directive must contain that
> +path instead.
> +
> +Upstream status: the SDL-1.2 branch seems to be unmaintained
> +
> +Signed-off-by: Maarten ter Huurne <maarten@treewalker.org>
> +
> +diff -ru SDL_mixer-1.2.12.org/configure.in sdl_mixer-1.2.12/configure.in
> +--- SDL_mixer-1.2.12.org/configure.in	2012-01-15 23:01:05.000000000 +0100
> ++++ sdl_mixer-1.2.12/configure.in	2014-07-03 05:25:44.761854572 +0200
> +@@ -315,7 +315,7 @@
> + 	EXTRA_CFLAGS="$EXTRA_CFLAGS -DMODPLUG_MUSIC  $MODPLUG_CFLAGS"
> + 	EXTRA_LDFLAGS="$EXTRA_LDFLAGS $MODPLUG_LIBS"
> + dnl	AC_TRY_COMPILE([
> +-dnl     #include "modplug.h"
> ++dnl     #include "libmodplug/modplug.h"
> + dnl    ],[
> + dnl    ],[
> +     have_libmodplug=yes
> +diff -ru SDL_mixer-1.2.12.org/music_modplug.h sdl_mixer-1.2.12/music_modplug.h
> +--- SDL_mixer-1.2.12.org/music_modplug.h	2012-01-15 23:01:05.000000000 +0100
> ++++ sdl_mixer-1.2.12/music_modplug.h	2014-07-03 05:26:03.919219618 +0200
> +@@ -1,6 +1,6 @@
> + #ifdef MODPLUG_MUSIC
> + 
> +-#include "modplug.h"
> ++#include "libmodplug/modplug.h"
> + #include "SDL_rwops.h"
> + #include "SDL_audio.h"
> + #include "SDL_mixer.h"
> diff --git a/package/sdl_mixer/sdl_mixer.mk b/package/sdl_mixer/sdl_mixer.mk
> index a602b6e..45ee6b6 100644
> --- a/package/sdl_mixer/sdl_mixer.mk
> +++ b/package/sdl_mixer/sdl_mixer.mk
> @@ -20,6 +20,13 @@ SDL_MIXER_CONF_OPTS = \
>  	--disable-music-mp3 \
>  	--disable-music-flac # configure script fails when cross compiling
>  
> +ifeq ($(BR2_PACKAGE_LIBMODPLUG),y)
> +SDL_MIXER_CONF_OPTS += --enable-music-mod-modplug
> +SDL_MIXER_DEPENDENCIES += libmodplug
> +else
> +SDL_MIXER_CONF_OPTS += --disable-music-mod-modplug
> +endif
> +
>  ifeq ($(BR2_PACKAGE_LIBMAD),y)
>  SDL_MIXER_CONF_OPTS += --enable-music-mp3-mad-gpl
>  SDL_MIXER_DEPENDENCIES += libmad
>
Thomas Petazzoni Oct. 19, 2014, 10:22 a.m. UTC | #2
Dear Maarten ter Huurne,

On Sat, 18 Oct 2014 05:19:18 +0200, Maarten ter Huurne wrote:
> Signed-off-by: Maarten ter Huurne <maarten@treewalker.org>
> ---
>  .../sdl_mixer/sdl_mixer-0001-modplug-include.patch | 33 ++++++++++++++++++++++
>  package/sdl_mixer/sdl_mixer.mk                     |  7 +++++
>  2 files changed, 40 insertions(+)
>  create mode 100644 package/sdl_mixer/sdl_mixer-0001-modplug-include.patch

Unfortunately, this doesn't build here:

checking for MODPLUG... configure: error: The pkg-config script could not be found or is too old.  Make sure it
is in your PATH or set the PKG_CONFIG environment variable to the full
path to pkg-config.

Alternatively, you may set the environment variables MODPLUG_CFLAGS
and MODPLUG_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.

To get pkg-config, see <http://pkg-config.freedesktop.org/>.
See `config.log' for more details.
make: *** [/home/thomas/projets/buildroot/output/build/sdl_mixer-1.2.12/.stamp_configured] Erreur 1

Seems like there is a missing dependency on host-pkgconf. The failing
defconfig was:

BR2_arm=y
BR2_TOOLCHAIN_EXTERNAL=y
BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y
BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y
BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.org/toolchains/tarballs/br-arm-full-2014.08.tar.bz2"
BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_16=y
BR2_TOOLCHAIN_EXTERNAL_LARGEFILE=y
BR2_TOOLCHAIN_EXTERNAL_INET_IPV6=y
BR2_TOOLCHAIN_EXTERNAL_LOCALE=y
# BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_DEBUG is not set
BR2_TOOLCHAIN_EXTERNAL_INET_RPC=y
BR2_TOOLCHAIN_EXTERNAL_CXX=y
BR2_INIT_NONE=y
BR2_SYSTEM_BIN_SH_NONE=y
# BR2_PACKAGE_BUSYBOX is not set
BR2_PACKAGE_SDL=y
BR2_PACKAGE_SDL_MIXER=y
BR2_PACKAGE_LIBMODPLUG=y
# BR2_TARGET_ROOTFS_TAR is not set

However, since you're patching configure.in, the sdl-mixer package
should have SDL_MIXER_AUTORECONF = YES. But when I add this, I get:

configure.in:569: warning: macro 'AM_PATH_SMPEG' not found in library
configure.in:570: error: possibly undefined macro: AM_PATH_SMPEG
      If this token and others are legitimate, please use m4_pattern_allow.
      See the Autoconf documentation.

Can you look into these issues and resend? In the mean time, I've
marked your patch as "Changes Requested".

Best regards,

Thomas
diff mbox

Patch

diff --git a/package/sdl_mixer/sdl_mixer-0001-modplug-include.patch b/package/sdl_mixer/sdl_mixer-0001-modplug-include.patch
new file mode 100644
index 0000000..20a475f
--- /dev/null
+++ b/package/sdl_mixer/sdl_mixer-0001-modplug-include.patch
@@ -0,0 +1,33 @@ 
+Fix the modplug include path
+
+Since libmodplug 0.8.8.5, the cflags reported by pkg-config no longer
+add the "libmodplug" dir, so the #include directive must contain that
+path instead.
+
+Upstream status: the SDL-1.2 branch seems to be unmaintained
+
+Signed-off-by: Maarten ter Huurne <maarten@treewalker.org>
+
+diff -ru SDL_mixer-1.2.12.org/configure.in sdl_mixer-1.2.12/configure.in
+--- SDL_mixer-1.2.12.org/configure.in	2012-01-15 23:01:05.000000000 +0100
++++ sdl_mixer-1.2.12/configure.in	2014-07-03 05:25:44.761854572 +0200
+@@ -315,7 +315,7 @@
+ 	EXTRA_CFLAGS="$EXTRA_CFLAGS -DMODPLUG_MUSIC  $MODPLUG_CFLAGS"
+ 	EXTRA_LDFLAGS="$EXTRA_LDFLAGS $MODPLUG_LIBS"
+ dnl	AC_TRY_COMPILE([
+-dnl     #include "modplug.h"
++dnl     #include "libmodplug/modplug.h"
+ dnl    ],[
+ dnl    ],[
+     have_libmodplug=yes
+diff -ru SDL_mixer-1.2.12.org/music_modplug.h sdl_mixer-1.2.12/music_modplug.h
+--- SDL_mixer-1.2.12.org/music_modplug.h	2012-01-15 23:01:05.000000000 +0100
++++ sdl_mixer-1.2.12/music_modplug.h	2014-07-03 05:26:03.919219618 +0200
+@@ -1,6 +1,6 @@
+ #ifdef MODPLUG_MUSIC
+ 
+-#include "modplug.h"
++#include "libmodplug/modplug.h"
+ #include "SDL_rwops.h"
+ #include "SDL_audio.h"
+ #include "SDL_mixer.h"
diff --git a/package/sdl_mixer/sdl_mixer.mk b/package/sdl_mixer/sdl_mixer.mk
index a602b6e..45ee6b6 100644
--- a/package/sdl_mixer/sdl_mixer.mk
+++ b/package/sdl_mixer/sdl_mixer.mk
@@ -20,6 +20,13 @@  SDL_MIXER_CONF_OPTS = \
 	--disable-music-mp3 \
 	--disable-music-flac # configure script fails when cross compiling
 
+ifeq ($(BR2_PACKAGE_LIBMODPLUG),y)
+SDL_MIXER_CONF_OPTS += --enable-music-mod-modplug
+SDL_MIXER_DEPENDENCIES += libmodplug
+else
+SDL_MIXER_CONF_OPTS += --disable-music-mod-modplug
+endif
+
 ifeq ($(BR2_PACKAGE_LIBMAD),y)
 SDL_MIXER_CONF_OPTS += --enable-music-mp3-mad-gpl
 SDL_MIXER_DEPENDENCIES += libmad