summaryrefslogtreecommitdiff
path: root/defs
diff options
context:
space:
mode:
authorNobuyoshi Nakada <[email protected]>2023-09-21 10:50:08 +0900
committerNobuyoshi Nakada <[email protected]>2023-09-21 12:18:41 +0900
commit2b41df247794103a4d392c763156b02451772237 (patch)
treeff549f85f34f66b0be820ff9ef0dbeb8e92077d5 /defs
parent7e350f53107533856b0a87c26e5a1e5505ea5d59 (diff)
`.NOTPARALLEL` with prerequisites needs recent GNU Make
GNU Make prior to 4.4 just ignores the prerequisites, and runs everything in serial.
Diffstat (limited to 'defs')
-rw-r--r--defs/gmake.mk8
1 files changed, 7 insertions, 1 deletions
diff --git a/defs/gmake.mk b/defs/gmake.mk
index 4a91689de9..8698271c98 100644
--- a/defs/gmake.mk
+++ b/defs/gmake.mk
@@ -518,7 +518,13 @@ matz: up
tags:
$(MAKE) GIT="$(GIT)" -C "$(srcdir)" -f defs/tags.mk
-ifeq ($(DOT_WAIT),)
+
+# ripper_srcs makes all sources at once. invoking this target multiple
+# times in parallel means all sources will be built for the number of
+# sources times respectively.
+ifneq ($(DOT_WAIT),)
+.NOTPARALLEL: ripper_srcs
+else
ripper_src =
$(foreach r,$(RIPPER_SRCS),$(eval $(value r): | $(value ripper_src))\
$(eval ripper_src := $(value r)))