package/sdl_mixer: fix build after aclocal include revamp
authorYann E. MORIN <yann.morin.1998@free.fr>
Sat, 8 Feb 2020 18:26:11 +0000 (19:26 +0100)
committerPeter Korsgaard <peter@korsgaard.com>
Sat, 8 Feb 2020 19:01:10 +0000 (20:01 +0100)
After d255b67972 (autotools: do not overwrite first include path), the
ordering of include paths has changed: the system directories are
specified with explicit options passed to autoreconf, which means that
any directory specified in the package _AUTORECONF_OPTS are no longer
first:

  - in package/autoconf/autoconf.mk, we define AUTORECONF as:
    AUTOCONF = $(HOST_DIR)/bin/autoconf -I "$(ACLOCAL_DIR)" -I "$(ACLOCAL_HOST_DIR)"

  - in package/pkg-autotools.mk, we call AUTORECONF with:
    $($(PKG)_AUTORECONF_ENV) $(AUTORECONF) $($(PKG)_AUTORECONF_OPTS)

So, the include directory specified by SDL_MIXER_AUTORECONF_OPTS is now
lagging behind the system headers, and the very issue that d255b67972
was suposed to fix in a generic way, pops up back for this specific
case.

We fix that by patching sdl_mixer so that it uses the bog-down standard
mechanisms, to specify the macro directory from within configure.in,
instead of specifying it on the command line, so that the magic
introduced by d255b67972 does happen.

Reported-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: Michael Walle <michael@walle.cc>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
package/sdl_mixer/0004-configure__set_macro_directory.patch [new file with mode: 0644]
package/sdl_mixer/sdl_mixer.mk

diff --git a/package/sdl_mixer/0004-configure__set_macro_directory.patch b/package/sdl_mixer/0004-configure__set_macro_directory.patch
new file mode 100644 (file)
index 0000000..5b47f0e
--- /dev/null
@@ -0,0 +1,34 @@
+# HG changeset patch
+# User "Yann E. MORIN" <yann.morin.1998@free.fr>
+# Date 1581183281 -3600
+#      Sat Feb 08 18:34:41 2020 +0100
+# Node ID 753a1f394620056c35790a571ff5f7c248445943
+# Parent  eb5f08bf9994bf5164ca68015f2e030c2c9dddcd
+configure: set macro directory
+
+Setting the macro directory in configure.in, rather than specifying it
+on the command line, ensures that it is properly searched in the correct
+order, and that autoreconf properly updates our macros with the newer
+system ones, if any.
+
+Fixes:
+    http://autobuild.buildroot.org/results/63a/63ae0bddb3c4436efe967c318e299047f496c5a5/build-end.log
+
+    libtool: Version mismatch error.  This is libtool 2.4.6, but the
+    libtool: definition of this LT_INIT comes from libtool 2.2.6.
+    libtool: You should recreate aclocal.m4 with macros from libtool 2.4.6
+    libtool: and run autoconf again.
+
+Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
+
+diff --git a/configure.in b/configure.in
+--- a/configure.in
++++ b/configure.in
+@@ -1,6 +1,7 @@
+ dnl Process this file with autoconf to produce a configure script.
+ AC_INIT(README)
+ AC_CONFIG_AUX_DIR(build-scripts)
++AC_CONFIG_MACRO_DIR([acinclude])
+ dnl Set various version strings - taken gratefully from the GTk sources
index ab6f7ef014ca90dfddf98c3ff5cf136d51f7afbe..73eb821ff32d991f3375f0aabc8f06d1cee23d61 100644 (file)
@@ -18,7 +18,6 @@ SDL_MIXER_DEPENDENCIES = sdl
 
 # We're patching configure.in, so we need to autoreconf
 SDL_MIXER_AUTORECONF = YES
-SDL_MIXER_AUTORECONF_OPTS = -Iacinclude
 
 SDL_MIXER_CONF_OPTS = \
        --without-x \