automake-patches
[Top][All Lists]
Advanced

[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




reply via email to

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