aboutsummaryrefslogtreecommitdiffstats
path: root/Makefile.am
diff options
context:
space:
mode:
authorArvind Sankar <[email protected]>2020-07-13 17:24:07 -0400
committerBrian Behlendorf <[email protected]>2020-07-14 17:31:45 -0700
commite6c093dd94e7e6f221194e96095c0133662e3500 (patch)
tree93bd1e7ca3849df14f7beb6619aa1b93d063e5ef /Makefile.am
parent1743c737f5ad6e2c6c429858b7c0f717ecb20954 (diff)
Fix parallel make srpm
When building srpm using make -j, each of the recursive makes invoked to build srpm-{dkms,kmod,utils} will build the dist target. This is both unnecessary, and also has a very good chance of breaking when they race trying to build gitrev. Fix this by make dist a prerequisite of srpm-{dkms,kmod,utils} instead of srpm-common, so that it will be done once before invoking the recursive makes. Also, gitrev is not really required for make dist, so instead of adding it to BUILT_SOURCES, just add it as a prerequisite of the all target. Mark the individual package targets as PHONY. Reviewed-by: Brian Behlendorf <[email protected]> Signed-off-by: Arvind Sankar <[email protected]> Closes #10564
Diffstat (limited to 'Makefile.am')
-rw-r--r--Makefile.am14
1 files changed, 6 insertions, 8 deletions
diff --git a/Makefile.am b/Makefile.am
index 45474daa4..4e4625794 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,9 +1,5 @@
ACLOCAL_AMFLAGS = -I config
-include config/rpm.am
-include config/deb.am
-include config/tgz.am
-
SUBDIRS = include
if BUILD_LINUX
SUBDIRS += rpm
@@ -54,6 +50,7 @@ EXTRA_DIST += module/zfs/THIRDPARTYLICENSE.cityhash.descrip
@CODE_COVERAGE_RULES@
GITREV = include/zfs_gitrev.h
+CLEANFILES = $(GITREV)
PHONY = gitrev
gitrev:
@@ -68,10 +65,7 @@ gitrev:
mv -f $(GITREV)~ $(GITREV); \
fi
-$(GITREV): gitrev
-
-BUILT_SOURCES = $(GITREV)
-CLEANFILES = $(GITREV)
+all: gitrev
# Double-colon rules are allowed; there are multiple independent definitions.
distclean-local::
@@ -252,4 +246,8 @@ pkg-dkms: @DEFAULT_PACKAGE@-dkms
pkg-kmod: @DEFAULT_PACKAGE@-kmod
pkg-utils: @DEFAULT_PACKAGE@-utils
+include config/rpm.am
+include config/deb.am
+include config/tgz.am
+
.PHONY: $(PHONY)