diff options
Diffstat (limited to 'NEWS')
-rw-r--r-- | NEWS | 147 |
1 files changed, 82 insertions, 65 deletions
@@ -1,45 +1,3 @@ -* WARNING: New versioning scheme for Automake. - - - Beginning with the release 1.13.2, Automake has started to use a - more rational versioning scheme, that should allow users to know - which kind of changes can be expected from a new version, based - on its version number. - - + Micro releases (e.g., 1.13.3, 2.0.1, 3.2.8) introduce only bug - and regression fixes and documentation updates; they should not - introduce new features, nor any backward-incompatibility (any - such incompatibility would be considered a bug, to be fixed with - a further micro release). - - + Minor releases (e.g., 1.14, 2.1) can introduce new backward - compatible features; the only backward-incompatibilities allowed - in such a release are new *non-fatal* deprecations and warnings, - and possibly fixes for old or non-trivial bugs (or even inefficient - behaviours) that could unfortunately have been seen and used by - some as "corner case features". Possible disruptions caused by - this kind of fixes should hopefully be quite rare, and their - effects limited in scope. - - + Major versions (now expected to be released every 18 or 24 months, - and not more often) can introduce new big features (possibly with - rough edges and not-fully-stabilized APIs), removal of deprecated - features, backward-incompatible changes of behaviour, and possibly - major refactorings (that, while ideally transparent to the user, - could introduce new bugs). Incompatibilities should however not - be introduced gratuitously and abruptly; a proper deprecation path - should be duly implemented in the preceding minor releases. - - - According to this new scheme, the next major version of Automake - (the one that had previously been labelled as "1.14") will actually - become "Automake 2.0". Automake 1.14 has already been released as - the last minor release, and the present one is a bug-fixing release - following up on that one. - - - See discussion about automake bug#13578 for more details and - background: <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=13578> - -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - * WARNING: Future backward-incompatibilities! - Makefile recipes generated by Automake 2.0 will expect to use an @@ -77,8 +35,8 @@ with the SGI C/C++ compilers on IRIX. The SGI depmode has been reported broken "in the wild" already, and we don't think investing time in debugging and fixing is worthwhile, especially considering - that SGI has last updated those compilers in 2006, and is expected - to retire support for them in December 2013: + that SGI has last updated those compilers in 2006, and retired + support for them in December 2013: <http://www.sgi.com/services/support/irix_mips_support.html> - Automake 2.0 will remove support for MS-DOS and Windows 95/98/ME @@ -104,31 +62,45 @@ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -New in 1.14.2: +New in 1.15: -* Bugs fixed: +* Improvements and refactorings in the install-sh script: - - The expansion of AM_INIT_AUTOMAKE ends once again with a trailing - newline (bug#16841). Regression introduced in Automake 1.14. + - It has been modernized, and now makes the following assumptions + *unconditionally*: + (1) a working 'dirname' program is available; + (2) the ${var:-value} shell parameters substitution works; + (3) the "set -f" and "set +f" shell commands work, and, respectively, + disable and enable shell globbing. - - The code used to detect whether the currently used make is GNU make - or not (relying on the private macro 'am__is_gnu_make') no longer - risks causing "Arg list too long" for projects using automatic - dependency tracking and having a ton of source files (bug#18744). + - The script implements stricter error checking, and now it complains + and bails out if any of the following expectations is not met: + (1) the options -d and -t are never used together; + (2) the argument passed to option -t is a directory; + (3) if there are two or more SOURCEFILE arguments, the + DESTINATION argument must be a directory. - - Automake tries to offer a more deterministic output for generated - Makefiles, in the face of the newly-introduced randomization for - hash keys order in Perl 5.18. +* Automake-generated testsuites: - - In older Automake versions, if a user defined one single Makefile - fragment (say 'foo.am') to be included (via Automake includes) in - his main Makefile.am, and defined a custom make rule to generate that - file from other data, Automake used to spuriously complain about with - something like "... overrides Automake target '$(srcdir)/foo.am". - This bug is now fixed. + - The default test-driver used by the Automake-generates testsuites + now appends the result and exit status of each "plain" test to the + associated log file (automake bug#11814). + + - The perl implementation of the TAP testsuite driver is no longer + installed in the Automake's scripts directory, and is instead just + distributed as a "contrib" addition. There should be no reason to + use this implementation anyway in real packages, since the awk+shell + implementation of the TAP driver (which is documented in the manual) + is more portable and has feature parity with the perl implementation. + + - The rule generating 'test-suite.log' no longer risk incurring in an + extra useless "make all" recursive invocation in some corner cases + (automake bug#16302). + +* Distribution: - Automake bug#18286: "make distcheck" could sometimes fail to detect - missing files in the distribution tarball, especially in those cases + files missing from the distribution tarball, especially in those cases where both the generated files and their dependencies are explicitly in $(srcdir). An important example of this are *generated* makefile fragments included at Automake time in Makefile.am; e.g.: @@ -143,6 +115,51 @@ New in 1.14.2: tarball, "make distcheck" would have erroneously succeeded! This issue is now fixed. + - As a consequence of the previous change, "make distcheck" will run + using '$(distdir)/_build/sub' as the build directory, rather than + simply '$(distdir)/_build' (as it was the case for Automake 1.14 and + earlier). Consequently, the './configure' and 'make' invocations + issued by the distcheck recipe now have $(srcdir) equal to '../..', + rather than to just '..'. Dependent and similar variables (e.g., + '$(top_srcdir)') are also changed accordingly. + + Thus, Makefiles that made assumptions about the exact values of the + build and source directories used by "make distcheck" will have to + be adjusted. Notice that making such assumptions was a bad and + unsupported practice anyway, since the exact locations of those + directories should be considered implementation details, and we + reserve the right to change them at any time. + +* Miscellaneous bugs fixed: + + - The expansion of AM_INIT_AUTOMAKE ends once again with a trailing + newline (bug#16841). Regression introduced in Automake 1.14. + + - We no longer risk to use '$ac_aux_dir' before it's defined (see + automake bug#15981). Bug introduced in Automake 1.14. + + - The code used to detect whether the currently used make is GNU make + or not (relying on the private macro 'am__is_gnu_make') no longer + risks causing "Arg list too long" for projects using automatic + dependency tracking and having a ton of source files (bug#18744). + + - Automake tries to offer a more deterministic output for generated + Makefiles, in the face of the newly-introduced randomization for + hash keys order in Perl 5.18. + + - In older Automake versions, if a user defined one single Makefile + fragment (say 'foo.am') to be included via Automake includes in + his main Makefile.am, and defined a custom make rule to generate that + file from other data, Automake used to spuriously complain with some + message like "... overrides Automake target '$(srcdir)/foo.am". + This bug is now fixed. + + - The user can now extend the special .PRECIOUS target, the same way + he could already do with the .MAKE .and .PHONY targets. + + - Some confusing typos have been fixed in the manual and in few warning + messages (automake bug#16827 and bug#16997). + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ New in 1.14.1: @@ -249,8 +266,8 @@ New in 1.14: Now that we have the 'info-in-builddir' option that explicitly causes generated '.info' files to be placed in the builddir, this hack should - be longer necessary, so we deprecate it with runtime warnings. It will - likely be removed altogether in Automake 2.0. + be longer necessary, so we deprecate it with runtime warnings. + It will be removed altogether in Automake 2.0. * Relative directory in Makefile fragments: @@ -2898,7 +2915,7 @@ New in 0.20: ----- -Copyright (C) 1995-2013 Free Software Foundation, Inc. +Copyright (C) 1995-2014 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by |