autoconf
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: I upgraded to autoconf 2.52g


From: Akim Demaille
Subject: Re: I upgraded to autoconf 2.52g
Date: 10 Feb 2002 14:17:50 +0100
User-agent: Gnus/5.0808 (Gnus v5.8.8) XEmacs/21.4 (Common Lisp)

| ...and after the upgrade, autoconf error-ed out.
| It seems this version will not allow me to examine the
| contents of LIBOBJS.  I can understand not setting its
| value directly, but examining its contents?  Why?
| Anyway, this ugly kludgery seems to get through the issue,
| but since the recommended usage of AC_LIBOBJ is ineffective
| for this purpose, I am left wondering what the proper
| method is.  Especially since the autoconf manual itself
| in the "Configuration Commands" node has almost precisely the
| example here that was objected to by autoconf....
| 
| $ cvs diff configure.in
| @@ -403,7 +403,9 @@
|  # ----------------------------------------------------------------------
|  # Generate the make files.
|  # ----------------------------------------------------------------------
| -LTLIBOBJS=`echo "$LIBOBJS"|sed 's,\.o ,.lo,g;s,\.o$,.lo,'`
| +lo=LIB
| +lo="${lo}OBJS"
| +LTLIBOBJS=`eval echo \"\\\$${lo}\"|sed 's,\.o ,.lo,g;s,\.o$,.lo,'`
|  AC_SUBST(LTLIBOBJS)
|  
|  AC_SUBST(LIBS)
| 
| $ egrep -2 LIBOBJS snprintfv/Makefile.am
| libsnprintfv_la_LDFLAGS = -no-undefined -version-info \
|                           @SNV_CURRENT@:@SNV_REVISION@:@SNV_AGE@
| libsnprintfv_la_LIBADD  = @LTLIBOBJS@
| libsnprintfv_la_SOURCES = filament.c


Aarg!  _Many_ thanks Bruce.  I completely forgot about this.  I must
absolutely document this.  The point is that you should never have to
write such horrors, it really belong to Libtool.  Autoconf now
provides all the needed machinery to have it done.  And I'm working on
having LIBOBJS removed: using the variable directly prevents a good
synchronization between Libtool, Autoconf and Automake: a macro has to
be used.  But then, of course, I introduce a warning for the user to
know that this is now to be avoided (although, for the time being, it
is still functional.  As a matter of fact, it's no problem for
Autoconf, but will be for Automake).  Still, the current workaround,
as in CVS M4, is

## ---------------------------------- ##
## Make sure LTLIBOBJS is up to date. ##
## ---------------------------------- ##
Xsed="sed -e s/^X//"
LTLIBOBJS=`echo X"$LIB@&address@hidden" | \
    $Xsed -e 's,\.[[^.]]* ,.lo ,g;s,\.[[^.]]*$,.lo,'`
AC_SUBST([LTLIBOBJS])


Of course, it's a serious problem that it had not been documented.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]