refactor: silent rules handling (a little)
[platform/upstream/automake.git] / NEWS
diff --git a/NEWS b/NEWS
index d4de72b..cf45836 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,21 @@
+New in 1.12.2:
+
 * WARNING: Future backward-incompatibilities!
 
+  - Future versions of Automake will likely drop support for the
+    long-deprecated 'configure.in' name for the Autoconf input file.
+    You are advised to use the recommended name 'configure.ac' instead.
+
+  - Autoconf 2.65 or later will be required by the next major Automake
+    version (1.13).  Until now, Automake has required Autoconf version
+    2.62 or later.
+
+  - Starting from the next major Automake version (1.13), the rules to
+    build pdf, ps and dvi output from Texinfo input will use the '--tidy'
+    option by default.  Since such an option was introduced in Texinfo
+    4.9, this means that Makefiles generated by future Automake versions
+    will require at least that version of Texinfo.
+
   - Starting from the next major Automake version (1.13), the parallel
     testsuite harness (previously only enabled by the 'parallel-tests'
     option) will become the default one; the older serial testsuite
     AM_INIT_AUTOMAKE macro will be deprecated in the next minor version
     of Automake (1.12.1) and removed in the next major version (1.13).
 
-  - The long-obsolete (since 1.10) automake-provided $(mkdir_p) make
-    variable, @mkdir_p@ substitution and AM_PROG_MKDIR m4 macro will
-    all be deprecated in the next minor version of Automake (1.12.1)
-    and removed in the next major version (1.13).
-
   - The '--acdir' option of aclocal is deprecated, and will probably
     be removed in the next major Automake release (1.13).  You should
     use the options '--automake-acdir' and '--system-acdir' instead
     search path are looked up is probably going to be changed in the
     next Automake release (1.13).
 
-New in 1.11a:
+* Warnings and deprecations:
+
+  - Automake now issues a warning (in the 'portability' category) if
+    'configure.in' is used instead of 'configure.ac' as the Autoconf
+    input file.  Such a warning will also be present in the next
+    Autoconf version (2.70).
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+New in 1.12.1:
+
+* New supported languages:
+
+  - Support for Objective C++ has been added; it should work similarly to
+    the support for Objective C.
+
+* Deprecated obsolescent features:
+
+  - Use of the long-deprecated two- and three-arguments invocation forms
+    of the AM_INIT_AUTOMAKE macro now elicits a warning in the 'obsolete'
+    category.  Starting from the next major Automake release (1.13), such
+    usages won't be allowed anymore.
+
+  - Support for the "Cygnus-style" trees (enabled by the 'cygnus' option) is
+    now deprecated (its use triggers a warning in the 'obsolete' category).
+    It will be removed in the next major Automake release (1.13).
+
+  - The long-obsolete (since 1.10) automake-provided $(mkdir_p) make
+    variable, @mkdir_p@ configure-time substitution and AM_PROG_MKDIR
+    m4 macro are deprecated, eliciting a warning in the 'obsolete'
+    category.  They will be removed in the next major version (1.13).
+
+* Miscellaneous changes:
+
+  - The Automake test cases now require a proper POSIX-conforming shell.
+    Older non-POSIX Bourne shells (like Solaris 10 /bin/sh) won't be
+    accepted anymore.  In most cases, the user shouldn't have to specify
+    such POSIX shell explicitly, since it will be looked up at configure
+    time.  Still, when this lookup fails, or when the user wants to
+    override its conclusion, the variable 'AM_TEST_RUNNER_SHELL' can be
+    used (pointing to the shell that will be used to run the Automake
+    test cases).
+
+Bugs fixed in 1.12.1:
+
+* Bugs introduced by 1.12:
+
+  - Several weaknesses in Automake's own build system and test suite
+    have been fixed.
+
+* Bugs introduced by 1.11.3:
+
+  - When given non-option arguments, aclocal rejects them, instead of
+    silently ignoring them.
+
+* Long-standing bugs:
+
+  - When the 'color-tests' option is in use, forcing of colored testsuite
+    output through "AM_COLOR_TESTS=always" works even if the terminal is
+    a non-ANSI one, i.e., if the TERM environment variable has a value of
+    "dumb".
+
+  - Several inefficiencies and poor performances in the implementation
+    of the parallel-tests 'check' and 'recheck' targets have been fixed.
+
+  - The post-processing of output "#line" directives done the ylwrap
+    script is more faithful w.r.t. files in a subdirectory; for example,
+    if the processed file is "src/grammar.y", ylwrap will correctly
+    produce directives like:
+        #line 7 "src/grammar.y"
+    rather than like
+        #line 7 "grammar.y"
+    as it did before.
+
+* Bugs with new Perl versions:
+
+  - Aclocal works correctly with perl 5.16.0 (automake bug#11543).
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+New in 1.12:
 
 * Obsolete features removed:
 
+  - The never documented nor truly used script 'acinstall' has been
+    removed.
+
   - Support for automatic de-ANSI-fication has been removed.
 
   - The support for the "obscure" multilib feature has been removed
@@ -79,6 +173,10 @@ New in 1.11a:
     testsuite harness.  This is still the default at the moment, but it
     might change in future versions.
 
+  - The 'recheck' target (provided by the parallel testsuite harness) now
+    depends on the 'all' target.  This allows for a better user-experience
+    in test-driven development.  See automake bug#11252.
+
   - Test scripts that exit with status 99 to signal an "hard error" (e.g.,
     and unexpected or internal error, or a failure to set up the test case
     scenario) have their outcome reported as an 'ERROR' now.  Previous
@@ -131,7 +229,7 @@ New in 1.11a:
             $(SHELL) $$1; \
           fi; \
         }
