[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Automake-commit] [SCM] GNU Automake branch, experimental/subdir-objects
From: |
Stefano Lattarini |
Subject: |
[Automake-commit] [SCM] GNU Automake branch, experimental/subdir-objects-work, created. v1.13.1-82-g887de3a |
Date: |
Sat, 16 Feb 2013 18:40:20 +0000 |
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Automake".
http://git.sv.gnu.org/gitweb/?p=automake.git;a=commitdiff;h=887de3a209a74ea4b3e3cd0933260663dfeec9cd
The branch, experimental/subdir-objects-work has been created
at 887de3a209a74ea4b3e3cd0933260663dfeec9cd (commit)
- Log -----------------------------------------------------------------
commit 887de3a209a74ea4b3e3cd0933260663dfeec9cd
Author: Stefano Lattarini <address@hidden>
Date: Thu Jan 10 21:52:18 2013 +0100
depend: reduce code duplication, de-uglify make verbose output
Verbose output from compilation recipes had been made more messy by
the previous "simplifying" commit XXX. With this patch, not only we
reduce some code duplication, but also improve that output again, for
the joy of users who dislike silent-rules :-)
* lib/am/depend2.am: Use the new '%XSOURCE%' transform, instead of
copying and pasting the idiom for VPATH rewrite emulation over and
over. Fix some indentation and line-wrapping issues while at it.
* automake.in (handle_languages): Implement the new transform.
* t/silent-nested-vars.sh: Adjust to avoid spurious failures.
Signed-off-by: Stefano Lattarini <address@hidden>
commit ba539faf0ba5a5ff1388635934c51ffe12073a77
Author: Stefano Lattarini <address@hidden>
Date: Thu Jan 10 21:42:28 2013 +0100
depend: prefer $(...) over `...` in Cygwin-specific recipes
On Cygwin, we can happily assume only POSIX-conforming shells exist.
This commit is useless by itself, but is useful as a preparatory
refactoring in view of a future change.
* lib/am/depend2.am: In recipes for producing '.obj' objects, use
the POSIX form $(...) for command substitution, rather than the
classic Bourne one `...`.
Signed-off-by: Stefano Lattarini <address@hidden>
commit 915315ec82f56d831f98e35892b808cebaa7f52e
Author: Stefano Lattarini <address@hidden>
Date: Thu Jan 10 21:31:57 2013 +0100
depend2.am: reduce code duplication
Just a simplification; no semantic change is intended.
* lib/am/depend2.am (am__set_depbase): New. Use it in all the three
flavours of recipes (.o, .obj, .lo), instead of duplicating its code.
Signed-off-by: Stefano Lattarini <address@hidden>
commit 603a2872f091b455c19cee72a4e2292a61a7dc95
Author: Stefano Lattarini <address@hidden>
Date: Thu Jan 10 20:47:57 2013 +0100
depend2.am: preparatory refactoring
This is just a preparatory change in view of a future refactoring.
No semantic change is intended.
* lib/am/depend2.am: Adjust; for example, using '$@' in all recipes
to indicate the output file (rather than recipe-specific transforms
like '%OBJ%' and '%LTOBJ%'), and not assuming to know the exact
file extension of the output file (e.g., whether it's '.o' or '.lo').
Signed-off-by: Stefano Lattarini <address@hidden>
commit 87625bc5f37ada017fee0db99b49ca4f8365e428
Author: Stefano Lattarini <address@hidden>
Date: Thu Jan 10 18:04:33 2013 +0100
depend2.am: refactor and remove code duplication
* lib/am/depend2.am: Here. The obsolescent comments removed from this
same file in commit 'v1.13.1-42-g8f06bfb' of 2012-01-09, "depend2.am: fix
comments on verbosity of compilation rules", gave the rationale for why
that code duplication was there in the first place (rationale that, like
those comments, has been obsolete by the silent-rules introduction).
* automake.in: Given the refactoring in 'depend2.am', there's no longer
need to add extra trailing whitespace to the entries of the '%sourceflags'
hash (which are used for the '%SOURCEFLAG%' transform when 'depend2.am'
is processed.
Signed-off-by: Stefano Lattarini <address@hidden>
commit 763e6e0578853374e769c40d380b2e3c60ec5326
Author: Stefano Lattarini <address@hidden>
Date: Thu Jan 10 19:54:13 2013 +0100
Automake::Language: drop unused fields 'compile_flag' and 'output_flag'
They are unused after the recent flurry of changes. This is just a
simplification; no semantic change is intended.
* automake.in: Here, in the Automake::Language 'Class::Struct' definition
and in all the 'register_language()' invocations.
Signed-off-by: Stefano Lattarini <address@hidden>
commit abc988b731052d8ac035fdf549b5959d2c45cd86
Author: Stefano Lattarini <address@hidden>
Date: Thu Jan 10 19:48:14 2013 +0100
depend: assume '-c' compiler flag always means to produce object files
Rather than fully-fledged executables. This is the case for all the
compilers of all languages supported by Automake.
This is just a simplification; no semantic changes are intended.
* automake.in (handle_languages): Drop transform '%-c%'.
* lib/am/depend2.am: Adjust to just assume the '%-c%' transform
expands to "-c".
Signed-off-by: Stefano Lattarini <address@hidden>
commit 9565ab9fccca59dde942c5be68b514ec74963c6a
Author: Stefano Lattarini <address@hidden>
Date: Thu Jan 10 19:38:58 2013 +0100
depend: assume we can always pass "-o" to the C compiler
This is the case after the change in commit XXX of YYYY-MM-DD,
``compile: use 'compile' script when "-c -o" is used with losing compilers''
This is just a simplification; no semantic changes are intended.
* automake.in (handle_languages): Drop transform '%-o%', and definitions
of '$output_flag'.
* lib/am/depend2.am: Adjust to just assume the '?-o?' transform is true,
and the '%-o%' transform expands to "-o".
Signed-off-by: Stefano Lattarini <address@hidden>
commit 210e375ee92070b8cba8b92306f19a7a110c4735
Author: Stefano Lattarini <address@hidden>
Date: Tue Jan 8 14:04:00 2013 +0100
cleanup: having subdir-objects mandatory allow us some simplifications
Few minor cleanups made possible by earlier changes, plus other minor
cleanups triggered in cascade. No semantic change is intended.
This is a follow-up on previous commit 'XXX', and an adjusted backport
of Automake-NG commit 'v1.12.1-315-gc97d41b' of 2012-06-08, "[ng] cleanup:
after enabling of subdir-objects unconditionally".
* automake.in (LANG_IGNORE, LANG_SUBDIR): Remove.
(handle_languages): Drop the '%DEPBASE%' transform when processing
the '$rule_file'.
(register_language ('name' => 'vala', ...)): Add '.vapi' to the entry
'extensions', and simplify the entry 'output_extensions' to point to
a dummy subroutine (since it wasn't really used anyway).
(handle_single_transform): No longer expect the 'lang_*_rewrite'
subroutines to return a 'LANG_*' constant, but only a transformed
extension, if required. To decide whether further processing of the
source file should be stopped, rely on a new set of 'lang_*_ignore'
subroutines, defaulting to a subroutine that returns false.
Accordingly, don't special case the handling of '.vapi' files anymore,
instead rely on ...
(lang_vala_ignore, lang_header_ignore): ... these new subroutines to
avoid extra processing of C/C++ headers and Vala '.vapi' headers.
(lang_java_rewrite): Remove.
Remove an outdated comment.
* lib/am/depend2.am: Partial rewrite to reduce code duplication and
drop use of the '%DEPBASE%' transform.
* t/compile_f_c_cxx.sh: Adjust.
Signed-off-by: Stefano Lattarini <address@hidden>
commit 369c99fa29832230a4a005b78cac17b3bf41bbde
Author: Stefano Lattarini <address@hidden>
Date: Wed Jun 6 10:27:46 2012 +0200
subdir-objects: enable unconditionally
See automake bug#13378.
The fact that Automake-generated Makefiles places compiled object files
in the 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 we believe the behaviour enabled by the 'subdir-objects' is the
only natural and most useful one, we make it the only only one available,
simplifying the Automake implementation and APIs a little in the process.
This change is basically an adjusted backport of Automake-NG commit
'v1.12.1-313-g14fe163' of 2012-06-07, "[ng] subdir-objects: enable
unconditionally".
* NEWS: Update.
* doc/automake.texi (Program and Library Variables): The output
object files are no longer placed in the current directory by
default, but rather in the same directory of the source file.
(LIBOBJS): Now the $(LIBOBJS) and $(ALLOCA) variables can also
be used outside of the directory where their sources lie.
(List of Automake options): No longer document 'subdir-objects'
option.
Other related minor adjustments.
* automake.in (LANG_PROCESS): Remove, it's no longer needed.
(handle_languages): Don't test whether option 'subdir-objects'
is set (just assume it is), and do not use the '%SUBDIROBJ%'
transform when processing '.am' fragments.
(lang_sub_obj): Delete, it would just return 'LANG_SUBDIR'
unconditionally now.
(lang_lex_rewrite): Adjust. Don't test whether the option
'subdir-objects' is set (just assume it is).
(lang_yacc_rewrite): Likewise.
(handle_single_transform): Likewise. Remove an obsolete
comment. Add a proper "FIXME" comments about a fragment
of code that might have become dead code now.
(handle_LIBOBJS_or_ALLOCA): Simplify assuming that the option
'subdir-objects' is always set. Accordingly, there's no need
to warn anymore if '$(LIBOBJS)' or '$(ALLOCA)' are used outside
the '$config_libobj_dir' directory (as specified by autoconf
macro 'AC_CONFIG_LIBOBJ_DIR').
* lib/am/depend2.am: Assume the '?SUBDIROBJ?' Automake time
conditional is always true, and remove its uses accordingly.
* t/compile_f_c_cxx.sh: Adjust.
* t/cscope.tap: Likewise.
* t/depcomp8a.sh: Likewise.
* t/depcomp8b.sh: Likewise.
* t/libtool3.sh: Likewise.
* t/ltlibsrc.sh: Likewise.
* t/pr401.sh: Likewise.
* t/pr401b.sh: Likewise.
* t/pr401c.sh: Likewise.
* t/subobj.sh: Likewise.
* t/lex-line.sh: Likewise.
* t/yacc-line.sh: Likewise.
* t/yacc5.sh: Likewise.
* t/vala-libs.sh: Likewise.
* t/fort4.sh: Likewise, and extend a bit.
* t/fort5.sh: Likewise.
* t/gcj.sh: Likewise.
* t/subpkg.sh: Likewise.
* t/subpkg-yacc.sh: Likewise.
* t/xsource.sh: Likewise.
* t/libobj20a.sh: Remove as obsolete.
* t/libobj20b.sh: Adjust heading comments.
* t/libobj20c.sh: Likewise.
* t/subobj4.sh: Remove as obsolete.
* t/sourcefile-in-subdir.sh: Likewise.
Signed-off-by: Stefano Lattarini <address@hidden>
commit 9d1c06a6f981fb0d599969cde62aebb7812a8eca
Author: Stefano Lattarini <address@hidden>
Date: Fri Jan 11 16:59:07 2013 +0100
compile: avoid AC_PROG_CC messy rewrite
Instead, just touch up AC_PROG_CC to rewrite $CC when a losing compiler
is detected, and to always distribute the 'compile' script.
We can do so because Autoconf 2.70 (which we now require) has been so kind
to implement the features we need (through a private hook made explicitly
available to us), in commit v2.69-63-gce48964 of 2013-01-11, "AC_PROG_CC:
also check whether $CC supports "-c -o" together":
<http://lists.gnu.org/archive/html/autoconf-patches/2013-01/msg00007.html>
* m4/init.m4 (AC_PROG_CC): Simplify, relying on the Autoconf hook.
Signed-off-by: Stefano Lattarini <address@hidden>
-----------------------------------------------------------------------
hooks/post-receive
--
GNU Automake
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Automake-commit] [SCM] GNU Automake branch, experimental/subdir-objects-work, created. v1.13.1-82-g887de3a,
Stefano Lattarini <=