[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: FYI: test old m4 interface [280]
From: |
Ralf Wildenhues |
Subject: |
Re: FYI: test old m4 interface [280] |
Date: |
Fri, 30 Sep 2005 17:51:52 +0200 |
User-agent: |
Mutt/1.5.11 |
* Ralf Wildenhues wrote on Fri, Sep 30, 2005 at 12:10:26PM CEST:
> Me again, sorry.
And another one. :-/
> * Ralf Wildenhues wrote on Fri, Sep 30, 2005 at 11:03:43AM CEST:
> > * Gary V. Vaughan wrote on Fri, Sep 30, 2005 at 02:48:23AM CEST:
>
> .. and there were a couple of small bugs in it, too.
>
> I have applied this fix.
>
> By the way, nice thing to see is this warning:
> | libtool: link: warning: `LT_INIT([dlopen])' not used. Assuming no dlopen
> support.
>
> True enough! But it should work without, and I guess it does. :)
Weird enough, though, libltdl/configure.ac surely _has_ enabled dlopen
support. And with BSD make it fails to build.
But let's go back.
The first failure is fixed by the first hunk in the patch below:
the sub-configure is invoked by the toplevel configure
(the AC_CONFIG_SUBDIRS _is_ working iff the libltdl package is in the
directory named `libltdl').
The extra configure caused(!) autotools reruns which then changed(!)
the symlinked-to files! Maybe we should disallow `libtoolize --ltdl'
without `--install'?
OK, with that in place, it gets through configuration and builds the
libltdl object files, then fails with
| pmake
| cd libltdl && pmake libltdlc.la
| ...
| make: don't know how to make ./dlopen.la. Stop
| *** Error code 2
Why? The usual non-GNU make foo vs ./foo problem:
| LT_DLLOADERS = ./dlopen.la
| dlopen.la: $(dlopen_la_OBJECTS) $(dlopen_la_DEPENDENCIES)
| libltdl_la_DEPENDENCIES = $(LT_DLLOADERS) $(LTLIBOBJS)
If you build that by hand (by issuing `cd libltdl && pmake dlopen.la')
I can get through that.
But _then_, I don't like the need to call aclocal at all. I tried to
eliminate it, the second ugly hunk below is what I could come up with.
Seems we have introduced a silent dependency on aclocal >= 1.2. :-)
Do you think it is ok to rip off Automake code like this in the test?
Cheers,
Ralf
Index: tests/old-m4-iface.at
===================================================================
RCS file: /cvsroot/libtool/libtool/tests/old-m4-iface.at,v
retrieving revision 1.2
diff -u -r1.2 old-m4-iface.at
--- tests/old-m4-iface.at 30 Sep 2005 10:09:58 -0000 1.2
+++ tests/old-m4-iface.at 30 Sep 2005 15:44:21 -0000
@@ -113,7 +113,7 @@
all: $(TARGETS)
libltdl/libltdlc.la:
- cd libltdl && ./configure && $(MAKE)
+ cd libltdl && $(MAKE) libltdlc.la
module.la: module.lo
$(LTLINK) module.lo -module -avoid-version -rpath /dev/null
@@ -184,7 +184,31 @@
touch config.h.in # bug in current ltdl.m4
test -f ltmain.sh || LT_AT_LIBTOOLIZE([--ltdl --install])
-test -f aclocal.m4 || $ACLOCAL -I libltdl/m4 || exit 1
+
+AT_DATA([aclocal.m4],
+[[m@&address@hidden([libltdl/m4/argz.m4])
+m@&address@hidden([libltdl/m4/libtool.m4])
+m@&address@hidden([libltdl/m4/ltdl.m4])
+m@&address@hidden([libltdl/m4/ltoptions.m4])
+m@&address@hidden([libltdl/m4/ltsugar.m4])
+m@&address@hidden([libltdl/m4/ltversion.m4])
+
+# AM_CONDITIONAL(NAME, SHELL-CONDITION)
+# -------------------------------------
+# Define a conditional.
+AC_DEFUN([AM_CONDITIONAL],
+[AC_SUBST([$1_TRUE])
+AC_SUBST([$1_FALSE])
+if $2; then
+ $1_TRUE=
+ $1_FALSE='#'
+else
+ $1_TRUE='#'
+ $1_FALSE=
+fi
+])
+]])
+
test -f configure || $AUTOCONF --force || exit 1
test -f Makefile || ./configure || exit 1
${MAKE-make}