[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
FYI: update doc about LIBOBJS and ansi2knr
From: |
Alexandre Duret-Lutz |
Subject: |
FYI: update doc about LIBOBJS and ansi2knr |
Date: |
Wed, 11 Dec 2002 21:50:12 +0100 |
User-agent: |
Gnus/5.090008 (Oort Gnus v0.08) Emacs/20.7 (i386-debian-linux-gnu) |
I'm checking this in on HEAD & branch-1-7.
2002-12-11 Alexandre Duret-Lutz <address@hidden>
* automake.texi (ANSI): Since Autoconf 2.54, LIBOBJ and LTLIBOBJ
no longer have to be rewritten in order to support deansification.
(Tests): Link to the DejaGnu manual.
(Optional): Comment out FIXME.
(Complete, A Library, LIBOBJS): Use $(LIBOBJ) and $(ALLOCA)
instead of @LIBOBJ@ and @address@hidden
(Sources): Typo.
Index: automake.texi
===================================================================
RCS file: /cvs/automake/automake/automake.texi,v
retrieving revision 1.305.2.8
diff -u -r1.305.2.8 automake.texi
--- automake.texi 5 Dec 2002 09:31:29 -0000 1.305.2.8
+++ automake.texi 11 Dec 2002 20:46:27 -0000
@@ -666,12 +666,12 @@
rest of the user programs go: @code{bindir}. Additionally,
@code{zardoz} has some Texinfo documentation. Your @file{configure.in}
script uses @code{AC_REPLACE_FUNCS}, so you need to link against
address@hidden@@LIBOBJS@@}. So here's what you'd write:
address@hidden(LIBOBJS)}. So here's what you'd write:
@example
bin_PROGRAMS = zardoz
zardoz_SOURCES = main.c head.c float.c vortex9.c gun.c
-zardoz_LDADD = @@LIBOBJS@@
+zardoz_LDADD = $(LIBOBJS)
info_TEXINFOS = zardoz.texi
@end example
@@ -1165,7 +1165,7 @@
appropriate). @xref{Input, , Finding `configure' Input, autoconf, The
Autoconf Manual}.
@cvindex AC_CONFIG_AUX_DIR
-FIXME: give complete list of things looked for in this directory
address@hidden FIXME: give complete list of things looked for in this directory
@item AC_CANONICAL_HOST
Automake will ensure that @file{config.guess} and @file{config.sub}
@@ -2334,7 +2334,7 @@
@vindex LIBADD
@example
-libcpio_a_LIBADD = @@LIBOBJS@@ @@ALLOCA@@
+libcpio_a_LIBADD = $(LIBOBJS) $(ALLOCA)
@end example
In addition, sources for extra objects that will not exist until
@@ -2389,10 +2389,10 @@
additional libtool flags, such as @samp{-version-info} or
@samp{-static}.
address@hidden @@LTLIBOBJS@@, special handling
address@hidden @code{LTLIBOBJS}, special handling
-Where an ordinary library might include @code{@@LIBOBJS@@}, a libtool
-library must use @code{@@LTLIBOBJS@@}. This is required because the
+Where an ordinary library might include @code{$(LIBOBJS)}, a libtool
+library must use @code{$(LTLIBOBJS)}. This is required because the
object files that libtool operates on do not necessarily end in
@file{.o}. The libtool manual contains more details on this topic.
@@ -2608,17 +2608,17 @@
@node LIBOBJS, Program variables, Program and Library Variables, Programs
@section Special handling for LIBOBJS and ALLOCA
address@hidden @@LIBOBJS@@, special handling
address@hidden @@ALLOCA@@, special handling
address@hidden @code{LIBOBJS}, special handling
address@hidden @code{ALLOCA}, special handling
-Automake explicitly recognizes the use of @code{@@LIBOBJS@@} and
address@hidden@@ALLOCA@@}, and uses this information, plus the list of
+Automake explicitly recognizes the use of @code{$(LIBOBJS)} and
address@hidden(ALLOCA)}, and uses this information, plus the list of
@code{LIBOBJS} files derived from @file{configure.in} to automatically
include the appropriate source files in the distribution (@pxref{Dist}).
These source files are also automatically handled in the
dependency-tracking scheme; see @xref{Dependencies}.
address@hidden@@LIBOBJS@@} and @code{@@ALLOCA@@} are specially recognized in any
address@hidden(LIBOBJS)} and @code{$(ALLOCA)} are specially recognized in any
@samp{_LDADD} or @samp{_LIBADD} variable.
@@ -3217,24 +3217,21 @@
If no directory prefix is given, the files are assumed to be in the
current directory.
-Files mentioned in @code{LIBOBJS} which need de-ANSI-fication will not
-be automatically handled. That's because @code{configure} will generate
-an object name like @file{regex.o}, while @code{make} will be looking
-for @file{regex_.o} (when de-ANSI-fying). Eventually this problem will
-be fixed via @code{autoconf} magic, but for now you must put this code
-into your @file{configure.in}, just before the @code{AC_OUTPUT} call:
-
address@hidden
-# This is necessary so that .o files in LIBOBJS are also built via
-# the ANSI2KNR-filtering rules.
-LIBOBJS=`echo $LIBOBJS|sed 's/\.o /\$U.o /g;s/\.o$/\$U.o/'`
address@hidden example
address@hidden FIXME: Ask Akim how this should be handled in the upcoming
Autoconf.
-
Note that automatic de-ANSI-fication will not work when the package is
being built for a different host architecture. That is because automake
currently has no way to build @code{ansi2knr} for the build machine.
address@hidden FIXME: this paragraph might be better moved to an `upgrading'
section.
address@hidden @code{LTLIBOBJS} and @code{ansi2knr}
address@hidden @code{LIBOBJS} and @code{ansi2knr}
address@hidden @code{ansi2knr} and @code{LTLIBOBJS}
address@hidden @code{ansi2knr} and @code{LIBOBJS}
+Using @code{LIBOBJS} with source de-ANSI-fication used to require
+hand-crafted code in @file{configure} to append @code{$U} to basenames
+in @code{LIBOBJS}. This is no longer true today. Starting with version
+2.54, Autoconf takes care of rewriting @code{LIBOBJS} and
address@hidden (@pxref{AC_LIBOBJ vs LIBOBJS, , @code{AC_LIBOBJ}
+vs. @code{LIBOBJS}, autoconf, The Autoconf Manual})
@node Dependencies, EXEEXT, ANSI, Programs
@section Automatic dependency tracking
@@ -3520,7 +3517,7 @@
It might be important to emphasize that @code{BUILT_SOURCES} is honored
only by @code{make all} and @code{make check}. This means you cannot
build a specific target (e.g., @code{make foo}) in a clean tree if it
-depends on a built source. However if it will succeed if you have run
+depends on a built source. However it will succeed if you have run
@code{make all} earlier, because accurate dependencies are already
available.
@@ -4577,7 +4574,6 @@
@file{Makefile.am}, you can use @code{AM_RUNTESTFLAGS} instead.
@vindex RUNTESTFLAGS
@vindex AM_RUNTESTFLAGS
address@hidden FIXME xref dejagnu
@cindex @file{site.exp}
Automake will generate rules to create a local @file{site.exp} file,
@@ -4587,6 +4583,9 @@
not the place where the test suite author should define new variables:
this should be done elsewhere in the real test suite code.
Especially, @file{site.exp} should not be distributed.
+
+For more information regarding DejaGnu test suites, see @xref{Top, , ,
+dejagnu, The DejaGnu Manual}.
In either case, the testing is done via @samp{make check}.
--
Alexandre Duret-Lutz
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- FYI: update doc about LIBOBJS and ansi2knr,
Alexandre Duret-Lutz <=