make/tests/scripts
Dmitry Goncharov 07eea3aa49 [SV 62706] Only second-expand targets that might be built
Second-expand only the prerequisites of the targets being built.
Defer second-expanding the prerequisites of targets until we need
to decide if they should be built.

* NEWS: Mention the change in behavior.
* doc/make.texi (Secondary Expansion): Document the new behavior.
* src/filedef.h (struct file): Add flag snapped.
(expand_deps): Declare a function to second expand the
prerequisites of a target.
* src/file.c (rehash_file): Merge flag snapped.
(expand_deps): Remove qualifier static. Check flag snapped.
(snap_deps): Remove the loop which performed second expansion for all
targets.
* src/remake.c (update_file_1): Second expand the prerequisites of
the considered target.
* tests/scripts/features/se_explicit: Add tests.
* tests/scripts/features/se_implicit: Ditto.
* tests/scripts/features/se_statpat: Ditto.
2022-07-30 18:40:28 -04:00
..
features [SV 62706] Only second-expand targets that might be built 2022-07-30 18:40:28 -04:00
functions Ensure that MAKEFLAGS is set when invoking $(shell ...) 2022-07-30 18:40:28 -04:00
misc tests: Allow run_make_test() to avoid passing -f 2022-02-27 17:47:42 -05:00
options [SV 62100] Add '--shuffle' option support 2022-06-04 19:04:37 -04:00
targets Remove extraneous characters from fatal() calls 2022-02-27 18:01:13 -05:00
variables Disable the jobserver in non-recursive children 2022-07-30 18:40:28 -04:00
vms Refresh the test suite framework implementation. 2019-09-16 08:25:33 -04:00
test_template Update the test template. A few fixes in run_make_test(). 2004-09-22 04:36:17 +00:00