-      LOG_COMPILER = run_with_per_or_shell
+      LOG_COMPILER = run_with_perl_or_shell
 
   - The package authors can now use customary testsuite drivers within
     the framework provided by the 'parallel-tests' testsuite harness.
@@ -165,6 +263,12 @@ New in 1.11a:
 
 * Miscellaneous changes:
 
+  - The AM_PROG_VALAC macro now causes configure to exit with status 77,
+    rather than 1, if the vala compiler found is too old.
+
+  - The build system of Automake itself now avoids the use of make
+    recursion as much as possible.
+
   - Automake now prefers to quote 'like this' or "like this", rather
     than `like this', in diagnostic message and generated Makefiles,
     to accommodate the new GNU Coding Standards recommendations.
@@ -174,6 +278,11 @@ New in 1.11a:
 
   - The 'dist' and 'dist-all' targets now can run compressors in parallel.
 
+  - The rules to create pdf, dvi and ps output from Texinfo files now
+    works better with modern 'texi2dvi' script, by explicitly passing
+    it the '--clean' option to ensure stray auxiliary files are not
+    left to clutter the build directory.
+
   - Automake can now generate silenced rules for texinfo outputs.
 
   - Some auxiliary files that are automatically distributed by Automake
@@ -192,26 +301,11 @@ New in 1.11a:
     avoid time stamp issues with makefile rules rerunning autotools
     programs.
 
-  - For programs and libraries, automake now detect EXTRA_foo_DEPENDENCIES
-    and adds them to the normal list of dependencies, but without
-    overwriting the foo_DEPENDENCIES variable, which is normally computed
-    by automake.
-
   - The warnings in the category 'extra-portability' are now enabled by
     '-Wall'.  In previous versions, one has to use '-Wextra-portability'
     to enable them.
 
-  - The 'ar-lib' script now ignores the "s" (symbol index) and "S" (no
-    symbol index) modifiers as well as the "s" action, as the symbol index
-    is created unconditionally by Microsoft lib.  Also, the "q" (quick)
-    action is now a synonym for "r" (replace).  Also, the script has been
-    ignoring the "v" (verbose) modifier already since Automake 1.11.3.
-
-  - When the 'compile' script is used to wrap MSVC, it now accepts an
-    optional space between the -I, -L and -l options and their respective
-    arguments, for better POSIX compliance.
-
-Bugs fixed in 1.11a:
+Bugs fixed in 1.12:
 
   - Various minor bugfixes for recent or long-standing bugs.
 
@@ -230,6 +324,9 @@ Bugs fixed in 1.11a:
 
   - Automake's own build system finally have a real "installcheck" target.
 
+  - Vala-related cleanup rules are now more complete, and work better in
+    a VPATH setup.
+
   - Files listed with the AC_REQUIRE_AUX_FILE macro in configure.ac are
     now automatically distributed also if the directory of the auxiliary
     files coincides with the top-level directory.
@@ -254,15 +351,78 @@ Bugs fixed in 1.11a:
 
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-New in 1.11.3:
+Bugs fixed in 1.11.5:
 
-* WARNING: Future backward-incompatibilities!
+* Bugs introduced by 1.11.3:
 
-  - The obsolescent AM_WITH_REGEX  macro has been deprecated, since the
-    GNU rx library has been decommissioned.
+  - Vala files with '.vapi' extension are now recognized and handled
+    correctly again.  See automake bug#11222.
+
+  - Vala support work again for projects that contain some program
+    built from '.vala' (and possibly '.c') sources and some other
+    program built from '.c' sources *only*.  See automake bug#11229.
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-  - The `lzma' compression format for distribution archives has been
-    deprecated in favor of `xz' and `lzip'.
+New in 1.11.4:
+
+* Miscellaneous changes:
+
+  - The 'ar-lib' script now ignores the "s" (symbol index) and "S" (no
+    symbol index) modifiers as well as the "s" action, as the symbol index
+    is created unconditionally by Microsoft lib.  Also, the "q" (quick)
+    action is now a synonym for "r" (replace).  Also, the script has been
+    ignoring the "v" (verbose) modifier already since Automake 1.11.3.
+
+  - When the 'compile' script is used to wrap MSVC, it now accepts an
+    optional space between the -I, -L and -l options and their respective
+    arguments, for better POSIX compliance.
+
+  - There is an initial, experimental support for automatic dependency
+    tracking with tcc (the Tiny C Compiler).  Its associated depmode is
+    currently recognized as "icc" (but this and other details are likely
+    to change in future versions).
+
+  - Automatic dependency tracking now works also with the IBM XL C/C++
+    compilers, thanks to the new new depmode 'xlc'.
+
+Bugs fixed in 1.11.4:
+
+* Bugs introduced by 1.11.2:
+
+  - A definition of 'noinst_PYTHON' before 'python_PYTHON' (or similar)
+    don't cause spurious failures upon "make install" anymore.
+
+  - The user can now instruct the 'uninstall-info' rule not to update
+    the '${infodir}/dir' file by exporting the environment variable
+    'AM_UPDATE_INFO_DIR' to the value "no".  This is done for consistency
+    with how the 'install-info' rule operates since automake 1.11.2.
+
+* Long-standing bugs:
+
+  - It is now possible for a foo_SOURCES variable to hold Vala sources
+    together with C header files, as well as with sources and headers for
+    other supported languages (e.g., C++).  Previously, only mixing C and
+    Vala sources was supported.
+
+  - If "aclocal --install" is used, and the first directory specified with
+    '-I' is non-existent, aclocal will now create it before trying to copy
+    files in it.
+
+  - An empty declaration of a "foo_PRIMARY" don't cause anymore the
+    generated install rules to create an empty $(foodir) directory;
+    for example, if Makefile.am contains something like:
+
+      pkglibexec_SCRIPTS =
+      if FALSE
+      pkglibexec_SCRIPTS += bar.sh
+      endif
+
+    the $(pkglibexec) directory will not be created upon "make install".
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+New in 1.11.3:
 
 * Miscellaneous changes:
 
