summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlejandro Colomar <alx@kernel.org>2024-02-11 20:36:57 +0100
committerAlejandro Colomar <alx@kernel.org>2024-02-11 20:40:55 +0100
commit7db3f4e45abc5c4c09b5affa4345badf8a094bca (patch)
tree5906fd0d9956695320134f22dc37e17ba3afcdbe
parent4704d43039fa4eb9196eb1e21ae5ff65daa2bcaa (diff)
downloadliba2i-7db3f4e45abc5c4c09b5affa4345badf8a094bca.tar.gz
share/mk/dist/: Allow making 'dist' from within a release tarball
Signed-off-by: Alejandro Colomar <alx@kernel.org>
-rw-r--r--share/mk/dist/check.mk1
-rw-r--r--share/mk/dist/files.mk13
2 files changed, 10 insertions, 4 deletions
diff --git a/share/mk/dist/check.mk b/share/mk/dist/check.mk
index cb0becb..dbe7de7 100644
--- a/share/mk/dist/check.mk
+++ b/share/mk/dist/check.mk
@@ -21,6 +21,7 @@ $(builddir)/distcheck.touch: $(DISTFILE) | $$(@D)/
cd $(TMPDIR1); $(TAR) xf $(DISTNAME).tar
$(MAKE) -C $(TMPDIR1)/$(DISTNAME) all
$(MAKE) -C $(TMPDIR1)/$(DISTNAME) install DESTDIR=$(TMPDIR2)
+ $(MAKE) -C $(TMPDIR1)/$(DISTNAME) dist
$(TOUCH) $@
diff --git a/share/mk/dist/files.mk b/share/mk/dist/files.mk
index 36e674f..8cf3d0e 100644
--- a/share/mk/dist/files.mk
+++ b/share/mk/dist/files.mk
@@ -15,12 +15,16 @@ include $(MAKEFILEDIR)/verbose.mk
DISTFILESCMD := $(GIT) ls-files $(HIDE_ERR) | $(SED) 's,^,$(srcdir)/,'
+DISTFILESCMD_DIST := \
+ $(FIND) $(srcdir) -not -type d \
+ | $(GREP) -v '^$(srcdir)/.tmp/' \
+ | $(GREP) -v '^$(srcdir)/.checkpatch-camelcase.git.'
DISTFILES := $(shell $(DISTFILESCMD) | $(SED) 's,:,\\:,g')
_DISTFILES := $(patsubst $(srcdir)/%,$(_DISTDIR)/%,$(DISTFILES))
-_DISTPAGES := $(filter $(_DISTDIR)/share/man/man%,$(_DISTFILES))
-_DISTVERSION := $(_DISTDIR)/share/mk/version.mk
-_DISTOTHERS := $(filter-out $(_DISTPAGES) $(_DISTVERSION),$(_DISTFILES))
+_DISTPAGES := $(filter $(_DISTDIR)/share/man/man%,$(_DISTFILES))
+_DISTMK := $(filter $(_DISTDIR)/share/mk/%,$(_DISTFILES))
+_DISTOTHERS := $(filter-out $(_DISTPAGES) $(_DISTMK), $(_DISTFILES))
$(_DISTPAGES): $(_DISTDIR)/share/man/man%: $(srcdir)/share/man/man% $(MK) | $$(@D)/
@@ -30,11 +34,12 @@ $(_DISTPAGES): $(_DISTDIR)/share/man/man%: $(srcdir)/share/man/man% $(MK) | $$(@
| $(SED) '/^.TH/s/(unreleased)/$(DISTVERSION)/' \
| $(INSTALL_DATA) -T /dev/stdin $@
-$(_DISTVERSION): $(MAKEFILEDIR)/version.mk $(MK) | $$(@D)/
+$(_DISTMK): $(_DISTDIR)/share/mk/%: $(MAKEFILEDIR)/% $(MK) | $$(@D)/
$(info SED $@)
<$< \
$(SED) 's/^DISTVERSION *:=.*/DISTVERSION := $(DISTVERSION)/' \
| $(SED) 's/^DISTDATE *:=.*/DISTDATE := $(DISTDATE)/' \
+ | $(SED) 's@^DISTFILESCMD *:=.*@DISTFILESCMD := $(DISTFILESCMD_DIST)@' \
| $(INSTALL_DATA) -T /dev/stdin $@
$(_DISTOTHERS): $(_DISTDIR)/%: $(srcdir)/% $(MK) | $$(@D)/