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