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 |
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 |
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 |
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 |
|
|