On 01/13/2013 08:51 PM, Stefano Lattarini wrote: > Reference: > <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=13378> > > On 01/07/2013 09:08 PM, Stefano Lattarini wrote: >> Severity: wishlist >> >> Inspired from Automake-NG commit 'v1.12.1-313-g14fe163' of 2012-06-07, >> "[ng] subdir-objects: enable unconditionally". >> >> The fact that Automake-generated Makefiles place compiled object files in >> he current directory by default, also when the corresponding source file >> is in a subdirectory, is basically an historical accident, due to the fact >> that the 'subdir-objects' option had only been introduced in April 1999, >> starting with commit 'user-dep-gen-branchpoint-56-g88b5959', and never >> made the default (likely to avoid backwards-compatibility issues). >> >> Since I believe the behaviour enabled by the 'subdir-objects' is the most >> useful one, and in fact the *only* natural one, I'd like to make it the >> the only one available, simplifying the Automake implementation and APIs >> a little in the process. >> >> Alas, since this also means changing the default behaviour of Automake >> ('subdir-objects' is not enabled by default, sadly), this means the >> transition path will be less smooth than I'd like. Here it is a sketch >> for it: >> >> Automake 1.13.2 >> --------------- >> >> Give a warning in the category 'unsupported' if the 'subdir-objects' >> option is not specified. This should give the users enough forewarning >> about the planned change, and give them time to update their packages >> to the new semantic. >> > Here is a patch doing that. I will push it in a couple of days if there > are no objections. > > Regards, > Stefano > > ---- 8< ---- 8< ---- 8< ---- 8< ---- 8< ---- 8< ---- 8< ---- 8< ---- 8< ---- > > From 4864af66bfd189a501061d775bb9743a1285d88e Mon Sep 17 00:00:00 2001 > Message-Id: > <4864af66bfd189a501061d775bb9743a1285d88e.1358106576.git.stefano.lattar...@gmail.com> > From: Stefano Lattarini <stefano.lattar...@gmail.com> > Date: Sun, 13 Jan 2013 17:50:30 +0100 > Subject: [PATCH] subdir-objects: complain if it isn't enabled > > Since the next major automake version will make the behaviour so far > only activated with the 'subdir-object' option mandatory, it's better > if we start warning users not using that option. > > As suggested by Peter Johansson, we strive to avoid the warning when > it would be irrelevant, i.e., if all source files sit in "current" > directory. > > See automake bug#13378. > > * automake.in (handle_single_transform): Print the warning when > necessary. > * t/subobj.sh: Enhance. > * t/ax/depcomp.sh: Adjust. > * t/cscope.tap: Likewise. > * t/depcomp8a.sh: Likewise. > * t/depcomp8b.sh: Likewise. > * t/ext2.sh: Likewise. > * t/extra-portability.sh: Likewise. > * t/fort2.sh: Likewise. > * t/fort4.sh: Likewise. > * t/fort5.sh: Likewise. > * t/lex-line.sh: Likewise. > * t/libtool3.sh: Likewise. > * t/ltinstloc.sh: Likewise. > * t/ltlibsrc.sh: Likewise. > * t/ltorder.sh: Likewise. > * t/parallel-tests-suffix-prog.sh: Likewise. > * t/sourcefile-in-subdir.sh: Likewise. > * t/specflg9.sh: Likewise. > * t/subobj4.sh: Likewise. > * t/subobj7.sh: Likewise. > * t/subpkg-yacc.sh: Likewise. > * t/subpkg.sh: Likewise. > * t/suffix-custom-subobj-and-specflg.sh: Likewise. > * t/vala-libs.sh: Likewise. > * t/vala-non-recursive-setup.sh: Likewise. > * t/yacc-grepping2.sh: Likewise. > * t/yacc-line.sh: Likewise. > Pushed now.
Regards, Stefano