New in 1.15:
* Improvements and refactorings in the install-sh script:
- 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 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-generated testsuites:
- 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
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.:
...
$(srcdir)/fragment.am: $(srcdir)/data.txt $(srcdir)/preproc.sh
cd $(srcdir) && $(SHELL) preproc.sh <data.txt >fragment.am
include $(srcdir)/fragment.am
...
If the use forgot to add data.txt and/or preproc.sh in the distribution
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).
- Remove automake-fix-ac_aux_dir-used-before-initialized.patch as the
change is incorporated now.
- Refresh automake-SuSE.patch and automake-require_file.patch so that
they apply cleanly.
OBS-URL: https://build.opensuse.org/package/show/devel:tools:building/automake?expand=0&rev=46
- Fix a minor regression introduced in Automake 1.13.3: when two or more
user-defined suffix rules were present in a single Makefile.am,
automake would needlessly include definition of some make variables
related to C compilation in the generated Makefile.in (bug#14560).
- Patches updated to they apply cleanly and with no offset.
- Update to 1.13.4:
- Fix a minor regression introduced in Automake 1.13.3: when two or more
user-defined suffix rules were present in a single Makefile.am,
automake would needlessly include definition of some make variables
related to C compilation in the generated Makefile.in (bug#14560).
OBS-URL: https://build.opensuse.org/package/show/devel:tools:building/automake?expand=0&rev=35
* Documentation fixes:
- The documentation no longer mistakenly reports that the
obsolete 'AM_MKDIR_PROG_P' macro and '$(mkdir_p)' make variable
are going to be removed in Automake 2.0.
* Bugs fixed:
- Byte-compilation of Emacs lisp files could fail spuriously on
Solaris, when /bin/ksh or /usr/xpg4/bin/sh were used as shell.
- If the same user-defined suffixes were transformed into
different Automake-known suffixes in different Makefile.am
files in the same project, automake could get confused and
generate inconsistent Makefiles (automake bug#14441).
For example, if 'Makefile.am' contained a ".ext.cc:" suffix
rule, and 'sub/Makefile.am' contained a ".ext.c:" suffix rule,
automake would have mistakenly placed into 'Makefile.in' rules
to compile "*.c" files into object files, and into
'sub/Makefile.in' rules to compile "*.cc" files into object
files --- rather than the other way around. This is now fixed.
- Several spurious failures have been fixed (they hit especially
MinGW/MSYS builds). See automake bugs #14493, #14494, #14495,
#14498, #14499, #14500, #14501, #14517 and #14528.
- Some other minor miscellaneous changes and fixlets.
OBS-URL: https://build.opensuse.org/package/show/devel:tools:building/automake?expand=0&rev=34
in the package documentation):
* Obsolescent features:
- Use of suffix-less info files (that can be specified through the
'@setfilename' macro in Texinfo input files) is discouraged, and
its use will raise warnings in the 'obsolete' category.
- Use of Texinfo input files with '.txi' or '.texinfo' extensions
is discouraged, and its use will raise warnings in the 'obsolete'
category. You are advised to simply use the '.texi' extension
instead.
* Documentation fixes:
- The long-deprecated but still supported two-arguments invocation form
of AM_INIT_AUTOMAKE is documented once again.
* Bugs fixed:
- When the 'ustar' option is used, the generated configure script no
longer risks hanging during the tests for the availability of the
'pax' utility, even if the user running configure has a UID or GID
that requires more than 21 bits to be represented.
- The obsolete macros AM_CONFIG_HEADER or AM_PROG_CC_STDC work once
again, as they did in Automake 1.12.x (albeit printing runtime
warnings in the 'obsolete' category).
- aclocal will no longer error out if the first local m4 directory
(as specified by the '-I' option or the 'AC_CONFIG_MACRO_DIRS' or
'AC_CONFIG_MACRO_DIR' macros) doesn't exist; it will merely report
a warning in the 'unsupported' category.
- aclocal will no longer consider directories for extra m4 files more
than once, even if they are specified multiple times.
- Analysis of make flags in Automake-generated rules has been made more
robust, and more future-proof.
- Adapt automake-SUSE.patch to the changed sources.
OBS-URL: https://build.opensuse.org/package/show/devel:tools:building/automake?expand=0&rev=30