4 We want to make the behaviour currently enabled by the 'subdir-objects'
5 the default one, and in fact the *only* one, in Automake 1.14.
6 See automake bug#13378: <http://debbugs.gnu.org/13351>.
11 The fact that Automake-generated Makefiles place compiled object files in
12 the current directory by default, also when the corresponding source file
13 is in a subdirectory, is basically an historical accident, due to the fact
14 that the 'subdir-objects' option had only been introduced in April 1999,
15 starting with commit 'user-dep-gen-branchpoint-56-g88b5959', and never
16 made the default (likely to avoid backwards-compatibility issues).
18 Since I believe the behaviour enabled by the 'subdir-objects' is the most
19 useful one, and in fact the *only* natural one, I'd like to make it the
20 only one available, simplifying the Automake implementation and APIs a
21 little in the process.
23 Alas, since this also means changing the default behaviour of Automake
24 ('subdir-objects' is not enabled by default, sadly), this means the
25 transition path will be less smooth than I'd like.
27 For automake 1.13.2 (ASAP)
28 --------------------------
30 Fix the bug spotted by Nick Bowler:
32 <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=13378#35>
33 <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=13378#44>
35 and exposed in test case 't/ccnoco4.sh': currently, Automake-generated
36 C compilation rules mistakenly pass the "-c -o" options combination
37 unconditionally (even to losing compiler) when the 'subdir-objects' is
38 used but sources are only present in the top-level directory.
40 For automake 1.13.2 (with more ease)
41 ------------------------------------
43 Give a warning in the category 'unsupported' if the 'subdir-objects'
44 option is not specified. This should give the users enough forewarning
45 about the planned change, and give them time to update their packages
48 This warning, when there are C sources in subdirs, should also mention the
49 need to use AM_PROG_CC_C_O in configure.ac (thanks to Peter Breitenlohner
50 for suggesting this). This is not strictly required, but will make
51 things a little simpler for the users, by giving a more complete feedback:
52 <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=13378#29>
54 Be sure to avoid the warning when it would be irrelevant, i.e., if all
55 source files sit in "current" directory (thanks to Peter Johansson for
61 Flip the 'subdir-object' option on by default. At the same time,
62 drop support for the "old" behaviour of having object files derived
63 from sources in a subdirectory being placed in the current directory
64 rather than in that same subdirectory.
66 Still keep the 'subdir-object' option supported (as a simple no-op
67 now), to save useless churn in our user's build systems.