@@ -293,8 +453,22 @@ New in 1.11.3:
   - The last relics of Python 1.5 support have been removed from the
     AM_PATH_PYTHON macro.
 
+  - For programs and libraries, automake now detects EXTRA_foo_DEPENDENCIES
+    and adds them to the normal list of dependencies, but without
+    overwriting the foo_DEPENDENCIES variable, which is normally computed
+    by automake.
+
 Bugs fixed in 1.11.3:
 
+* Bugs introduced by 1.11.2:
+
+  - Automake now correctly recognizes the prefix/primary combination
+   `pkglibexec_SCRIPTS' as valid.
+
+  - The parallel-tests harness doesn't trip anymore on sed implementations
+    with stricter limits on the length of input lines (problem seen at
+    least on Solaris 8).
+
 * Long-standing bugs:
 
   - The "deleted header file problem" for *.am files is avoided by stub
@@ -327,7 +501,8 @@ New in 1.11.2:
 * Miscellaneous changes:
 
   - The Automake support for automatic de-ANSI-fication has been
-    deprecated.
+    deprecated.  It will probably be removed in the next major Automake
+    release (1.12).
 
   - The `lzma' compression scheme and associated automake option `dist-lzma'
     is obsoleted by `xz' and `dist-xz' due to upstream changes.
@@ -368,11 +543,6 @@ New in 1.11.2:
 
 Bugs fixed in 1.11.2:
 
-* Bugs introduced by 1.11.2:
-
-  - Automake now correctly recognizes the prefix/primary combination
-   `pkglibexec_SCRIPTS' as valid.
-
 * Bugs introduced by 1.11:
 
   - The parallel-tests driver no longer produces erroneous results with