From: Peter Rosin Date: Tue, 24 Nov 2015 11:39:59 +0000 (+0100) Subject: Merge branch 'micro' into minor X-Git-Tag: v1.16~41^2 X-Git-Url: http://git.ipfire.org/gitweb/gitweb.cgi?a=commitdiff_plain;h=46fd67c9720ee15a37357cea5190b77f3053cac4;p=thirdparty%2Fautomake.git Merge branch 'micro' into minor * micro: compile: add icl to compile wrapper script Signed-off-by: Peter Rosin --- 46fd67c9720ee15a37357cea5190b77f3053cac4 diff --cc NEWS index 9f76c1f63,661bf80bc..af904d442 --- a/NEWS +++ b/NEWS @@@ -62,49 -62,16 +62,59 @@@ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +New in 1.16: + +* Bugs fixed: + + - Automatic dependency tracking has been fixed to work also when the + 'subdir-object' option is used and some 'foo_SOURCES' definition + contains unexpanded references to make variables, as in, e.g.: + + a_src = sources/libs/aaa + b_src = sources/bbb + foo_SOURCES = $(a_src)/bar.c $(b_src)/baz.c + + With such a setup, the created makefile fragment containing dependency + tracking information will be correctly placed under the directories + named 'sources/libs/aaa/.deps' and 'sources/bbb/.deps', rather than + mistakenly under directories named (literally!) '$(src_a)/.deps' and + '$(src_b)/.deps' (this was the first part of automake bug#13928). + + Notice that in order to fix this bug we had to slightly change the + semantics of how config.status bootstraps the makefile fragments + required for the dependency tracking to work: rather than attempting + to parse the Makefiles via grep and sed trickeries only, we actually + invoke 'make' on a slightly preprocessed version of those Makefiles, + using a private target that is only meant to bootstrap the required + makefile fragments. + + - The 'subdir-object' option no longer causes object files corresponding + to source files specified with an explicit '$(srcdir)' component to be + placed in the source tree rather than in the build tree. + + For example, if Makefile.am contains: + + AUTOMAKE_OPTIONS = subdir-objects + foo_SOURCES = $(srcdir)/foo.c $(srcdir)/s/bar.c $(top_srcdir)/baz.c + + then "make all" will create 'foo.o' and 's/bar.o' in $(builddir) rather + than in $(srcdir), and will create 'baz.o' in $(top_builddir) rather + than in $(top_srcdir). + + This was the second part of automake bug#13928. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + New in 1.15.1: + + * Miscellaneous changes: + + - Support the Windows version of the Intel C Compiler (icl) in the + 'compile' script in the same way the (compatible) Microsoft C Compiler + is supported. + + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + New in 1.15: * Improvements and refactorings in the install-sh script: