build: fix rebuild rules for Makefile.in and aclocal.m4
[platform/upstream/automake.git] / NEWS
1 New in 1.12.6:
2
3 * WARNING: Future backward-incompatibilities!
4
5   - Future versions of Automake will likely drop support for the
6     long-deprecated 'configure.in' name for the Autoconf input file.
7     You are advised to use the recommended name 'configure.ac' instead.
8
9   - Support for the "Cygnus-style" trees (as enabled by the 'cygnus'
10     option) will be removed in the next major Automake release (1.13).
11
12   - The long-obsolete (since automake 1.10) AM_PROG_MKDIR m4 macro will
13     be removed in Automake 1.13.  The $(mkdir_p) make variable and the
14     @mkdir_p@ substitution will still remain available (as aliases of
15     $(MKDIR_P)) for the moment, for better backward compatibility.
16
17   - Autoconf 2.65 or later will be required by the next major Automake
18     version (1.13).  Until now, Automake has required Autoconf version
19     2.62 or later.
20
21   - Starting from the next major Automake version (1.13), the rules
22     to build pdf, ps and dvi output from Texinfo input will use the
23     '--build-dir' option by default.  Since such an option was only
24     introduced in Texinfo 4.9, this means that Makefiles generated by
25     future Automake versions will require at least that version of
26     Texinfo.
27
28   - Starting from the next major Automake version (1.13), the parallel
29     testsuite harness (previously only enabled by the 'parallel-tests'
30     option) will become the default one; the older serial testsuite
31     harness will still be available through the use of the 'serial-tests'
32     option.
33
34   - The following long-obsolete m4 macros will be removed in the
35     next major Automake version (1.13):
36
37       AM_PROG_CC_STDC:    superseded by AC_PROG_CC since October 2002
38       fp_PROG_CC_STDC:    broken alias for AM_PROG_CC_STDC
39       fp_WITH_DMALLOC:    old alias for AM_WITH_DMALLOC
40       AM_CONFIG_HEADER:   superseded by AC_CONFIG_HEADERS since July 2002
41       ud_PATH_LISPDIR:    old alias for AM_PATH_LISPDIR
42       jm_MAINTAINER_MODE: old alias for AM_MAINTAINER_MODE
43       ud_GNU_GETTEXT:     old alias for AM_GNU_GETTEXT
44       gm_PROG_LIBTOOL:    old alias for AC_PROG_LIBTOOL
45       fp_C_PROTOTYPES:    old alias for AM_C_PROTOTYPES (which was part
46                           of the now-removed automatic de-ANSI-fication
47                           support of Automake)
48
49   - All the "old alias" macros in 'm4/obsolete.m4' will be removed in
50     the next major Automake version (1.13).
51
52   - The '--acdir' option of aclocal is deprecated, and will probably
53     be removed in the next major Automake release (1.13).  You should
54     use the options '--automake-acdir' and '--system-acdir' instead
55     (which have been introduced in Automake 1.11.2).
56
57   - The 'missing' script will no longer try to update the timestamp
58     of out-of-date files that require a maintainer-specific tool to be
59     remade, in case the user lacks such a tool (or has a too-old version
60     of it).  In fact, starting from Automake 1.13, all it'll do will be
61     giving more useful warnings than a bare "command not found" from a
62     make recipe would.
63
64 Bugs fixed in 1.12.6:
65
66 * Bugs introduced in 1.12.5:
67
68   - The maintainer rebuild rules for Makefiles and aclocal.m4 in Automake's
69     own build system works correctly again.
70
71 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
72
73 New in 1.12.5:
74
75 * Vala support:
76
77   - The AM_PROG_VALAC macro has been enhanced to takes two further
78     optional arguments; it's signature now being
79
80         AM_PROG_VALAC([MINIMUM-VERSION], [ACTION-IF-FOUND],
81                       [ACTION-IF-NOT-FOUND])
82
83   - By default, AM_PROG_VALAC no longer aborts the configure invocation
84     if the Vala compiler found is too old, but simply prints a warning
85     messages (as it did when the Vala compiler was not found).  This
86     should avoid unnecessary difficulties for end users that just want
87     to compile the unmodified, distributed Vala-generated C sources,
88     but happens to have an old Vala compiler in their PATH.  This fixes
89     automake bug#12688.
90
91   - If no proper Vala compiler is found at configure runtime, AM_PROG_VALAC
92     will set the AC_SUBST'd variable 'VALAC' to 'valac' rather than to ':'.
93     This is a better default, because with it a triggered makefile rule
94     invoking a Vala compilation will clearly fail with an informative error
95     message like "valac: command not found", rather than silently, with
96     the error possibly going unnoticed or triggering harder-to-diagnose
97     fallout failures in later steps.
98
99 * Miscellaneous changes:
100
101   - automake and aclocal no longer honours the 'perllibdir' environment
102     variable.  That had always been intended only as an hack required in
103     the testsuite, not meant for any use beyond that.
104
105 Bugs fixed in 1.12.5:
106
107 * Long-standing bugs:
108
109   - Automake no longer generates spurious remake rules invoking autoheader
110     to regenerate the template corresponding to header files specified after
111     the first one in AC_CONFIG_HEADERS (automake bug#12495).
112
113   - When wrapping Microsoft tools, the 'compile' script falls back to
114     finding classic 'libname.a' style libraries when 'name.lib' and
115     'name.dll.lib' aren't available.
116
117 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
118
119 New in 1.12.4:
120
121 * Warnings and deprecations:
122
123   - Warnings in the 'obsolete' category are enabled by default both in
124     automake and aclocal.
125
126 * Miscellaneous changes:
127
128   - Some testsuite weaknesses and spurious failures have been fixed.
129
130 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
131
132 New in 1.12.3:
133
134 * Miscellaneous changes:
135
136   - The '.m4' files provided by Automake no longer define serial numbers.
137     This should cause no difference in the behaviour of aclocal though.
138
139   - Some testsuite weaknesses and spurious failures have been fixed.
140
141   - There is initial support for automatic dependency tracking with the
142     Portland Group C/C++ compilers, thanks to the new new depmode 'pgcc'.
143
144 Bugs fixed in 1.12.3:
145
146 * Long-standing bugs:
147
148   - Instead of renaming only self-references of files (typically for
149     #lines), ylwrap now also renames references to the other generated
150     files.  This fixes support for GLR and C++ parsers from Bison (PR
151     automake/491 and automake bug#7648): 'parser.c' now properly
152     #includes 'parser.h' instead of 'y.tab.h'.
153
154   - Generated files unknown to ylwrap are now preserved.  This fixes
155     C++ support for Bison (automake bug#7648): location.hh and the
156     like are no longer discarded.
157
158 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
159
160 New in 1.12.2:
161
162 * Warnings and deprecations:
163
164   - Automake now issues a warning (in the 'portability' category) if
165     'configure.in' is used instead of 'configure.ac' as the Autoconf
166     input file.  Such a warning will also be present in the next
167     Autoconf version (2.70).
168
169 * Cleaning rules:
170
171   - Recursive cleaning rules descends into the $(SUBDIRS) in the natural
172     order (as done by the other recursive rules), rather than in the
173     inverse order.  They used to do that in order to work a round a
174     limitation in an older implementation of the automatic dependency
175     tracking support, but that limitation had been lifted years ago
176     already, when the automatic dependency tracking based on side-effects
177     of compilation had been introduced.
178
179   - Cleaning rules for compiled objects (both "plain" and libtool) work
180     better when subdir objects are involved, not triggering a distinct
181     'rm' invocation for each such object.  They do so by removing *any*
182     compiled object file that is in the same directory of a subdir
183     object.  See automake bug#10697.
184
185 * Silent rules support:
186
187   - A new predefined $(AM_V_P) make variable is provided; it expands
188     to a shell conditional that can be used in recipes to know whether
189     make is being run in silent or verbose mode.
190
191 Bugs fixed in 1.12.2:
192
193 * SECURITY VULNERABILITIES!
194
195   - The 'distcheck' recipe no longer grants temporary world-write
196     permissions on the extracted distdir.  Even if such rights were
197     only granted for a vanishingly small time window, the implied
198     race condition proved to be enough to allow a local attacker
199     to run arbitrary code with the privileges of the user running
200     "make distcheck".  This is CVE-2012-3386.
201
202 * Long-standing bugs:
203
204   - The "recheck" targets behaves better in the face of build failures
205     related to previously failed tests.  For example, if a test is a
206     compiled program that must be rerun by "make recheck", and its
207     compilation fails, it will still be rerun by further "make recheck"
208     invocations.  See automake bug#11791.
209
210 * Bugs introduced by 1.12.1:
211
212   - Automake provides once again the '$(mkdir_p)' make variable and the
213     '@mkdir_p@' substitution (both as simple aliases for '$(MKDIR_P)'),
214     for better backward-compatibility.
215
216 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
217
218 New in 1.12.1:
219
220 * New supported languages:
221
222   - Support for Objective C++ has been added; it should work similarly to
223     the support for Objective C.
224
225 * Deprecated obsolescent features:
226
227   - Use of the long-deprecated two- and three-arguments invocation forms
228     of the AM_INIT_AUTOMAKE macro now elicits a warning in the 'obsolete'
229     category.  Starting from some future major Automake release (likely
230     post-1.13), such usages will no longer be allowed.
231
232   - Support for the "Cygnus-style" trees (enabled by the 'cygnus' option) is
233     now deprecated (its use triggers a warning in the 'obsolete' category).
234     It will be removed in the next major Automake release (1.13).
235
236   - The long-obsolete (since 1.10) automake-provided $(mkdir_p) make
237     variable, @mkdir_p@ configure-time substitution and AM_PROG_MKDIR
238     m4 macro are deprecated, eliciting a warning in the 'obsolete'
239     category.
240
241 * Miscellaneous changes:
242
243   - The Automake test cases now require a proper POSIX-conforming shell.
244     Older non-POSIX Bourne shells (like Solaris 10 /bin/sh) will no longer
245     be accepted.  In most cases, the user shouldn't have to specify such
246     POSIX shell explicitly, since it will be looked up at configure time.
247     Still, when this lookup fails, or when the user wants to override its
248     conclusion, the variable 'AM_TEST_RUNNER_SHELL' can be used (pointing
249     to the shell that will be used to run the Automake test cases).
250
251 Bugs fixed in 1.12.1:
252
253 * Bugs introduced by 1.12:
254
255   - Several weaknesses in Automake's own build system and test suite
256     have been fixed.
257
258 * Bugs introduced by 1.11.3:
259
260   - When given non-option arguments, aclocal rejects them, instead of
261     silently ignoring them.
262
263 * Long-standing bugs:
264
265   - When the 'color-tests' option is in use, forcing of colored testsuite
266     output through "AM_COLOR_TESTS=always" works even if the terminal is
267     a non-ANSI one, i.e., if the TERM environment variable has a value of
268     "dumb".
269
270   - Several inefficiencies and poor performances in the implementation
271     of the parallel-tests 'check' and 'recheck' targets have been fixed.
272
273   - The post-processing of output "#line" directives done the ylwrap
274     script is more faithful w.r.t. files in a subdirectory; for example,
275     if the processed file is "src/grammar.y", ylwrap will correctly
276     produce directives like:
277         #line 7 "src/grammar.y"
278     rather than like
279         #line 7 "grammar.y"
280     as it did before.
281
282 * Bugs with new Perl versions:
283
284   - Aclocal works correctly with perl 5.16.0 (automake bug#11543).
285
286 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
287
288 New in 1.12:
289
290 * Obsolete features removed:
291
292   - The never documented nor truly used script 'acinstall' has been
293     removed.
294
295   - Support for automatic de-ANSI-fication has been removed.
296
297   - The support for the "obscure" multilib feature has been removed
298     from Automake core (but remains available in the 'contrib/'
299     directory of the Automake distribution).
300
301   - Support for ".log -> .html" conversion and the check-html and
302     recheck-html targets has been removed from Automake core (but
303     remains available in the 'contrib/' directory of the Automake
304     distribution).
305
306   - The deprecated 'lzma' compression format for distribution archives
307     has been removed, in favor of 'xz' and 'lzip'.
308
309   - The obsolete AM_WITH_REGEX macro has been removed.
310
311   - The long-deprecated options '--output-dir', '--Werror' and
312     '--Wno-error' have been removed.
313
314   - The chapter on the history of Automake has been moved out of the
315     reference manual, into a new dedicated Texinfo file.
316
317 * New targets:
318
319   - New 'cscope' target to build a cscope database for the source tree.
320
321 * Changes to Automake-generated testsuite harnesses:
322
323   - The new automake option 'serial-tests' has been introduced.  It can
324     be used to explicitly instruct automake to use the older serial
325     testsuite harness.  This is still the default at the moment, but it
326     might change in future versions.
327
328   - The 'recheck' target (provided by the parallel testsuite harness) now
329     depends on the 'all' target.  This allows for a better user-experience
330     in test-driven development.  See automake bug#11252.
331
332   - Test scripts that exit with status 99 to signal an "hard error" (e.g.,
333     and unexpected or internal error, or a failure to set up the test case
334     scenario) have their outcome reported as an 'ERROR' now.  Previous
335     versions of automake reported such an outcome as a 'FAIL' (the only
336     difference with normal failures being that hard errors were counted
337     as failures even when the test originating them was listed in
338     XFAIL_TESTS).
339
340   - The testsuite summary displayed by the parallel-test harness has a
341     completely new format, that always list the numbers of passed, failed,
342     xfailed, xpassed, skipped and errored tests, even when these numbers
343     are zero (but using smart coloring when the color-tests option is in
344     effect).
345
346   - The default testsuite driver offered by the 'parallel-tests' option is
347     now implemented (partly at least) with the help of automake-provided
348     auxiliary scripts (e.g., 'test-driver'), instead of relying entirely
349     on code in the generated Makefile.in.
350     This has two noteworthy implications.  The first one is that projects
351     using the 'parallel-tests' option should now either run automake with
352     the '--add-missing' option, or manually copy the 'test-driver' script
353     into their tree.  The second, and more important, implication is that
354     now, when the 'parallel-tests' option is in use, TESTS_ENVIRONMENT can
355     no longer be used to define a test runner, and the command specified
356     in LOG_COMPILER (and <ext>_LOG_COMPILER) must be a *real* executable
357     program or script.  For example, this is still a valid usage (albeit
358     a little contorted):
359
360       TESTS_ENVIRONMENT = \
361         if test -n '$(STRICT_TESTS)'; then \
362           maybe_errexit='-e'; \
363         else \
364           maybe_errexit=''; \
365         fi;
366       LOG_COMPILER = $(SHELL) $$maybe_errexit
367
368     OTOH, this is no longer a valid usage:
369
370       TESTS_ENVIRONMENT = \
371         $(SHELL) `test -n '$(STRICT_TESTS_CHECKING)' && echo ' -e'`
372
373     neither is this:
374
375       TESTS_ENVIRONMENT = \
376         run_with_perl_or_shell () \
377         { \
378           if grep -q '^#!.*perl' $$1; then
379             $(PERL) $$1; \
380           else \
381             $(SHELL) $$1; \
382           fi; \
383         }
384       LOG_COMPILER = run_with_perl_or_shell
385
386   - The package authors can now use customary testsuite drivers within
387     the framework provided by the 'parallel-tests' testsuite harness.
388     Consistently with the existing syntax, this can be done by defining
389     special makefile variables 'LOG_DRIVER' and '<ext>_LOG_DRIVER'.
390
391   - A new developer-reserved variable 'AM_TESTS_FD_REDIRECT' can be used
392     to redirect/define file descriptors used by the test scripts.
393
394   - The parallel-tests harness generates now, in addition the '.log' files
395     holding the output produced by the test scripts, a new set of '.trs'
396     files, holding "metadata" derived by the execution of the test scripts;
397     among such metadata are the outcomes of the test cases run by a script.
398
399   - Initial and still experimental support for the TAP test protocol is
400     now provided.
401
402 * Changes to Yacc and Lex support:
403
404   - C source and header files derived from non-distributed Yacc and/or
405     Lex sources are now removed by a simple "make clean" (while they were
406     previously removed only by "make maintainer-clean").
407
408   - Slightly backward-incompatible change, relevant only for use of Yacc
409     with C++: the extensions of the header files produced by the Yacc
410     rules are now modelled after the extension of the corresponding
411     sources.  For example, yacc files named "foo.y++" and "bar.yy" will
412     produce header files named "foo.h++" and "bar.hh" respectively, where
413     they would have previously produced header files named simply "foo.h"
414     and "bar.h".  This change offers better compatibility with 'bison -o'.
415
416 * Miscellaneous changes:
417
418   - The AM_PROG_VALAC macro now causes configure to exit with status 77,
419     rather than 1, if the vala compiler found is too old.
420
421   - The build system of Automake itself now avoids the use of make
422     recursion as much as possible.
423
424   - Automake now prefers to quote 'like this' or "like this", rather
425     than `like this', in diagnostic message and generated Makefiles,
426     to accommodate the new GNU Coding Standards recommendations.
427
428   - Automake has a new option '--print-libdir' that prints the path of the
429     directory containing the Automake-provided scripts and data files.
430
431   - The 'dist' and 'dist-all' targets now can run compressors in parallel.
432
433   - The rules to create pdf, dvi and ps output from Texinfo files now
434     works better with modern 'texi2dvi' script, by explicitly passing
435     it the '--clean' option to ensure stray auxiliary files are not
436     left to clutter the build directory.
437
438   - Automake can now generate silenced rules for texinfo outputs.
439
440   - Some auxiliary files that are automatically distributed by Automake
441     (e.g., 'install-sh', or the 'depcomp' script for packages compiling
442     C sources) might now be listed in the DIST_COMMON variable in many
443     Makefile.in files, rather than in the top-level one.
444
445   - Messages of types warning or error from 'automake' and 'aclocal'
446     are now prefixed with the respective type, and presence of -Werror
447     is noted.
448
449   - Automake's early configure-time sanity check now tries to avoid
450     sleeping for a second, which slowed down cached configure runs
451     noticeably.  In that case, it will check back at the end of the
452     configure script to ensure that at least one second has passed, to
453     avoid time stamp issues with makefile rules rerunning autotools
454     programs.
455
456   - The warnings in the category 'extra-portability' are now enabled by
457     '-Wall'.  In previous versions, one has to use '-Wextra-portability'
458     to enable them.
459
460 Bugs fixed in 1.12:
461
462   - Various minor bugfixes for recent or long-standing bugs.
463
464 * Bugs introduced by 1.11:
465
466   - The AM_COND_IF macro also works if the shell expression for the
467     conditional is no longer valid for the condition.
468
469   - The automake-provided parallel testsuite harness no longer fails
470     with BSD make used in parallel mode when there are test scripts in
471     a subdirectory, like in:
472
473       TESTS = sub/foo.test sub/bar.test
474
475 * Long-standing bugs:
476
477   - Automake's own build system finally have a real "installcheck" target.
478
479   - Vala-related cleanup rules are now more complete, and work better in
480     a VPATH setup.
481
482   - Files listed with the AC_REQUIRE_AUX_FILE macro in configure.ac are
483     now automatically distributed also if the directory of the auxiliary
484     files coincides with the top-level directory.
485
486   - Automake now detects the presence of the '-d' flag in the various
487     '*YFLAGS' variables even when their definitions involve indirections
488     through other variables, such as in:
489       foo_opts = -d
490       AM_YFLAGS = $(foo_opts)
491
492   - Automake now complains if a '*YFLAGS' variable has any conditional
493     content, not only a conditional definition.
494
495   - Explicit enabling and/or disabling of Automake warning categories
496     through the '-W...' options now always takes precedence over the
497     implicit warning level implied by Automake strictness (foreign, gnu
498     or gnits), regardless of the order in which such strictness and
499     warning flags appear.  For example, a setting like:
500       AUTOMAKE_OPTIONS = -Wall --foreign
501     will cause the warnings in category 'portability' to be enabled, even
502     if those warnings are by default disabled in 'foreign' strictness.
503
504 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
505
506 Bugs fixed in 1.11.5:
507
508 * Bugs introduced by 1.11.3:
509
510   - Vala files with '.vapi' extension are now recognized and handled
511     correctly again.  See automake bug#11222.
512
513   - Vala support work again for projects that contain some program
514     built from '.vala' (and possibly '.c') sources and some other
515     program built from '.c' sources *only*.  See automake bug#11229.
516
517 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
518
519 New in 1.11.4:
520
521 * Miscellaneous changes:
522
523   - The 'ar-lib' script now ignores the "s" (symbol index) and "S" (no
524     symbol index) modifiers as well as the "s" action, as the symbol index
525     is created unconditionally by Microsoft lib.  Also, the "q" (quick)
526     action is now a synonym for "r" (replace).  Also, the script has been
527     ignoring the "v" (verbose) modifier already since Automake 1.11.3.
528
529   - When the 'compile' script is used to wrap MSVC, it now accepts an
530     optional space between the -I, -L and -l options and their respective
531     arguments, for better POSIX compliance.
532
533   - There is an initial, experimental support for automatic dependency
534     tracking with tcc (the Tiny C Compiler).  Its associated depmode is
535     currently recognized as "icc" (but this and other details are likely
536     to change in future versions).
537
538   - Automatic dependency tracking now works also with the IBM XL C/C++
539     compilers, thanks to the new new depmode 'xlc'.
540
541 Bugs fixed in 1.11.4:
542
543 * Bugs introduced by 1.11.2:
544
545   - A definition of 'noinst_PYTHON' before 'python_PYTHON' (or similar)
546     no longer cause spurious failures upon "make install".
547
548   - The user can now instruct the 'uninstall-info' rule not to update
549     the '${infodir}/dir' file by exporting the environment variable
550     'AM_UPDATE_INFO_DIR' to the value "no".  This is done for consistency
551     with how the 'install-info' rule operates since automake 1.11.2.
552
553 * Long-standing bugs:
554
555   - It is now possible for a foo_SOURCES variable to hold Vala sources
556     together with C header files, as well as with sources and headers for
557     other supported languages (e.g., C++).  Previously, only mixing C and
558     Vala sources was supported.
559
560   - If "aclocal --install" is used, and the first directory specified with
561     '-I' is non-existent, aclocal will now create it before trying to copy
562     files in it.
563
564   - An empty declaration of a "foo_PRIMARY" no longer cause the generated
565     install rules to create an empty $(foodir) directory; for example, if
566     Makefile.am contains something like:
567
568       pkglibexec_SCRIPTS =
569       if FALSE
570       pkglibexec_SCRIPTS += bar.sh
571       endif
572
573     the $(pkglibexec) directory will not be created upon "make install".
574
575 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
576
577 New in 1.11.3:
578
579 * Miscellaneous changes:
580
581   - Automake's own build system is more silent by default, making use of
582     the 'silent-rules' option.
583
584   - The master copy of the 'gnupload' script is now maintained in gnulib,
585     not in automake.
586
587   - The 'missing' script no longer tries to wrap calls to 'tar'.
588
589   - "make dist" no longer wraps 'tar' invocations with the 'missing'
590     script.  Similarly, the obsolescent variable '$(AMTAR)' (which you
591     shouldn't be using BTW ;-) no longer invokes the 'missing' script
592     to wrap tar, but simply invokes the 'tar' program itself.
593
594   - "make dist" can now create lzip-compressed tarballs.
595
596   - In the Automake info documentation, the Top node and the nodes about
597     the invocation of the automake and aclocal programs have been renamed;
598     now, calling "info automake" will open the Top node, while calling
599     "info automake-invocation" and "info aclocal-invocation" will access
600     the nodes about the invocation of respectively automake and aclocal.
601
602   - Automake is now distributed as a gzip-compressed and an xz-compressed
603     tarball.  Previously, bzip2 was used instead of xz.
604
605   - The last relics of Python 1.5 support have been removed from the
606     AM_PATH_PYTHON macro.
607
608   - For programs and libraries, automake now detects EXTRA_foo_DEPENDENCIES
609     and adds them to the normal list of dependencies, but without
610     overwriting the foo_DEPENDENCIES variable, which is normally computed
611     by automake.
612
613 Bugs fixed in 1.11.3:
614
615 * Bugs introduced by 1.11.2:
616
617   - Automake now correctly recognizes the prefix/primary combination
618    'pkglibexec_SCRIPTS' as valid.
619
620   - The parallel-tests harness no longer trips on sed implementations
621     with stricter limits on the length of input lines (problem seen at
622     least on Solaris 8).
623
624 * Long-standing bugs:
625
626   - The "deleted header file problem" for *.am files is avoided by stub
627     rules.  This allows 'make' to trigger a rerun of 'automake' also if
628     some previously needed '.am' file has been removed.
629
630   - The 'silent-rules' option now generates working makefiles even
631     for the uncommon 'make' implementations that do not support the
632     nested-variables extension to POSIX 2008.  For such 'make'
633     implementations, whether a build is silent is determined at
634     configure time, and cannot be overridden at make time with
635     "make V=0" or "make V=1".
636
637   - Vala support now works better in VPATH setups.
638
639 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
640
641 New in 1.11.2:
642
643 * Changes to aclocal:
644
645   - The `--acdir' option is deprecated.  Now you should use the new options
646     `--automake-acdir' and `--system-acdir' instead.
647
648   - The `ACLOCAL_PATH' environment variable is now interpreted as a
649     colon-separated list of additional directories to search after the
650     automake internal acdir (by default ${prefix}/share/aclocal-APIVERSION)
651     and before the system acdir (by default ${prefix}/share/aclocal).
652
653 * Miscellaneous changes:
654
655   - The Automake support for automatic de-ANSI-fication has been
656     deprecated.  It will probably be removed in the next major Automake
657     release (1.12).
658
659   - The `lzma' compression scheme and associated automake option `dist-lzma'
660     is obsoleted by `xz' and `dist-xz' due to upstream changes.
661
662   - You may adjust the compression options used in dist-xz and dist-bzip2.
663     The default is now merely -e for xz, but still -9 for bzip;  you may
664     specify a different level via the XZ_OPT and BZIP2 envvars respectively.
665     E.g., "make dist-xz XZ_OPT=-7" or "make dist-bzip2 BZIP2=-5"
666
667   - The `compile' script now converts some options for MSVC for a better
668     user experience.  Similarly, the new `ar-lib' script wraps Microsoft lib.
669
670   - The py-compile script now accepts empty arguments passed to the options
671     `--destdir' and `--basedir', and complains about unrecognized options.
672     Moreover, a non-option argument or a special `--' argument terminates
673     the list of options.
674
675   - A developer that needs to pass specific flags to configure at "make
676     distcheck" time can now, and indeed is advised to, do so by defining
677     the developer-reserved makefile variable AM_DISTCHECK_CONFIGURE_FLAGS,
678     instead of the old DISTCHECK_CONFIGURE_FLAGS.
679     The DISTCHECK_CONFIGURE_FLAGS variable should now be reserved for the
680     user; still, the old Makefile.am files that used to define it will
681     still continue to work as before.
682
683   - New macro AM_PROG_AR that looks for an archiver and wraps it in the new
684     'ar-lib' auxiliary script if the selected archiver is Microsoft lib.
685     This new macro is required for LIBRARIES and LTLIBRARIES when automake
686     is run with -Wextra-portability and -Werror.
687
688   - When using DejaGnu-based testsuites, the user can extend the `site.exp'
689     file generated by automake-provided rules by defining the special make
690     variable `$(EXTRA_DEJAGNU_SITE_CONFIG)'.
691
692   - The `install-info' rule can now be instructed not to create/update
693     the `${infodir}/dir' file, by exporting the new environment variable
694     `AM_UPDATE_INFO_DIR' to the value "no".
695
696 Bugs fixed in 1.11.2:
697
698 * Bugs introduced by 1.11:
699
700   - The parallel-tests driver no longer produces erroneous results with
701     Tru64/OSF 5.1 sh upon unreadable log files.
702
703   - The `parallel-tests' test driver does not report spurious successes
704     when used with concurrent FreeBSD make (e.g., "make check -j3").
705
706   - When the parallel-tests driver is in use, automake now explicitly
707     rejects invalid entries and conditional contents in TEST_EXTENSIONS,
708     instead of issuing confusing and apparently unrelated error messages
709     (e.g., "non-POSIX variable name", "bad characters in variable name",
710     or "redefinition of TEST_EXTENSIONS), or even, in some situations,
711     silently producing broken `Makefile.in' files.
712
713   - The `silent-rules' option now truly silences all compile rules, even
714     when dependency tracking is disabled.  Also, when `silent-rules' is
715     not used, `make' output no longer contains spurious backslash-only
716     lines, thus once again matching what Automake did before 1.11.
717
718   - The AM_COND_IF macro also works if the shell expression for the
719     conditional is no longer valid for the condition.
720
721 * Long-standing bugs:
722
723   - The order of Yacc and Lex flags is fixed to be consistent with other
724     languages: $(AM_YFLAGS) comes before $(YFLAGS), and $(AM_LFLAGS) before
725     $(LFLAGS), so that the user variables override the developer variables.
726
727   - "make distcheck" now correctly complains also when "make uninstall"
728     leaves one and only one file installed in $(prefix).
729
730   - A "make uninstall" issued before a "make install", or after a mere
731     "make install-data" or a mere "make install-exec" does not spuriously
732     fail anymore.
733
734   - Automake now warns about more primary/directory invalid combinations,
735     such as "doc_LIBRARIES" or "pkglib_PROGRAMS".
736
737   - Rules generated by Automake now try harder to not change any files when
738     `make -n' is invoked.  Fixes include compilation of Emacs Lisp, Vala, or
739     Yacc source files and the rule to update config.h.
740
741   - Several scripts and the parallel-tests testsuite driver now exit with
742     the right exit status upon receiving a signal.
743
744   - A per-Makefile.am setting of -Werror does not erroneously carry over
745     to the handling of other Makefile.am files.
746
747   - The code for automatic dependency tracking works around a Solaris
748     make bug triggered by sources containing repeated slashes when the
749     `subdir-objects' option was used.
750
751   - The makedepend and hp depmodes now work better with VPATH builds.
752
753   - Java sources specified with check_JAVA are no longer compiled for
754     "make all", but only for "make check".
755
756   - An usage like "java_JAVA = foo.java" will now cause Automake to warn
757     and error out if `javadir' is undefined, instead of silently producing
758     a broken Makefile.in.
759
760   - aclocal and automake now honour the configure-time definitions of
761     AUTOCONF and AUTOM4TE when they spawn autoconf or autom4te processes.
762
763   - The `install-info' recipe no longer tries to guess whether the
764     `install-info' program is from Debian or from GNU, and adaptively
765     change its behaviour; this has proven to be frail and easy to
766     regress.
767
768 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
769
770 Bugs fixed in 1.11.1:
771
772   - Lots of minor bugfixes.
773
774 * Bugs introduced by 1.11:
775
776   - The `parallel-tests' test driver works around a GNU make 3.80 bug with
777     trailing white space in the test list (`TESTS = foo $(EMPTY)').
778
779 * Long standing bugs:
780
781   - On Darwin 9, `pythondir' and `pyexecdir' pointed below `/Library/Python'
782     even if the `--prefix' argument pointed outside of a system directory.
783     AM_PATH_PYTHON has been fixed to ignore the value returned from python's
784     `get_python_lib' function if it points outside the configured prefix,
785     unless the `--prefix' argument was either `/usr' or below `/System'.
786
787   - The testsuite does not try to change the mode of `ltmain.sh' files from
788     a Libtool installation (symlinked to test directories) any more.
789
790   - AM_PROG_GCJ uses AC_CHECK_TOOLS to look for `gcj' now, so that prefixed
791     tools are preferred in a cross-compile setup.
792
793   - The distribution is tarred up with mode 755 now by the `dist*' targets.
794     This fixes a race condition where untrusted users could modify files
795     in the $(PACKAGE)-$(VERSION) distdir before packing if the toplevel
796     build directory was world-searchable.  This is CVE-2009-4029.
797
798 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
799
800 New in 1.11:
801
802 * Version requirements:
803
804   - Autoconf 2.62 or greater is required.
805
806 * Changes to aclocal:
807
808   - The autoconf version check implemented by aclocal in aclocal.m4
809     (and new in Automake 1.10) is degraded to a warning.  This helps
810     in the common case where the Autoconf versions used are compatible.
811
812 * Changes to automake:
813
814   - The automake program can run multiple threads for creating most
815     Makefile.in files concurrently, if at least Perl 5.7.2 is available
816     with interpreter-based threads enabled.  Set the environment variable
817     AUTOMAKE_JOBS to the maximum number of threads to use, in order to
818     enable this experimental feature.
819
820 * Changes to Libtool support:
821
822   - Libtool generic flags are now passed to the install and uninstall
823     modes as well.
824
825   - distcheck works with Libtool 2.x even when LT_OUTPUT is used, as
826     config.lt is removed correctly now.
827
828 * Languages changes:
829
830   - subdir-object mode works now with Fortran (F77, FC, preprocessed
831     Fortran, and Ratfor).
832
833   - For files with extension .f90, .f95, .f03, or .f08, the flag
834     $(FCFLAGS_f[09]x) computed by AC_FC_SRCEXT is now used in compile rules.
835
836   - Files with extension .sx are also treated as preprocessed assembler.
837
838   - The default source file extension (.c) can be overridden with
839     AM_DEFAULT_SOURCE_EXT now.
840
841   - Python 3.0 is supported now, Python releases prior to 2.0 are no
842     longer supported.
843
844   - AM_PATH_PYTHON honors python's idea about the site directory.
845
846   - There is initial support for the Vala programming language, when using
847     Vala 0.7.0 or later.
848
849 * Miscellaneous changes:
850
851   - Automake development is done in a git repository on Savannah now, see
852
853       http://git.sv.gnu.org/gitweb/?p=automake.git
854
855     A read-only CVS mirror is provided at
856
857       cvs -d :pserver:anonymous@pserver.git.sv.gnu.org:/automake.git \
858           checkout -d automake HEAD
859
860   - "make dist" can now create xz-compressed tarballs,
861     as well as (deprecated?) lzma-compressed tarballs.
862
863   - `automake --add-missing' will by default install the GPLv3 file as
864     COPYING if it is missing.  It will also warn that the license file
865     should be added to source control.  Note that Automake will never
866     overwrite an existing COPYING file, even when the `--force-missing'
867     option is used.
868
869   - The manual is now distributed under the terms of the GNU FDL 1.3.
870
871   - Automake ships and installs man pages for automake and aclocal now.
872
873   - New shorthand `$(pkglibexecdir)' for `$(libexecdir)/@PACKAGE@'.
874
875   - install-sh supports -C, which does not update the installed file
876     (and its time stamps) if the contents did not change.
877
878   - The `gnupload' script has been revamped.
879
880   - The `depcomp' and `compile' scripts now work with MSVC under MSYS.
881
882   - The targets `install' and `uninstall' are more efficient now, in that
883     for example multiple files from one Automake variable such as
884     `bin_SCRIPTS' are copied in one `install' (or `libtool --mode=install')
885     invocation if they do not have to be renamed.
886
887     Both install and uninstall may sometimes enter (`cd' into) the target
888     installation directory now, when no build-local scripts are used.
889
890     Both install and uninstall do not fail anymore but do nothing if an
891     installation directory variable like `bindir' is set to the empty string.
892
893     For built-in rules, `make install' now fails reliably if installation
894     of a file failed.  Conversely, `make uninstall' even succeeds when
895     issued multiple times.
896
897     These changes may need some adjustments from users:  For example,
898     some `install' programs refuse to install multiple copies of the
899     same file in one invocation, so you may need to remove duplicate
900     entries from file lists.
901
902     Also, within one set of files, say, nobase_data_DATA, the order of
903     installation may be changed, or even unstable among different hosts,
904     due to the use of associative arrays in awk.  The increased use of
905     awk matches a similar move in Autoconf to provide for better scaling.
906
907     Further, most undocumented per-rule install command variables such as
908     binSCRIPT_INSTALL have been removed because they are not needed any
909     more.  Packages which use them should be using the appropriate one of
910     INSTALL_{DATA,PROGRAM,SCRIPT} or their install_sh_{DATA,PROGRAM,SCRIPT}
911     counterpart, depending on the type of files and the need for automatic
912     target directory creation.
913
914   - The "deleted header file problem" for *.m4 files is avoided by
915     stub rules.  This allows `make' to trigger a rerun of `aclocal'
916     also if some previously needed macro file has been removed.
917
918   - Rebuild rules now also work for a removed `subdir/Makefile.in' in
919     an otherwise up to date tree.
920
921   - The `color-tests' option causes colored test result output on terminals.
922
923   - The `parallel-tests' option enables a new test driver that allows for
924     parallel test execution, inter-test dependencies, lazy test execution
925     for unit-testing, re-testing only failed tests, and formatted result output
926     as RST (reStructuredText) and HTML.  Enabling this option may require some
927     changes to your test suite setup; see the manual for details.
928
929   - The `silent-rules' option enables Linux kernel-style silent build output.
930     This option requires the widely supported but non-POSIX `make' feature
931     of recursive variable expansion, so do not use it if your package needs
932     to build with `make' implementations that do not support it.
933
934     To enable less verbose build output, the developer has to use the Automake
935     option `silent-rules' in `AM_INIT_AUTOMAKE', or call the `AM_SILENT_RULES'
936     macro.  The user may then set the default verbosity by passing the
937     `--enable-silent-rules' option to `configure'.  At `make' run time, this
938     default may be overridden using `make V=0' for less verbose, and `make V=1'
939     for backward-compatible verbose output.
940
941   - New prefix `notrans_' for manpages which should not be transformed
942     by --program-transform.
943
944   - New macro AM_COND_IF for conditional evaluation and conditional
945     config files.
946
947   - For AC_CONFIG_LINKS, if source and destination are equal, do not
948     remove the file in a non-VPATH build.  Such setups work with Autoconf
949     2.62 or newer.
950
951   - AM_MAINTAINER_MODE now allows for an optional argument specifying
952     the default setting.
953
954   - AM_SUBST_NOTMAKE may prevent substitution of AC_SUBSTed variables,
955     useful especially for multi-line values.
956
957   - Automake's early configure-time sanity check now diagnoses an
958     unsafe absolute source directory name and makes configure fail.
959
960   - The Automake macros and rules cope better with whitespace in the
961     current directory name, as long as the relative path to `configure'
962     does not contain whitespace.  To this end, the values of `$(MISSING)'
963     and `$(install_sh)' may contain suitable quoting, and their expansion
964     might need `eval'uation if used outside of a makefile.  These
965     undocumented variables may be used in several documented macros such
966     as $(AUTOCONF) or $(MAKEINFO).
967
968 Bugs fixed in 1.11:
969
970 * Long-standing bugs:
971
972   - Fix aix dependency tracking for libtool objects.
973
974   - Work around AIX sh quoting issue in AC_PROG_CC_C_O, leading to
975     unnecessary use of the `compile' script.
976
977   - For nobase_*_LTLIBRARIES with nonempty directory components, the
978     correct `-rpath' argument is used now.
979
980   - `config.status --file=Makefile depfiles' now also works with the
981     extra quoting used internally by Autoconf 2.62 and newer
982     (it used to work only without the `--file=' bit).
983
984   - The `missing' script works better with versioned tool names.
985
986   - Semantics for `missing help2man' have been revamped:
987
988     Previously, if `help2man' was not present, `missing help2man' would have
989     the following semantics: if some man page was out of date but present, then
990     a warning would be printed, but the exit status was 0.  If the man page was
991     not present at all, then `missing' would create a replacement man page
992     containing an error message, and exit with a status of 2.  This does not play
993     well with `make': the next run will see this particular man page as being up
994     to date, and will only error out on the next generated man page, if any;
995     repeat until all pages are done.  This was not desirable.
996
997     These are the new semantics: if some man page is not present, and help2man
998     is not either, then `missing' will warn and generate the replacement page
999     containing the error message, but exit successfully.  However, `make dist'
1000     will ensure that no such bogus man pages are packaged into a tarball.
1001
1002   - Targets provided by automake behave better with `make -n', in that they
1003     take care not to create files.
1004
1005   - `config.status Makefile... depfiles' works fine again in the presence of
1006     disabled dependency tracking.
1007
1008   - The default no-op recursive rules for these targets also work with BSD make
1009     now: html, install-html, install-dvi, install-pdf, install-pdf, install-info.
1010
1011   - `make distcheck' works also when both a directory and some file below it
1012     have been added to a distribution variable, such as EXTRA_DIST or *_SOURCES.
1013
1014   - Texinfo dvi, ps, pdf, and html output files are not removed upon
1015     `make mostlyclean' any more; only the LaTeX by-products are.
1016
1017   - Renamed objects also work with the `subdir-objects' option and
1018     source file languages which Automake does not know itself.
1019
1020   - `automake' now correctly complains about variable assignments which are
1021     preceded by a comment, extend over multiple lines with backslash-escaped
1022     newlines, and end in a comment sign.  Previous versions would silently
1023     and wrongly ignore such assignments completely.
1024
1025 * Bugs introduced by 1.10:
1026
1027   - Fix output of dummy dependency files in presence of post-processed
1028     Makefile.in's again, but also cope with long lines.
1029
1030   - $(EXEEXT) is automatically appended to filenames of XFAIL_TESTS
1031     that have been declared as programs in the same Makefile.
1032     This is for consistency with the analogous change to TESTS in 1.10.
1033
1034   - Fix order of standard includes to again be `-I. -I$(srcdir)',
1035     followed by directories containing config headers.
1036
1037 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1038
1039 New in 1.10:
1040
1041 * Version requirements:
1042
1043   - Autoconf 2.60 or greater is required.
1044
1045   - Perl 5.6 or greater is required.
1046
1047 * Changes to aclocal:
1048
1049   - aclocal now also supports -Wmumble and -Wno-mumble options.
1050
1051   - `dirlist' entries (for the aclocal search path) may use shell
1052     wildcards such as `*', `?', or `[...]'.
1053
1054   - aclocal supports an --install option that will cause system-wide
1055     third-party macros to be installed in the local directory
1056     specified with the first -I flag.  This option also uses #serial
1057     lines in M4 files to upgrade local macros.
1058
1059     The new aclocal options --dry-run and --diff help to review changes
1060     before they are installed.
1061
1062   - aclocal now outputs an autoconf version check in aclocal.m4 in
1063     projects using automake.
1064
1065     For a few years, automake and aclocal have been calling autoconf
1066     (or its underlying engine autom4te) to accurately retrieve the
1067     data they need from configure.ac and its siblings.  Doing so can
1068     only work if all autotools use the same version of autoconf.  For
1069     instance a Makefile.in generated by automake for one version of
1070     autoconf may stop working if configure is regenerated with another
1071     version of autoconf, and vice versa.
1072
1073     This new version check ensures that the whole build system has
1074     been generated using the same autoconf version.
1075
1076 * Support for new Autoconf macros:
1077
1078   - The new AC_REQUIRE_AUX_FILE Autoconf macro is supported.
1079
1080   - If `subdir-objects' is set, and AC_CONFIG_LIBOBJ_DIR is specified,
1081     $(LIBOBJS), $(LTLIBOBJS), $(ALLOCA), and $(LTALLOCA) can be used
1082     in different directories.  However, only one instance of such a
1083     library objects directory is supported.
1084
1085 * Change to Libtool support:
1086
1087   - Libtool generic flags (those that go before the --mode=MODE option)
1088     can be specified using AM_LIBTOOLFLAGS and target_LIBTOOLFLAGS.
1089
1090 * Yacc and Lex changes:
1091
1092   - The rebuild rules for distributed Yacc and Lex output will avoid
1093     overwriting existing files if AM_MAINTAINER_MODE and maintainer-mode
1094     is not enabled.
1095
1096   - ylwrap is now always used for lex and yacc source files,
1097     regardless of whether there is more than one source per directory.
1098
1099 * Languages changes:
1100
1101   - Preprocessed assembler (*.S) compilation now honors CPPFLAGS,
1102     AM_CPPFLAGS and per-target _CPPFLAGS, and supports dependency
1103     tracking, unlike non-preprocessed assembler (*.s).
1104
1105   - subdir-object mode works now with Assembler.  Automake assumes
1106     that the compiler understands `-c -o'.
1107
1108   - Preprocessed assembler (*.S) compilation now also honors
1109     $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES).
1110
1111   - Improved support for Objective C:
1112     - Autoconf's new AC_PROG_OBJC will enable automatic dependency tracking.
1113     - A new section of the manual documents the support.
1114
1115   - New support for Unified Parallel C:
1116     - AM_PROG_UPC looks for a UPC compiler.
1117     - A new section of the manual documents the support.
1118
1119   - Per-target flags are now correctly handled in link rules.
1120
1121     For instance maude_CFLAGS correctly overrides AM_CFLAGS; likewise
1122     for maude_LDFLAGS and AM_LDFLAGS.  Previous versions bogusly
1123     preferred AM_CFLAGS over maude_CFLAGS while linking, and they
1124     used both AM_LDFLAGS and maude_LDFLAGS on the same link command.
1125
1126     The fix for compiler flags (i.e., using maude_CFLAGS instead of
1127     AM_CFLAGS) should not hurt any package since that is how _CFLAGS
1128     is expected to work (and actually works during compilation).
1129
1130     However using maude_LDFLAGS "instead of" AM_LDFLAGS rather than
1131     "in addition to" breaks backward compatibility with older versions.
1132     If your package used both variables, as in
1133
1134       AM_LDFLAGS = common flags
1135       bin_PROGRAMS = a b c
1136       a_LDFLAGS = more flags
1137       ...
1138
1139     and assumed *_LDFLAGS would sum up, you should rewrite it as
1140
1141       AM_LDFLAGS = common flags
1142       bin_PROGRAMS = a b c
1143       a_LDFLAGS = $(AM_LDFLAGS) more flags
1144       ...
1145
1146     This new behavior of *_LDFLAGS is more coherent with other
1147     per-target variables, and the way *_LDFLAGS variables were
1148     considered internally.
1149
1150 * New installation targets:
1151
1152   - New targets mandated by GNU Coding Standards:
1153       install-dvi
1154       install-html
1155       install-ps
1156       install-pdf
1157     By default they will only install Texinfo manuals.
1158     You can customize them with *-local variants:
1159       install-dvi-local
1160       install-html-local
1161       install-ps-local
1162       install-pdf-local
1163
1164   - The undocumented recursive target `uninstall-info' no longer exists.
1165     (`uninstall' is in charge of removing all possible documentation
1166     flavors, including optional formats such as dvi, ps, or info even
1167     when `no-installinfo' is used.)
1168
1169 * Miscellaneous changes:
1170
1171   - Automake no longer complains if input files for AC_CONFIG_FILES
1172     are specified using shell variables.
1173
1174   - clean, distribution, or rebuild rules are normally disabled for
1175     inputs and outputs of AC_CONFIG_FILES, AC_CONFIG_HEADERS, and
1176     AC_CONFIG_LINK specified using shell variables.  However, if these
1177     variables are used as ${VAR}, and AC_SUBSTed, then Automake will
1178     be able to output rules anyway.
1179     (See the Automake documentation for AC_CONFIG_FILES.)
1180
1181   - $(EXEEXT) is automatically appended to filenames of TESTS
1182     that have been declared as programs in the same Makefile.
1183     This is mostly useful when some check_PROGRAMS are listed in TESTS.
1184
1185   - `-Wportability' has finally been turned on by default for `gnu' and
1186     `gnits' strictness.  This means, automake will complain about %-rules
1187     or $(GNU Make functions) unless you switch to `foreign' strictness or
1188     use `-Wno-portability'.
1189
1190   - Automake now uses AC_PROG_MKDIR_P (new in Autoconf 2.60), and uses
1191     $(MKDIR_P) instead of $(mkdir_p) to create directories.  The
1192     $(mkdir_p) variable is still defined (to the same value as
1193     $(MKDIR_P)) but should be considered obsolete.  If you are using
1194     $(mkdir_p) in some of your rules, please plan to update them to
1195     $(MKDIR_P) at some point.
1196
1197   - AM_C_PROTOTYPES and ansi2knr are now documented as being obsolete.
1198     They still work in this release, but may be withdrawn in a future one.
1199
1200   - Inline compilation rules for gcc3-style dependency tracking are
1201     more readable.
1202
1203   - Automake installs a "Hello World!" example package in $(docdir).
1204     This example is used throughout the new "Autotools Introduction"
1205     chapter of the manual.
1206
1207 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1208
1209 New in 1.9:
1210
1211 * Makefile.in bloat reduction:
1212
1213   - Inference rules are used to compile sources in subdirectories when
1214     the `subdir-objects' option is used and no per-target flags are
1215     used.  This should reduce the size of some projects a lot, because
1216     Automake used to output an explicit rule for each such object in
1217     the past.
1218
1219   - Automake no longer outputs three rules (.o, .obj, .lo) for each
1220     object that must be built with explicit rules.  It just outputs
1221     the rules required to build the kind of object considered: either
1222     the two .o and .obj rules for usual objects, or the .lo rule for
1223     libtool objects.
1224
1225 * Change to Libtool support:
1226
1227   - Libtool tags are used with libtool versions that support them.
1228     (I.e., with Libtool 1.5 or greater.)
1229
1230   - Automake is now able to handle setups where a libtool library is
1231     conditionally installed in different directories, as in
1232
1233       if COND
1234         lib_LTLIBRARIES = liba.la
1235       else
1236         pkglib_LTLIBRARIES = liba.la
1237       endif
1238       liba_la_SOURCES = ...
1239
1240 * Changes to aclocal:
1241
1242   - aclocal now ensures that AC_DEFUNs and AU_DEFUNs it discovers are
1243     really evaluated, before it decides to include them in aclocal.m4.
1244     This solves nasty problems with conditional redefinitions of
1245     Autoconf macros in /usr/share/aclocal/*.m4 files causing extraneous
1246     *.m4 files to be included in any project using these macros.
1247     (Calls to AC_PROG_EGREP causing libtool.m4 to be included is the
1248     most famous instance of this bug.)
1249
1250   - Do not complain about missing conditionally AC_REQUIREd macros
1251     that are not actually used.  In 1.8.x aclocal would correctly
1252     determine which of these macros were really needed (and include
1253     only these in the package); unfortunately it would also require
1254     all of them to be present in order to run.  This created
1255     situations were aclocal would not work on a tarball distributing
1256     all the macros it uses.  For instance running aclocal on a project
1257     containing only the subset of the Gettext macros in use by the
1258     project did not work, because gettext conditionally requires other
1259     macros.
1260
1261 * Portability improvements:
1262
1263   - Tar format can be chosen with the new options tar-v7, tar-ustar, and
1264     tar-pax.  The new option filename-length-max=99 helps diagnosing
1265     filenames that are too long for tar-v7.  (PR/414)
1266
1267   - Variables aumented with `+=' are now automatically flattened (i.e.,
1268     trailing backslashes removed) and then wrapped around 80 colummns
1269     (adding trailing backslashes).  In previous versions, a long series
1270     of
1271       VAR += value1
1272       VAR += value2
1273       VAR += value3
1274       ...
1275     would result in a single-line definition of VAR that could possibly
1276     exceed the maximum line length of some make implementations.
1277
1278     Non-augmented variables are still output as they are defined in
1279     the Makefile.am.
1280
1281 * Miscellaneous:
1282
1283   - Support Fortran 90/95 with the new "fc" and "ppfc" languages.
1284     Works the same as the old Fortran 77 implementation; just replace
1285     F77 with FC everywhere (exception: FFLAGS becomes FCFLAGS).
1286     Requires a version of autoconf which provides AC_PROG_FC (>=2.59).
1287
1288   - Support for conditional _LISP.
1289
1290   - Support for conditional -hook and -local rules (PR/428).
1291
1292   - Diagnose AC_CONFIG_AUX_DIR calls following AM_INIT_AUTOMAKE. (PR/49)
1293
1294   - Automake will not write any Makefile.ins after the first error it
1295     encounters.  The previous Makefile.ins (if any) will be left in
1296     place.  (Warnings will not prevent output, but remember they can
1297     be turned into errors with -Werror.)
1298
1299   - The restriction that SUBDIRS must contain direct children is gone.
1300     Do not abuse.
1301
1302   - The manual tells more about SUBDIRS vs. DIST_SUBDIRS.
1303     It also gives an example of nested packages using AC_CONFIG_SUBDIRS.
1304
1305 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1306
1307 Bugs fixed in 1.8.5:
1308
1309 * Long-standing bugs:
1310
1311   - Define DIST_SUBDIRS even when the `no-dist' or `cygnus' options are used
1312     so that `make distclean' and `make maintainer-clean' can work.
1313
1314   - Define AR and ARFLAGS even when only EXTRA_LIBRARIES are defined.
1315
1316   - Fix many rules to please FreeBSD make, which runs commands with `sh -e'.
1317
1318   - Polish diagnostic when no input file is found.
1319
1320 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1321
1322 Bugs fixed in 1.8.4:
1323
1324 * Long-standing bugs:
1325
1326   - Fix AM_PATH_PYTHON to correctly display $PYTHON when it has been
1327     overridden by the user.
1328
1329   - Honor PATH_SEPARATOR in various places of the Automake package, for
1330     the sake of OS/2.
1331
1332   - Adjust dependency tracking mode detection to ICC 8.0's new output.
1333     (PR/416)
1334
1335   - Fix install-sh so it can install the `mv' binary... using `mv'.
1336
1337   - Fix tru64 dependency tracking for libtool objects.
1338
1339   - Work around Exuberant Ctags when creating a TAGS files in a directory
1340     without files to scan but with subdirectories to include.
1341
1342 * Bugs introduced by 1.8:
1343
1344   - Fix an "internal error" when @LIBOBJS@ is used in a variable that is
1345     not defined in the same conditions as the _LDADD that uses it.
1346
1347   - Do not warn when JAVAROOT is overridden, this is legitimate.
1348
1349 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1350
1351 Bugs fixed in 1.8.3:
1352
1353 * Long-standing bugs:
1354
1355   - Quote filenames in installation rules, in case $DESTDIR, $prefix,
1356     or any of the other *dir variables contain a space.
1357
1358     Please note that Automake does not and cannot support spaces in
1359     filenames that are involved during the build.  This change affects
1360     only installation paths, so that `make install' does not bomb out
1361     in packages configured with
1362       ./configure --prefix '/c/Program Files'
1363
1364   - Fix the depfiles output so it works with GNU sed (<4.1) even when
1365     POSIXLY_CORRECT is set.
1366
1367   - Do not AC_SUBST(LIBOBJS) in AM_WITH_REGEX.  This macro was unusable
1368     since Autoconf 2.54, which defines LIBOBJS itself.
1369
1370   - Fix a potential (but unlikely) race condition in parallel elisp
1371     builds.  (Introduced in 1.7.3.)
1372
1373   - Do not assume that users override _DEPENDENCIES in all conditions
1374     where Automake will try to define them.
1375
1376   - Do not use `mkdir -p' in mkinstalldirs, unless this is GNU mkdir.
1377     Solaris 8's `mkdir -p' is not thread-safe and can break parallel
1378     builds.
1379
1380     This fix also affects the $(mkdir_p) variable defined since
1381     Automake 1.8.  It will be set to `mkdir -p' only if mkdir is GNU
1382     mkdir, and to `mkinstalldirs' or `install-sh -d' otherwise.
1383
1384   - Secure temporary directory creation in `make distcheck'. (PR/413)
1385
1386   - Do not generate two build rules for `parser.h' when the
1387     parser appears in two different conditionals.
1388
1389   - Work around a Solaris 8 /bin/sh bug in the test for dependency
1390     checking.  Usually ./configure will not pick this shell; so this
1391     fix only helps cases where the shell is forced to /bin/sh.
1392
1393 * Bugs introduced by 1.8:
1394
1395   - In some situations (hand-written `m4_include's), aclocal would
1396     call the `File::Spec->rel2abs' method, which was only introduced
1397     in Perl 5.6.  This new version reestablish support Perl 5.005.
1398
1399     It is likely that the next major Automake releases will require at
1400     least Perl 5.6.  Consider upgrading your development environment
1401     if you are still using the five-year-old Perl 5.005.
1402
1403   - Automake would sometimes fail to define rules for targets listed
1404     in variables defined in multiple conditions.  For instance on
1405       if C1
1406         bin_PROGRAMS = a
1407       else
1408         bin_PROGRAMS = b
1409       endif
1410     it would define only the `a.$(OBJEXT): a.c' rule and omit the
1411     `b.$(OBJEXT): b.c' rule.
1412
1413 * New sections in manual:
1414
1415   - Third-Party Makefiles: how to interface third party Makefiles.
1416   - Upgrading: upgrading packages to newer Automake versions.
1417   - Multiple Outputs: handling tools that produce many outputs.
1418
1419 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1420
1421 Bug fixed in 1.8.2:
1422
1423 * A (well known) portability bug slipped in the changes made to
1424   install-sh in Automake 1.8.1.  The broken install-sh would refuse to
1425   install anything on Tru64.
1426
1427 * Fix install rules for conditionally built python files.  (This never
1428   really worked.)
1429
1430 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1431
1432 Bug fixed in 1.8.1:
1433
1434 * Bugs introduced by 1.8:
1435
1436   - Fix Config.pm import error with old Perl versions (at least
1437     5.005_03).  One symptom is that aclocal could not find its macro
1438     directory.
1439
1440   - Automake 1.8 used `mkdir -m 0755 -p --' to ensure that directories
1441     created by `make install' are always world readable, even if the
1442     installer happens to have an overly restrictive umask (e.g. 077).
1443     This was a mistake and has been reverted.  There are at least two
1444     reasons why we must not use `-m 0755':
1445       - it causes special bits like SGID to be ignored,
1446       - it may be too restrictive (some setups expect 775 directories).
1447
1448   - Fix aclocal to honor definitions located in files which have been
1449     m4_included manually.  aclocal 1.8 had been updated to check
1450     m4_included files for new requirements, but forgot that these
1451     m4_included files can also provide new definitions.
1452
1453     Note that if you have such a setup, we recommend you get rid of
1454     it.  In the past, there was a reason to m4_include files manually:
1455     aclocal used to duplicate entire M4 files into aclocal.m4, even
1456     files that were distributed.  Some packages were therefore
1457     m4_including the distributed file directly, and playing some
1458     tricks to ensure aclocal would not copy that file to aclocal.m4,
1459     in order to limit the amount of duplication.  Since aclocal 1.8.x
1460     will precisely output m4_includes for local M4 files, we recommend
1461     that you clean up your setup, removing all manual m4_includes and
1462     letting aclocal output them.
1463
1464   - Output detailed menus in the Info version if the Automake manual,
1465     so that Emacs can locate the indexes.
1466
1467   - configure.ac and configure were listed twice in DIST_COMMON (an
1468     internal variable where Automake lists configury files to
1469     distribute).  This was harmless, but unaesthetic.
1470
1471   - Use `chmod a-w' instead of `chmod -w' as the latter honors umask.
1472     This was an issue only in the Automake package itself, not in
1473     its output.
1474
1475   - Automake assumed that all AC_CONFIG_LINKS arguments had the form
1476     DEST:SRC.  This was wrong, as some packages do
1477     AC_CONFIG_LINKS($computedlinks).  This version no longer abort in
1478     that situation.
1479
1480   - Contrary to mkinstalldirs, $(mkdir_p) was expecting exactly one
1481     argument.  This caused two kinds of failures:
1482       - Rules installing data in a conditionally defined directory
1483         failed when that directory was undefined.  In this case no
1484         argument was supplied.
1485       - `make installdirs' failed, because several directories were
1486         passed to $(mkdir_p).  This was an issue only on platform
1487         were $(mkdir_p) is implemented with `install-sh -d'.
1488     $(mkdir_p) as been changed to accept 0 or more arguments, as
1489     mkinstalldirs did.
1490
1491 * Long-standing bugs:
1492
1493   - Fix an unexpected diagnostic occurring when users attempt
1494     to override some internal variables that Automake appends to.
1495
1496   - aclocal now scans configure.ac for macro definitions (PR/319).
1497
1498   - Fix a portability issue with OSF1/Tru64 Make.  If a directory
1499     distributes files which are outside itself (this usually occurs
1500     when using AC_CONFIG_AUX_DIR([../dir]) to use auxiliary files
1501     from a parent package), then `make distcheck' fails due to an
1502     optimization performed by OSF1/Tru64 Make in its VPATH handling.
1503     (tests/subpkg2.test failure)
1504
1505   - Fix another portability issue with Sun and OSF1/Tru64 Make.
1506     In a VPATH-build configuration, `make install' would install
1507     nobase_ files to wrong locations.
1508
1509   - Fix a Perl `uninitialized value' diagnostic occurring when
1510     automake complains that a Texinfo file does not have a
1511     @setfilename statement.
1512
1513   - Erase config.status.lineno during `make distclean'.  This file
1514     can be created by config.status.  Automake already knew about
1515     configure.lineno, but forgot config.status.lineno.
1516
1517   - Distribute all files, even those which are built and installed
1518     conditionally.  This change affects files listed in conditionally
1519     defined *_HEADERS and *_PYTHON variable (unless they are nodist_*)
1520     as well as those listed in conditionally defined dist_*_DATA,
1521     dist_*_JAVA, dist_*_LISP, and dist_*_SCRIPTS variables.
1522
1523   - Fix AM_PATH_LISPDIR to avoid \? in sed regular expressions; it
1524     doesn't conform to POSIX.
1525
1526   - Normalize help strings for configure variables and options added
1527     by Automake macros.
1528
1529 * Anticipation:
1530
1531   - Check for python2.4 in AM_PATH_PYTHON.
1532
1533 * Spurious failures in test suite:
1534
1535   - tests/libtool5.test, tests/ltcond.test, tests/ltcond2.test,
1536     tests/ltconv.test: fix failures with CVS Libtool.
1537   - tests/aclocal6.test: fix failure if autom4te.cache is disabled.
1538   - tests/txinfo24.test, tests/txinfo25.test, tests/txinfo28.test:
1539     fix failures with old Texinfo versions.
1540
1541 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1542
1543 New in 1.8:
1544
1545 * Meta-News
1546
1547   - The NEWS file is more verbose.
1548
1549 * Requirements
1550
1551   - Autoconf 2.58 or greater is required.
1552
1553 * New features
1554
1555   - Default source file names in the absence of a _SOURCES declaration
1556     are made by removing any target extension before appending `.c', so
1557     to make the libtool module `foo.la' from `foo.c', you only need to
1558     do this:
1559
1560         lib_LTLIBRARIES = foo.la
1561         foo_la_LDFLAGS  = -module
1562
1563     For backward compatibility, foo_la.c will be used instead of
1564     foo.c if this file exists or is the explicit target of a rule.
1565     However -Wobsolete will warn about this deprecated naming.
1566
1567   - AR's `cru' flags are now set in a global ARFLAGS variable instead
1568     of being hard-coded in each $(AR) invocation, so they can be
1569     substituted from configure.ac.  This has been requested by people
1570     dealing with non-POSIX ar implementations.
1571
1572   - New warning option: -Woverride.  This will warn about any user
1573     target or variable definitions which override Automake
1574     definitions.
1575
1576   - Texinfo rules back up and restore info files when makeinfo fails.
1577
1578   - Texinfo rules now support the `html' target.
1579     Running this requires Texinfo 4.0 or greater.
1580
1581     `html' is a new recursive target, so if your package mixes
1582     hand-crafted `Makefile.in's with Automake-generated
1583     `Makefile.in's, you should adjust the former to support (or
1584     ignore) this target so that `make html' recurses successfully.  If
1585     you had a custom `html' rule in your `Makefile.am', it's better to
1586     rename it as `html-local', otherwise your rule will override
1587     Automake's new rule (you can check that by running `automake
1588     -Woverride') and that will stop the recursion to subdirectories.
1589
1590     Last but not least, this `html' rule is declared PHONY, even when
1591     overridden.  Fortunately, it appears that few packages use a
1592     non-PHONY `html' rule.
1593
1594   - Any file which is m4_included from configure.ac will appear as a
1595     configure and Makefile.in dependency, and will be automatically
1596     distributed.
1597
1598   - The rules for rebuilding Makefiles and Makefile.ins will now
1599     rebuild all Makefiles and all Makefile.ins at once when one of
1600     configure's dependencies has changed.  This is considerably faster
1601     than previous implementations, where config.status and automake
1602     were run separately in each directory (this still happens when you
1603     change a Makefile.am locally, without touching configure.ac or
1604     friends).  Doing this also solves a longstanding issue: these
1605     rebuild rules failed to work when adding new directories to the
1606     tree, forcing you to run automake manually.
1607
1608   - For similar reasons, the rules to rebuild configure,
1609     config.status, and aclocal.m4 are now defined in all directories.
1610     Note that if you were using the CONFIG_STATUS_DEPENDENCIES and
1611     CONFIGURE_DEPENDENCIES (formerly undocumented) variables, you
1612     should better define them in all directories.  This is easily done
1613     using an AC_SUBST (make sure you prefix these dependencies with
1614     $(top_srcdir) since this variable will appear at different
1615     levels of the build tree).
1616
1617   - aclocal will now use `m4_include' instead of copying local m4
1618     files into aclocal.m4.  (Local m4 files are those you ship with
1619     your project, other files will be copied as usual.)
1620
1621     Because m4_included files are automatically distributed, it means
1622     for most projects there is no point in EXTRA_DISTing the list of
1623     m4 files which are used.  (You can probably get rid of
1624     m4/Makefile.am if you had one.)
1625
1626   - aclocal will avoid touching aclocal.m4 when possible, so that
1627     Autom4te's cache isn't needlessly invalidated.  This behavior can
1628     be switched off with the new `--force' option.
1629
1630   - aclocal now uses Autoconf's --trace to detect macros which are
1631     actually used and will no longer include unused macros simply
1632     because they where mentioned.  This was often the case for macros
1633     called conditionally.
1634
1635   - New options no-dist and no-dist-gzip.
1636
1637   - compile, depcomp, elisp-comp, install-sh, mdate-sh, mkinstalldirs,
1638     py-compile, and ylwrap, now all understand --version and --help.
1639
1640   - Automake will now recognize AC_CONFIG_LINKS so far as removing created
1641     links as part of the distclean target and including source files in
1642     distributions.
1643
1644   - AM_PATH_PYTHON now supports ACTION-IF-FOUND and ACTION-IF-NOT-FOUND
1645     argument.  The latter can be used to override the default behavior
1646     (which is to abort).
1647
1648   - Automake will exit with $? = 63 on version mismatch.  (So does
1649     Autoconf 2.58)  missing knows this, and in this case it will
1650     emulate the tools as if they were absent.  Because older versions
1651     of Automake and Autoconf did not use this exit code, this change
1652     will only be useful in projects generated with future versions of
1653     these tools.
1654
1655   - When using AC_CONFIG_FILES with multiple input files, Automake
1656     generates the first ".in" input file for which a ".am" exists.
1657     (Former versions would try to use only the first input file.)
1658
1659   - lisp_DATA is now allowed.  If you are using the empty ELCFILES
1660     idiom to disable byte-compilation of lisp_LISP files, it is
1661     recommended that you switch to using lisp_DATA.  Note that
1662     this is not strictly equivalent: lisp_DATA will install elisp
1663     files even if emacs is not installed, while *_LISP do not
1664     install anything unless emacs is found.
1665
1666   - Makefiles will prefer `mkdir -p' over mkinstalldirs if it is
1667     available.  This selection is achieved through the Makefile
1668     variable $(mkdir_p) that is set by AM_INIT_AUTOMAKE to either
1669     `mkdir -m 0755 -p --', `$(mkinstalldirs) -m 0755', or
1670     `$(install_sh) -m 0755 -d'.
1671
1672 * Obsolete features
1673
1674   - Because `mkdir -p' is available on most platforms, and we can use
1675     `install-sh -d' when it is not, the use of the mkinstalldirs
1676     script is being phased out.  `automake --add-missing' no longer
1677     installs it, and if you remove mkinstalldirs from your package,
1678     automake will define $(mkinstalldirs) as an alias for $(mkdir_p).
1679
1680     Gettext 0.12.1 still requires mkinstalldirs.  Fortunately
1681     gettextize and autopoint will install it when needed.  Automake
1682     will continue to define the $(mkinstalldirs) and to distribute
1683     mkinstalldirs when this script is in the source tree.
1684
1685   - AM_PROG_CC_STDC is now empty.  The content of this macro was
1686     merged in AC_PROG_CC.  If your code uses $am_cv_prog_cc_stdc, you
1687     should adjust it to use $ac_cv_prog_cc_stdc instead.  (This
1688     renaming should be safe, even if you have to support several,
1689     versions of Automake, because AC_PROG_CC defines this variable
1690     since Autoconf 2.54.)
1691
1692   - Some users where using the undocumented ACLOCAL_M4_SOURCES
1693     variable to override the aclocal.m4 dependencies computed
1694     (inaccurately) by older versions of Automake.  Because Automake
1695     now tracks configure's m4 dependencies accurately (see m4_include
1696     above), the use of ACLOCAL_M4_SOURCES should be considered
1697     obsolete and will be flagged as such when running `automake
1698     -Wobsolete'.
1699
1700 * Bug fixes
1701
1702   - Defining programs conditionally using Automake conditionals no
1703     longer leads to a combinatorial explosion.  The following
1704     construct used to be troublesome when used with dozens of
1705     conditions.
1706
1707       bin_PROGRAMS = a
1708       if COND1
1709         bin_PROGRAMS += a1
1710       endif
1711       if COND2
1712         bin_PROGRAMS += a2
1713       endif
1714       if COND3
1715         bin_PROGRAMS += a3
1716       endif
1717       ...
1718
1719     Likewise for _SOURCES, _LDADD, and _LIBADD variables.
1720
1721   - Due to implementation constraints, previous versions of Automake
1722     proscribed multiple conditional definitions of some variables
1723     like bin_PROGRAMS:
1724
1725       if COND1
1726         bin_PROGRAMS = a1
1727       endif
1728       if COND2
1729         bin_PROGRAMS = a2
1730       endif
1731
1732     All _PROGRAMS, _LDADD, and _LIBADD variables were affected.
1733     This restriction has been lifted, and these variables now
1734     support multiple conditional definitions as do other variables.
1735
1736   - Cleanup the definitions of $(distdir) and $(top_distdir).
1737     $(top_distdir) now points to the root of the distribution
1738     directory created during `make dist', as it did in Automake 1.4,
1739     not to the root of the build tree as it did in intervening
1740     versions.  Furthermore these two variables are now only defined in
1741     the top level Makefile, and passed to sub-directories when running
1742     `make dist'.
1743
1744   - The --no-force option now correctly checks the Makefile.in's
1745     dependencies before deciding not to update it.
1746
1747   - Do not assume that make files are called Makefile in cleaning rules.
1748
1749   - Update .info files in the source tree, not in the build tree.  This
1750     is what the GNU Coding Standard recommend.  Only Automake 1.7.x
1751     used to update these files in the build tree (previous versions did
1752     it in the source tree too), and it caused several problems, varying
1753     from mere annoyance to portability issues.
1754
1755   - COPYING, COPYING.LIB, and COPYING.LESSER are no longer overwritten
1756     when --add-missing and --force-missing are used.  For backward
1757     compatibility --add-missing will continue to install COPYING (in
1758     `gnu' strictness) when none of these three files exist, but this
1759     use is deprecated: you should better choose a license yourself and
1760     install it once for all in your source tree (and in your code
1761     management system).
1762
1763   - Fix ylwrap so that it does not overwrite header files that haven't
1764     changed, as the inline rule already does.
1765
1766   - User-defined rules override automake-defined rules for the same
1767     targets, even when rules do not have commands.  This is not new
1768     (and was documented), however some of the automake-generated
1769     rules have escaped this principle in former Automake versions.
1770     Rules for the following targets are affected by this fix:
1771
1772        clean, clean-am, dist-all, distclean, distclean-am, dvi, dvi-am,
1773        info, info-am, install-data-am, install-exec-am, install-info,
1774        install-info-am, install-man, installcheck-am, maintainer-clean,
1775        maintainer-clean-am, mostlyclean, mostlyclean-am, pdf, pdf-am,
1776        ps, ps-am, uninstall-am, uninstall-info, uninstall-man
1777
1778     Practically it means that an attempt to supplement the dependencies
1779     of some target, as in
1780
1781        clean: my-clean-rule
1782
1783     will now *silently override* the automake definition of the
1784     rule for this target.  Running `automake -Woverride' will diagnose
1785     all such overriding definitions.
1786
1787     It should be noted that almost all of these targets support a *-local
1788     variant that is meant to supplement the automake-defined rule
1789     (See node `Extending' in the manual).  The above rule should
1790     be rewritten as
1791
1792       clean-local: my-clean-rule
1793
1794     These *-local targets have been documented since at least
1795     Automake 1.2, so you should not fear the change if you have
1796     to support multiple automake versions.
1797
1798 * Miscellaneous
1799
1800   - The Automake manual is now distributed under the terms of the GNU FDL.
1801
1802   - Targets dist-gzip, dist-bzip2, dist-tarZ, dist-zip are always defined.
1803
1804   - core dumps are no longer removed by the cleaning rules.  There are
1805     at least three reasons for this:
1806       1. These files should not be created by any build step,
1807          so their removal do not fit any of the cleaning rules.
1808          Actually, they may be precious to the developer.
1809       2. If such file is created during a build, then it's clearly a
1810          bug Automake should not hide.  Not removing the file will
1811          cause `make distcheck' to complain about its presence.
1812       3. Operating systems have different naming conventions for
1813          core dump files.  A core file on one system might be a
1814          completely legitimate data file on another system.
1815
1816   - RUNTESTFLAGS, CTAGSFLAGS, ETAGSFLAGS, JAVACFLAGS are no longer
1817     defined by Automake.  This means that any definition in the
1818     environment will be used, unless overridden in the Makefile.am or
1819     on the command line.  The old behavior, where these variables were
1820     defined empty in each Makefile, can be obtained by AC_SUBSTing or
1821     AC_ARG_VARing each variable from configure.ac.
1822
1823   - CONFIGURE_DEPENDENCIES and CONFIG_STATUS_DEPENDENCIES are now
1824     documented.  (The is not a new feature, these variables have
1825     been there since at least Automake 1.4.)
1826
1827 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1828
1829 Bugs fixed in 1.7.9:
1830 * Fix install-strip to work with nobase_ binaries.
1831 * Fix renaming of #line directives in ylwrap.
1832 * Rebuild with Autoconf 2.59.  (1.7.8 was not installable with pdksh.)
1833
1834 Bugs fixed in 1.7.8:
1835 * Remove spurious blank lines in cleaning rules introduced in 1.7.7.
1836 * Fix detection of Debian's install-info, broken since version 1.5.
1837   (Debian bug #213524).
1838 * Honor -module if it appears in AM_LDFLAGS (i.e., relax name checking)
1839   This was only done for libfoo_LDFLAGS and LDFLAGS in previous versions.
1840
1841 Bugs fixed in 1.7.7:
1842 * The implementation of automake's --no-force option is unreliable,
1843   so this option is ignored in this version.  A real fix will appear in
1844   Automake 1.8.  (Debian Bug #206299)
1845 * AM_PATH_PYTHON: really check the whole list of interpreters if no
1846   argument is given.  (PR/399)
1847 * Do not warn about leading `_' in variable names, even with -Wportability.
1848 * Support user redefinitions of TEXINFO_TEX.
1849 * depcomp: support AIX Compiler version 6.
1850 * Fix missing rebuilds during `make dist' with BSD make.
1851   (Could produce tarballs containing out-of-date files.)
1852 * Resurrect multilib support.
1853 * Noteworthy manual updates:
1854   - Extending aclocal: how to write m4 macros that won't trigger warnings
1855     with Automake 1.8.
1856   - A Shared Library: Rewrite and split into subsections.
1857
1858 Bugs fixed in 1.7.6:
1859 * Fix depcomp's icc mode for ICC 7.1.
1860 * Diagnose calls to AC_CONFIG_FILES and friends with not enough arguments.
1861 * Fix maintainer-clean's removal of autom4te.cache in VPATH builds.
1862 * Fix AM_PATH_LISPDIR to work with POSIXLY_CORRECT=1.
1863 * Fix the location reported in some diagnostics related to AUTOMAKE_OPTIONS.
1864 * Remove Latin-1 characters from elisp-comp.
1865 * Update the manual's @dircategory to match the Free Software Directory.
1866
1867 Bugs fixed in 1.7.5:
1868 * Update install-sh's license to remove an advertising clause.
1869   (Debian bug #191717)
1870 * Fix a bug introduced in 1.7.4, related to BUILT_SOURCE handling,
1871   that caused invalid Makefile.ins to be generated.
1872 * Make sure AM_MAKE_INCLUDE doesn't fail when a `doit' file exists.
1873 * New FAQ entry: renamed objects.
1874
1875 Bugs fixed in 1.7.4:
1876 * Tweak the TAGS rule to support Exuberant Ctags (in addition to
1877   the Emacs implementation)
1878 * Fix output of aclocal.m4 dependencies in subdirectories.
1879 * Use `mv -f' instead of `mv' in fastdep rules.
1880 * Upgrade mdate-sh to work on OS/2.
1881 * Don't byte-compile elisp files when ELCFILES is set empty.
1882   (this documented feature was broken by 1.7.3)
1883 * Diagnose trailing backslashes on last line of Makefile.am.
1884 * Diagnose whitespace following trailing backslashes.
1885 * Multiple tests are now correctly supported in DEJATOOL. (PR/388)
1886 * Fix rebuilt rules for AC_CONFIG_FILES([Makefile:Makefile.in:Makefile.bot])
1887   Makefiles. (PR/389)
1888 * `make install' will build `BUILT_SOURCES' first.
1889 * Minor documentation fixes.
1890
1891 Bugs fixed in 1.7.3:
1892 * Fix stamp files numbering (when using multiple AC_CONFIG_HEADERS).
1893 * Query distutils for `pythondir' and `pythonexecdir', instead of
1894   using an hardcoded path.  This should allow builds on 64-bit
1895   distributions that usually use lib64/ instead of lib/.
1896 * AM_PATH_PYTHON will also search for python2.3.
1897 * elisp files are now built all at once instead of one by one. Besides
1898   incurring a speed-up, this is required to support interdependent elisp files.
1899 * Support for DJGPP:
1900   - `make distcheck' will now work in `_inst/' and `_build' instead
1901     of `=inst/' and `=build/'
1902   - use `_dirstamp' when the file-system doesn't support `.dirstamp'
1903   - install/uninstall `*.i[0-9][0-9]'-style info files
1904   - more changes that affect only the Automake package (not its output)
1905 * Fix some incompatibilities with upcoming perl-5.10.
1906 * Properly quote AC_PACKAGE_TARNAME and AC_PACKAGE_VERSION when defining
1907   PACKAGE and VERSION.
1908 * depcomp fixes:
1909   - dashmstdout and dashXmstdout modes: don't use `-o /dev/null', this
1910     is troublesome with gcc and Solaris compilers. (PR/385)
1911   - makedepend mode: work with Libtool. (PR/385 too)
1912   - support for ICC.
1913 * better support for unusual gettext setups, such as multiple po/ directories
1914   (PR/381):
1915   - Flag missing po/ and intl/ directories as warnings, not errors.
1916   - Disable these warnings if po/ does not exist.
1917 * Noteworthy manual updates:
1918   - New FAQ chapter.
1919   - Document how AC_CONFIG_AUX_DIR interacts with missing files.
1920     (Debian Bug #39542)
1921   - Document `AM_YFLAGS = -d'.  (PR/382)
1922
1923 Bugs fixed in 1.7.2:
1924 * Fix installation and uninstallation of Info files built in subdirectories.
1925 * Do not run `./configure --with-included-gettext' during `make distcheck'
1926   if AM_GNU_GETTEXT([external]) is used.
1927 * Correctly uninstall renamed man pages.
1928 * Do not strip escaped newline in variables defined in one condition
1929   and augmented in another condition.
1930 * Fix ansi2knr rules for LIBOBJS sources.
1931 * Clean all known Texinfo index files, not only those which appear to
1932   be used, because we cannot know which indexes are used in included files.
1933   (PR/375, Debian Bug #168671)
1934 * Honor only the first @setfilename seen in a Texinfo file.
1935 * Treat "required file X not found" diagnostics as errors (exit status 1).
1936 * Don't complain that a required file is not found when it is a Makefile
1937   target. (PR/357)
1938 * Don't use single suffix inference rules when building `.info'-less
1939   Info files, for the sake of Solaris make.
1940 * The `check' target now depends on `$(BUILT_SOURCES)'. (PR/359)
1941 * Recognize multiple inference rules such as `.a.b .c.d:'. (PR/371)
1942 * Warn about multiple inference rules when -Wportability is used. (PR/372)
1943 * Fix building of deansified files from subdirectories. (PR/370)
1944 * Add missing `fi' in the .c->.obj rules.
1945 * Improve install-sh to work even when names contain spaces or certain
1946   (but not all) shell metachars.
1947 * Fix the following spurious failures in the test suite:
1948   depcomp2.test, gnits2.test, gnits3.test, python3.test, texinfo13.test
1949 * Noteworthy manual updates:
1950   - Augment the section about BUILT_SOURCES.
1951   - Mention that AM_PROG_CC_STDC is a relic that is better avoided today.
1952
1953 Bugs fixed in 1.7.1:
1954 * Honor `ansi2knr' for files built in subdirectories, or using per-targets
1955   flags.
1956 * Aclocal should now recognize macro names containing parentheses, e.g.
1957   AC_DEFUN([AC_LANG_PREPROC(Fortran 90)], [...]).
1958 * Erase *.sum and *.log files created by DejaGnu, during `make distclean'.
1959   (Debian Bug#153697)
1960 * Install Python files even if they were built.  (PR/369)
1961 * Have stamp-vti dependent upon configure instead of configure.ac, as the
1962   version might not be defined in the latter. (PR/358)
1963 * Reorder arguments passed to a couple of commands, so things works
1964   when POSIXLY_CORRECT=1.
1965 * Fix a regex that can cause Perl to segfault on large input.
1966   (Debian Bug#162583)
1967 * Fix distribution of packages that have some sources defined conditionally,
1968   as in the `Conditional compilation using Automake conditionals' example
1969   of the manual.
1970 * Fix spurious test suite failures on IRIX.
1971 * Don't report a required variable as undefined if it has been
1972   defined conditionally for the "right" conditions.
1973 * Fix cleaning of the /tmp subdirectory used by `make distcheck', in case
1974   `make distcheck' fails.
1975 * Fix distribution of included Makefile fragment, so we don't create
1976   spurious directories in the distribution. (PR/366)
1977 * Don't complain that a target lacks `.$(EXEEXT)' when it has it.
1978
1979 New in 1.7:
1980 * Autoconf 2.54 is required.
1981 * `aclocal' and `automake' will no longer warn about obsolete
1982   configure macros.  This is done by `autoconf -Wobsolete'.
1983 * AM_CONFIG_HEADER, AM_SYS_POSIX_TERMIOS and
1984   AM_HEADER_TIOCGWINSZ_NEEDS_SYS_IOCTL are obsolete (although still
1985   supported).  You should use AC_CONFIG_HEADERS, AC_SYS_POSIX_TERMIOS,
1986   and AC_HEADER_TIOCGWINSZ instead.  `autoupdate' can upgrade
1987   `configure.ac' for you.
1988 * Support for per-program and per-library `_CPPFLAGS'.
1989 * New `ctags' target (builds CTAGS files).
1990 * Support for -Wmumble and -Wno-mumble, where mumble is a warning category
1991   (see `automake --help' or the manual for a list of them).
1992 * Honor the WARNINGS environment variable.
1993 * Omit the call to depcomp when using gcc3: call the compiler directly.
1994 * A new option, std-options, tests that programs support --help and --version
1995   when `make installcheck' is run.  This is enabled by --gnits.
1996 * Texinfo rules now support the `ps' and `pdf' targets.
1997 * Info files are now created in the build directory, not the source directory.
1998 * info_TEXINFOS supports files in subdirectories (this requires Texinfo 4.1
1999   or greater).
2000 * `make distcheck' will enforce DESTDIR support by attempting
2001   a DESTDIR install.
2002 * `+=' can be used in conditionals, even if the augmented variable
2003   was defined for another condition.
2004 * Makefile fragments (inserted with `include') are always distributed.
2005 * Use Autoconf's --trace interface to inspect configure.ac and get
2006   a more accurate view of it.
2007 * Add support for extending aclocal's default macro search path
2008   using a `dirlist' file within the aclocal directory.
2009 * automake --output-dir is deprecated.
2010 * The part of the distcheck target that checks whether uninstall actually
2011   removes all installed files has been moved in a separate target,
2012   distuninstallcheck, so it can be overridden easily.
2013 * Many bug fixes.
2014
2015 New in 1.6.3:
2016 * Support for AM_INIT_GETTEXT([external])
2017 * Bug fixes, including:
2018   - Fix Automake's own `make install' so it works even if `ln' doesn't.
2019   - nobase_ programs and scripts honor --program-transform correctly.
2020   - Erase configure.lineno during `make distclean'.
2021   - Erase YACC and LEX outputs during `make maintainer-clean'.
2022
2023 New in 1.6.2:
2024 * Many bug fixes, including:
2025   - Requiring the current version works.
2026   - Fix "$@" portability issues (for Zsh).
2027   - Fix output of dummy dependency files in presence of post-processed
2028     Makefile.in's.
2029   - Don't compute dependencies in background to avoid races with libtool.
2030   - Fix handling of _OBJECTS variables for targets sharing source variables.
2031   - Check dependency mode for Java when AM_PROG_GCJ is used.
2032
2033 New in 1.6.1:
2034 * automake --output-dir is deprecated
2035 * Many bug fixes, including:
2036   - Don't choke on AM_LDFLAGS definitions.
2037   - Clean libtool objects from subdirectories.
2038   - Allow configure variables with reserved suffix and unknown prefix
2039     (e.g. AC_SUBST(mumble_LDFLAGS) when 'mumble' is not a target).
2040   - Fix the definition of AUTOMAKE and ACLOCAL in configure.
2041
2042 New in 1.6:
2043 * Autoconf 2.52 is required.
2044 * automake no longer run libtoolize.
2045   This is the job of autoreconf (from GNU Autoconf).
2046 * `dist' generates all the archive flavors, as did `dist-all'.
2047 * `dist-gzip' generates the Gzip tar file only.
2048 * Combining Automake Makefile conditionals no longer lead to a combinatorial
2049   explosion.  Makefile.in's keep a reasonable size.
2050 * AM_FUNC_ERROR_AT_LINE, AM_FUNC_STRTOD, AM_FUNC_OBSTACK, AM_PTRDIFF_T
2051   are no longer shipped, since Autoconf 2.52 provides them (both as AM_
2052   and AC_).
2053 * `#line' of Lex and Yacc files are properly set.
2054 * EXTRA_DIST can contain generated directories.
2055 * Support for dot-less extensions in suffix rules.
2056 * The part of the distcheck target that checks whether distclean actually
2057   cleans all built files has been moved in a separate target, distcleancheck,
2058   so it can be overridden easily.
2059 * `make distcheck' will pass additional options defined in
2060   $(DISTCHECK_CONFIGURE_FLAGS) to configure.
2061 * Fixed CDPATH portability problems, in particular for MacOS X.
2062 * Fixed handling of nobase_ targets.
2063 * Fixed support of implicit rules leading to .lo objects.
2064 * Fixed late inclusion of --add-missing files (e.g. depcomp) in DIST_COMMON
2065 * Added uninstall-hook target
2066 * `AC_INIT AM_INIT_AUTOMAKE(tarname,version)' is an obsolete construct.
2067   You can now use `AC_INIT(pkgname,version) AM_INIT_AUTOMAKE' instead.
2068   (Note that "pkgname" is not "tarname", see the manual for details.)
2069   It is also possible to pass a list of global Automake options as
2070   first argument to this new form of AM_INIT_AUTOMAKE.
2071 * Compiler-based assembler is now called `CCAS'; people expected `AS'
2072   to be a real assembler.
2073 * AM_INIT_AUTOMAKE will set STRIP itself when it needs it.  Adding
2074   AC_CHECK_TOOL([STRIP], [strip]) manually is no longer required.
2075 * aclocal and automake are also installed with the version number
2076   appended, and some of the install directory names have changed.
2077   This lets you have multiple versions installed simultaneously.
2078 * Support for parsers and lexers in subdirectories.
2079
2080 New in 1.5:
2081 * Support for `configure.ac'.
2082 * Support for `else COND', `endif COND' and negated conditions `!COND'.
2083 * `make dist-all' is much faster.
2084 * Allows '@' AC_SUBSTs in macro names.
2085 * Faster AM_INIT_AUTOMAKE (requires update of `missing' script)
2086 * User-side dependency tracking.  Developers no longer need GNU make
2087 * Python support
2088 * Uses DIST_SUBDIRS in some situations when SUBDIRS is conditional
2089 * Most files are correctly handled if they appear in subdirs
2090   For instance, a _DATA file can appear in a subdir
2091 * GNU tar is no longer required for `make dist'
2092 * Added support for `dist_' and `nodist_' prefixes
2093 * Added support for `nobase_' prefix
2094 * Compiled Java support
2095 * Support for per-executable and per-library compilation flags
2096 * Many bug fixes
2097
2098 New in 1.4:
2099 * Added support for the Fortran 77 programming language.
2100 * Re-indexed the Automake Texinfo manual.
2101 * Added `AM_FOOFLAGS' variable for each compiler invocation;
2102   e.g. AM_CFLAGS can be used in Makefile.am to set C compiler flags
2103 * Support for latest autoconf, including support for objext
2104 * Can now put `.' in SUBDIRS to control build order
2105 * `include' command and `+=' support for macro assignment
2106 * Dependency tracking no long susceptible to deleted header file problem
2107 * Maintainer mode now a conditional.  @MAINT@ is now an anachronism.
2108 * Bug fixes
2109
2110 New in 1.3:
2111 * Bug fixes
2112 * Better Cygwin32 support
2113 * Support for suffix rules with _SOURCES variables
2114 * New options `readme-alpha' and `check-news'; Gnits mode sets these
2115 * @LEXLIB@ no longer required when lex source seen
2116   Lex support in `missing', and new lex macro.  Update your missing script.
2117 * Built-in support for assembly
2118 * aclocal gives error if `AM_' macro not found
2119 * Passed YFLAGS, not YACCFLAGS, to yacc
2120 * AM_PROG_CC_STDC does not have to come before AC_PROG_CPP
2121 * Dependencies computed as a side effect of compilation
2122 * Preliminary support for Java
2123 * DESTDIR support at "make install" time
2124 * Improved ansi2knr support; you must use the latest ansi2knr.c (included)
2125
2126 New in 1.2:
2127 * Bug fixes
2128 * Better DejaGnu support
2129 * Added no-installinfo option
2130 * Added Emacs Lisp support
2131 * Added --no-force option
2132 * Included `aclocal' program
2133 * Automake will now generate rules to regenerate aclocal.m4, if appropriate
2134 * Now uses `AM_' macro names everywhere
2135 * ansi2knr option can have directory prefix (eg `../lib/ansi2knr')
2136   ansi2knr now works correctly on K&R sources
2137 * Better C++, yacc, lex support
2138 * Will compute _DEPENDENCIES variables automatically if not supplied
2139 * Will interpolate $(...) and ${...} when examining contents of a variable
2140 * .deps files now in build directory, not source directory; dependency
2141   handling generally rewritten
2142 * DATA, MANS and BUILT_SOURCES no longer included in distribution
2143 * can now put config.h into a subdir
2144 * Added dist-all target
2145 * Support for install-info program (see texinfo 3.9)
2146 * Support for "yacc -d"
2147 * configure substitutions are automatically discovered and included
2148   in generated Makefile.in
2149 * Special --cygnus mode
2150 * OMIT_DEPENDENCIES can now hold list of dependencies to be omitted
2151   when making distribution.  Some dependencies are auto-ignored.
2152 * Changed how libraries are specified in _LIBRARIES variable
2153 * Full libtool support, from Gord Matzigkeit
2154 * No longer have to explicitly touch stamp-h when using AC_CONFIG_HEADER;
2155   AM_CONFIG_HEADER handles it automatically
2156 * Texinfo output files no longer need .info extension
2157 * Added `missing' support
2158 * Cygwin32 support
2159 * Conditionals in Makefile.am, from Ian Taylor
2160
2161 New in 1.0:
2162 * Bug fixes
2163 * distcheck target runs install and installcheck targets
2164 * Added preliminary support for DejaGnu.
2165
2166 New in 0.33:
2167 * More bug fixes
2168 * More checking
2169 * More libtool fixes from Gord Matzigkeit; libtool support is still
2170   preliminary however
2171 * Added support for jm_MAINTAINER_MODE
2172 * dist-zip support
2173 * New "distcheck" target
2174
2175 New in 0.32:
2176 * Many bug fixes
2177 * mkinstalldirs and mdate-sh now appear in directory specified by
2178   AC_CONFIG_AUX_DIR.
2179 * Removed DIST_SUBDIRS, DIST_OTHER
2180 * AC_ARG_PROGRAM only required when an actual program exists
2181 * dist-hook target now run before distribution packaged up; idea from
2182   Dieter Baron.  Other hooks exist, too.
2183 * Preliminary (unfinished) support for libtool
2184 * Added short option names.
2185 * Better "dist" support when gluing together multiple packages
2186
2187 New in 0.31:
2188 * Bug fixes
2189 * Documentation updates (many from François Pinard)
2190 * strictness `normal' now renamed to `foreign'
2191 * Renamed --install-missing to --add-missing
2192 * Now handles AC_CONFIG_AUX_DIR
2193 * Now handles TESTS macro
2194 * DIST_OTHER renamed to EXTRA_DIST
2195 * DIST_SUBDIRS is deprecated
2196 * @ALLOCA@ and @LIBOBJS@ now work in _LDADD variables
2197 * Better error messages in many cases
2198 * Program names are canonicalized
2199 * Added "check" prefix; from Gord Matzigkeit
2200
2201 New in 0.30:
2202 * Bug fixes
2203 * configure.in scanner knows about AC_PATH_XTRA, AC_OUTPUT ":" syntax
2204 * Beginnings of a test suite
2205 * Automatically adds -I options for $(srcdir), ".", and path to config.h
2206 * Doesn't print anything when running
2207 * Beginnings of MAINT_CHARSET support
2208 * Can specify version in AUTOMAKE_OPTIONS
2209 * Most errors recognizable by Emacs' M-x next-error
2210 * Added --verbose option
2211 * All "primary" variables now obsolete; use EXTRA_PRIMARY to supply
2212   configure-generated names
2213 * Required macros now distributed in aclocal.m4
2214 * New documentation
2215 * --strictness=gnu is default
2216
2217 New in 0.29:
2218 * Many bug fixes
2219 * More sophisticated configure.in scanning; now understands ALLOCA and
2220   LIBOBJS directly, handles AC_CONFIG_HEADER more precisely, etc.
2221 * TEXINFOS and MANS now obsolete; use info_TEXINFOS and man_MANS instead.
2222 * CONFIG_HEADER variable now obsolete
2223 * Can handle multiple Texinfo sources
2224 * Allow hierarchies deeper than 2.  From Gord Matzigkeit.
2225 * HEADERS variable no longer needed; now can put .h files directly into
2226   foo_SOURCES variable.
2227 * Automake automatically rebuilds files listed in AC_OUTPUT.  The
2228   corresponding ".in" files are included in the distribution.
2229
2230 New in 0.28:
2231 * Added --gnu and --gnits options
2232 * More standards checking
2233 * Bug fixes
2234 * Cleaned up 'dist' targets
2235 * Added AUTOMAKE_OPTIONS variable and several options
2236 * Now scans configure.in to get some information (preliminary)
2237
2238 New in 0.27:
2239 * Works with Perl 4 again
2240
2241 New in 0.26:
2242 * Added --install-missing option.
2243 * Pretty-prints generated macros and rules
2244 * Comments in Makefile.am are placed more intelligently in Makefile.in
2245 * Generates .PHONY target
2246 * Rule or macro in Makefile.am now overrides contents of Automake file
2247 * Substantial cleanups from François Pinard
2248
2249 New in 0.25:
2250 * Bug fixes.
2251 * Works with Perl 4 again.
2252
2253 New in 0.24:
2254 * New uniform naming scheme.
2255 * --strictness option
2256 * Works with Perl 5
2257 * '.c' files corresponding to '.y' or '.l' files are automatically
2258   distributed.
2259 * Many bug fixes and cleanups
2260
2261 New in 0.23:
2262 * Allow objects to be conditionally included in libraries via lib_LIBADD.
2263
2264 New in 0.22:
2265 * Bug fixes in 'clean' code.
2266 * Now generates 'installdirs' target.
2267 * man page installation reworked.
2268 * 'make dist' no longer re-creates all Makefile.in's.
2269
2270 New in 0.21:
2271 * Reimplemented in Perl
2272 * Added --amdir option (for debugging)
2273 * Texinfo support cleaned up.
2274 * Automatic de-ANSI-fication cleaned up.
2275 * Cleaned up 'clean' targets.
2276
2277 New in 0.20:
2278 * Automatic dependency tracking
2279 * More documentation
2280 * New variables DATA and PACKAGEDATA
2281 * SCRIPTS installed using $(INSTALL_SCRIPT)
2282 * No longer uses double-colon rules
2283 * Bug fixes
2284 * Changes in advance of internationalization
2285
2286 -----
2287
2288 Copyright (C) 1995-2012 Free Software Foundation, Inc.
2289
2290 This program is free software; you can redistribute it and/or modify
2291 it under the terms of the GNU General Public License as published by
2292 the Free Software Foundation; either version 2, or (at your option)
2293 any later version.
2294
2295 This program is distributed in the hope that it will be useful,
2296 but WITHOUT ANY WARRANTY; without even the implied warranty of
2297 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
2298 GNU General Public License for more details.
2299
2300 You should have received a copy of the GNU General Public License
2301 along with this program.  If not, see <http://www.gnu.org/licenses/>.