tool/depot: adapt to .NOPARALLEL changes in GNU make 4.4

The semantic of .NOPARALLEL has changed in GNU Make 4.4

Quote:

New feature: .NOTPARALLEL accepts prerequisites If the .NOTPARALLEL
special target has prerequisites then all prerequisites of those targets
will be run serially (as if .WAIT was specified between each
prerequisite).

This means that only prerequisites are made sequential. Before
everything within a Makefile would be done in sequential order.

Therefore, we had to add the *.hash target (appears multiple times) to
the .NOPARALLEL prerequisites.

issue #4725
This commit is contained in:
Sebastian Sumpf 2023-01-17 15:03:22 +01:00 committed by Christian Helmuth
parent d86309957e
commit 515854a19f
2 changed files with 3 additions and 3 deletions

View File

@ -38,7 +38,7 @@ $(TARGET) $(DEPOT_ARCHIVE_DIR)/$(TAG_FILE): checked_content_mk_exists
# triggered as soon as the specific tag file appears but before the entire
# sub make is finished with populating the archive directory.
#
.NOTPARALLEL: $(DEPOT_ARCHIVE_DIR)/$(TAG_FILE)
.NOTPARALLEL: $(DEPOT_ARCHIVE_DIR)/$(TAG_FILE) $(DEPOT_ARCHIVE_DIR).hash
#
# Assemble archive content by invoking the recipe's content.mk file

View File

@ -77,7 +77,7 @@ ifeq ($(filter $(RECIPE_FILES),runtime),runtime)
$(VERBOSE)xmllint --noout $(addprefix $(RECIPE_DIR)/,runtime)
endif
.NOTPARALLEL: $(DEPOT_ARCHIVE_DIR)/$(TAG_FILE)
.NOTPARALLEL: $(DEPOT_ARCHIVE_DIR)/$(TAG_FILE) $(DEPOT_ARCHIVE_DIR).hash
$(DEPOT_ARCHIVE_DIR)/$(TAG_FILE): checked_readme_exists checked_runtime_valid
$(VERBOSE)cp $(addprefix $(RECIPE_DIR)/,$(RECIPE_FILES)) $(DEPOT_ARCHIVE_DIR)/
@ -85,7 +85,7 @@ $(DEPOT_ARCHIVE_DIR)/$(TAG_FILE): checked_readme_exists checked_runtime_valid
#
# Replace the '_' marker in the 'archives' list with the actual user name
#
$(DEPOT_ARCHIVE_DIR)/archives: $(DEPOT_ARCHIVE_DIR).hash $(DEPOT_ARCHIVE_DIR)/_archives
$(DEPOT_ARCHIVE_DIR)/archives: $(DEPOT_ARCHIVE_DIR).hash
$(VERBOSE)sed "s/^_/$(USER)/" $(DEPOT_ARCHIVE_DIR)/_archives > $@
$(VERBOSE)rm -f $(DEPOT_ARCHIVE_DIR)/_archives