diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2019-05-11 18:35:03 -0400 |
---|---|---|
committer | Paul Smith <psmith@gnu.org> | 2019-05-12 16:29:20 -0400 |
commit | 8c888d95f61814dd698bf76126a9079234080d77 (patch) | |
tree | 8020c57690e970a97f6142e61277301b8dc20ac6 /NEWS | |
parent | 1710573272f0063bc5e0109203c467bf9c44d944 (diff) | |
download | make-git-8c888d95f61814dd698bf76126a9079234080d77.tar.gz |
[SV 8297] Implement "grouped targets" for explicit rules.
This patch allows "grouped targets" using the &: syntax:
tgt1 tgt2 ... tgtn &: pre1 pre2 ...
recipe
When the &: separator is used (in single or double colon forms), all
the targets are understood to be built by a single invocation of the
recipe. This is accomplished by piggy-backing on the already-existing
pattern rule feature, using the file's "also_make" list.
* NEWS: Add information about grouped targets.
* doc/make.texi (Multiple Targets): Add information on grouped targets.
(Pattern Intro): Refer to the new section to discuss multiple patterns.
* src/main.c (main): Add "grouped-targets" to .FEATURES
* src/read.c (make_word_type): Add new types for &: and &::.
(eval): Recognize the &: and &:: separator and remember when used.
(record_files): Accept an indicator of whether the rule is grouped.
If so, update also_make for each file to depend on the other files.
(get_next_mword): Recognize the &: and &:: word types.
* tests/scripts/features/grouped_targets: New test script.
* AUTHORS: Add Kaz Kylheku
Diffstat (limited to 'NEWS')
-rw-r--r-- | NEWS | 8 |
1 files changed, 8 insertions, 0 deletions
@@ -48,6 +48,14 @@ http://sv.gnu.org/bugs/index.php?group=make&report_id=111&fix_release_id=108&set treated BOTH as simple targets AND as pattern rules. Behavior now matches the documentation, and pattern rules are no longer created in this case. +* New feature: Grouped explicit targets + Pattern rules have always had the ability to generate multiple targets with + a single invocation of the recipe. It's now possible to declare that an + explicit rule generates multiple targets with a single invocation. To use + this, replace the ":" token with "&:" in the rule. To detect this feature + search for 'grouped-target' in the .FEATURES special variable. + Implementation contributed by Kaz Kylheku <kaz@kylheku.com> + * Makefiles can now specify the '-j' option in their MAKEFLAGS variable and this will cause make to enable that parallelism mode. |