autotools.eclass: run libtoolize with --ltdl automatically #534088
authorMike Frysinger <vapier@gentoo.org>
Tue, 29 Sep 2015 15:06:10 +0000 (11:06 -0400)
committerMike Frysinger <vapier@gentoo.org>
Tue, 29 Sep 2015 15:17:03 +0000 (11:17 -0400)
eclass/autotools.eclass

index 54e5d038af088365f30b36d3a7bc35607a24599a..bc4032a3513604cffe3317f6a5dd3923f74224f9 100644 (file)
@@ -198,7 +198,7 @@ eautoreconf() {
                intltool    false "autotools_run_tool intltoolize --automake --copy --force"
                gtkdoc      false "autotools_run_tool --at-missing gtkdocize --copy"
                gnomedoc    false "autotools_run_tool --at-missing gnome-doc-prepare --copy --force"
-               libtool     false "_elibtoolize --install --copy --force"
+               libtool     false "_elibtoolize --auto-ltdl --install --copy --force"
        )
        for (( i = 0; i < ${#tools[@]}; i += 3 )) ; do
                if _at_uses_${tools[i]} ; then
@@ -264,6 +264,7 @@ _at_uses_intltool()    { _at_uses_pkg {AC,IT}_PROG_INTLTOOL; }
 _at_uses_gtkdoc()      { _at_uses_pkg GTK_DOC_CHECK; }
 _at_uses_gnomedoc()    { _at_uses_pkg GNOME_DOC_INIT; }
 _at_uses_libtool()     { _at_uses_pkg A{C,M}_PROG_LIBTOOL LT_INIT; }
+_at_uses_libltdl()     { _at_uses_pkg LT_CONFIG_LTDL_DIR; }
 
 # @FUNCTION: eaclocal_amflags
 # @DESCRIPTION:
@@ -313,6 +314,11 @@ eaclocal() {
 _elibtoolize() {
        local LIBTOOLIZE=${LIBTOOLIZE:-$(type -P glibtoolize > /dev/null && echo glibtoolize || echo libtoolize)}
 
+       if [[ $1 == "--auto-ltdl" ]] ; then
+               shift
+               _at_uses_libltdl && set -- "$@" --ltdl
+       fi
+
        [[ -f GNUmakefile.am || -f Makefile.am ]] && set -- "$@" --automake
 
        autotools_run_tool ${LIBTOOLIZE} "$@"
@@ -519,7 +525,7 @@ autotools_run_tool() {
 # Keep a list of all the macros we might use so that we only
 # have to run the trace code once.  Order doesn't matter.
 ALL_AUTOTOOLS_MACROS=(
-       A{C,M}_PROG_LIBTOOL LT_INIT
+       A{C,M}_PROG_LIBTOOL LT_INIT LT_CONFIG_LTDL_DIR
        A{C,M}_CONFIG_HEADER{S,}
        AC_CONFIG_SUBDIRS
        AC_CONFIG_AUX_DIR AC_CONFIG_MACRO_DIR