/[autoconf]/autoconf/doc/autoconf.texi
ViewVC logotype

Diff of /autoconf/doc/autoconf.texi

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.642 by rra, Wed Jul 17 18:39:20 2002 UTC revision 1.643 by akim, Thu Jul 18 11:57:32 2002 UTC
# Line 12815  This change is mandated by the unificati Line 12815  This change is mandated by the unificati
12815  components.  In particular, the various fragile techniques used to parse  components.  In particular, the various fragile techniques used to parse
12816  a @file{configure.ac} are all replaced with the use of traces.  As a  a @file{configure.ac} are all replaced with the use of traces.  As a
12817  consequence, any action must be traceable, which obsoletes critical  consequence, any action must be traceable, which obsoletes critical
12818  variable assignments.  Fortunately, @code{LIBOBJS} was the only problem.  variable assignments.  Fortunately, @code{LIBOBJS} was the only problem,
12819    and it can even be handled gracefully (read, ``without your having to
12820    change something'').
12821    
12822  At the time this documentation is written, Automake does not rely on  There were two typical uses of @code{LIBOBJS}: asking for a replacement
 traces yet, but this is planned for a near future.  Nevertheless, to  
 ease the transition, and to guarantee this future Automake release will  
 be able to use Autoconf 2.53, using @code{LIBOBJS} directly will make  
 @command{autoconf} fail.  But note that the output, @command{configure},  
 is correct and fully functional: you have some delay to adjust your  
 source.  
   
 There are two typical uses of @code{LIBOBJS}: asking for a replacement  
12823  function, and adjusting @code{LIBOBJS} for Automake and/or Libtool.  function, and adjusting @code{LIBOBJS} for Automake and/or Libtool.
12824    
12825  @sp 1  @sp 1
# Line 12849  AC_LIBOBJ([malloc]) Line 12843  AC_LIBOBJ([malloc])
12843  @sp 1  @sp 1
12844    
12845  When asked for automatic de-ANSI-fication, Automake needs  When asked for automatic de-ANSI-fication, Automake needs
12846  @code{LIBOBJS}'ed filenames to have @samp{$U} appended to the  @code{LIBOBJS}'ed filenames to have @samp{$U} appended to the base
12847  base names.   Libtool requires the definition of @code{LTLIBOBJS}, which  names.  Libtool requires the definition of @code{LTLIBOBJS}, which
12848  suffixes are mapped to @samp{.lo}.  Although Autoconf provides them with  suffixes are mapped to @samp{.lo}.  People used to run snippets such as:
 means to free the user to do that by herself, by the time of this  
 writing, none do.  Therefore, it is common to see @file{configure.ac}  
 end with:  
12849    
12850  @example  @example
12851  # This is necessary so that .o files in LIBOBJS are also built via  # This is necessary so that .o files in LIBOBJS are also built via
# Line 12865  AC_SUBST(LTLIBOBJS) Line 12856  AC_SUBST(LTLIBOBJS)
12856  @end example  @end example
12857    
12858  @noindent  @noindent
12859  First, note that this code is @emph{wrong}, because @samp{.o} is not the  Note that this code is @emph{wrong}, because @samp{.o} is not the only
12860  only possible extension@footnote{  possible extension@footnote{
12861  @c  @c
12862  Yet another reason why assigning @code{LIBOBJS} directly is discouraged.  Yet another reason why assigning @code{LIBOBJS} directly is discouraged.
12863  @c  @c
12864  }!  Because the token @code{LIBOBJS} is now  }!  It should have read:
 forbidden, you will have to replace this snippet with:  
12865    
12866  @example  @example
12867  # This is necessary so that .o files in LIBOBJS are also built via  # This is necessary so that .o files in LIBOBJS are also built via
# Line 12883  OBJS" | Line 12873  OBJS" |
12873  AC_SUBST(LTLIBOBJS)  AC_SUBST(LTLIBOBJS)
12874  @end example  @end example
12875    
12876  @noindent  @sp 1
12877  Unfortunately, @command{autoupdate} cannot help here, since@dots{} this is  
12878  not a macro!  Of course, first make sure your release of Automake and/or  Fortunately, you no longer have to use this: @code{AC_OUTPUT} normalizes
12879  Libtool still requires these.  @code{LIBOBJS} and @code{LTLIBOBJS} (hence it works with any version of
12880    Automake and Libtool).  So just remove these lines.
12881    @command{autoupdate} cannot handle this task, since this is not a macro.
12882    
12883    
12884  @c ============================= Generating Test Suites with Autotest  @c ============================= Generating Test Suites with Autotest
12885    

Legend:
Removed from v.1.642  
changed lines
  Added in v.1.643

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26