[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: 279-gary-LT_CONFIG_LTDL_DIR.diff
From: |
Ralf Wildenhues |
Subject: |
Re: 279-gary-LT_CONFIG_LTDL_DIR.diff |
Date: |
Mon, 26 Sep 2005 13:07:26 +0200 |
User-agent: |
Mutt/1.4.1i |
Hi Gary,
* Gary V. Vaughan wrote on Fri, Sep 23, 2005 at 02:26:24PM CEST:
> Here is the first part of the patch series to fix the LT_WITH_INIT
> interfaces. Okay to commit?
No, unfortunately. Observed bug below.
> This changeset brings some sanity to tracking the directory name for
> libltdl sources. Old syntax still works, but the documentation now
> talks only about using the new LT_CONFIG_LTDL_DIR. If any of the old
> macros are still given a directory argument, it is set as before, only
> now autoconf will stop with an error if there is a conflict.
Using libtoolize with this patch on a third-party package (which has a
subpackage that uses libltdl):
$ eval `cat aclocal.m4 ./foo/libltdl/configure.ac | sed "$my_sed_traces" `
++ sed 's,#.*$,,; s,^dnl .*$,,; s, dnl .*$,,;
s,^.*AC_REQUIRE(.*$,,; s,^.*m4_require(.*$,,; s,^.*m4_define(.*$,,;
s,^.*A[CU]_DEFUN(.*$,,; s,^.*m4_defun(.*$,,;
/AC_CONFIG_AUX_DIR(/ {
s,^.*AC_CONFIG_AUX_DIR([[ ]*\([^])]*\).*$,auxdir=\1,; p;
};
/AC_CONFIG_MACRO_DIR(/ {
s,^.*AC_CONFIG_MACRO_DIR([[ ]*\([^])]*\).*$,macrodir=\1,; p;
};
/LT_CONFIG_LTDL_DIR(/ {
s,^.*LT_CONFIG_LTDL_DIR([[ ]*\([^])]*\).*$,ac_ltdldir=\1,; p;
};
/A[CM]_PROG_LIBTOOL/ { s,^.*$,seen_libtool=:,; p; };
/LT_INIT/ { s,^.*$,seen_libtool=:,; p; };
/LTDL_INIT/ { s,^.*$,seen_ltdl=:,; p; };
/LT_WITH_LTDL/ { s,^.*$,seen_ltdl=:,; p; };
/AC_LIB_LTDL/ { s,^.*$,seen_ltdl=:,; p; };
/AC_WITH_LTDL/ { s,^.*$,seen_ltdl=:,; p; };
d'
++ cat aclocal.m4 ./foo/libltdl/configure.ac
+ eval seen_libtool=: seen_libtool=: seen_ltdl=: seen_ltdl=: 'ac_ltdldir=$1'
'ac_ltdldir=$1' seen_ltdl=: 'ac_ltdldir=$1' 'ac_ltdldir=$1' ac_ltdldir=libltdl
seen_ltdl=: seen_ltdl=: seen_ltdl=: 'ac_ltdldir=$1' 'ac_ltdldir=m4_default([$1'
seen_ltdl=: seen_libtool=: seen_libtool=: seen_libtool=: seen_libtool=:
seen_libtool=: seen_libtool=: seen_libtool=: seen_libtool=: seen_libtool=:
seen_libtool=: seen_libtool=: seen_libtool=: seen_libtool=: auxdir=config
macrodir=m4 ac_ltdldir=. seen_libtool=: seen_ltdl=:
bash: syntax error near unexpected token `('
First, the aclocal.m4 is the wrong file (should've been
foo/libltdl/aclocal.m4). Second, it's picking up the stuff from ltdl.m4
that ended up in aclocal.m4. I believe you can fix this by using an
internal macro _LT_CONFIG_LTDL_DIR (with LT_CONFIG_LTDL_DIR then being
only a wrapper around it) and not calling the external one from inside
ltdl.m4.
I can check more after this is fixed.
Cheers, and thanks for your work on this,
Ralf