From 70ebd82066a0c9c4c92579c07b7d0e36bbb4870a Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Sun, 3 Nov 2019 02:53:39 +0000 Subject: build: add "git-dist" target for making gzipped tarballs Since MANIFEST is tied to files tracked by git, adding generated files such as NEWS to that is more effort than its worth (esp. when I'm wondering if MakeMaker is useful compared to only using GNU make). I also have trouble reading CamelCase, so lower-case names are nicer and more consistent with previous releases (which were all generated with "git archive"); but did not include NEWS. --- Documentation/include.mk | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) (limited to 'Documentation') diff --git a/Documentation/include.mk b/Documentation/include.mk index e948778a..04b33e4f 100644 --- a/Documentation/include.mk +++ b/Documentation/include.mk @@ -128,7 +128,7 @@ RELEASES = RELEASES += v1.1.0-pre1 RELEASES += v1.0.0 -NEWS NEWS.atom NEWS.html : +NEWS NEWS.atom NEWS.html : Documentation/include.mk $(PERL) -I lib -w Documentation/mknews.perl $@ $(RELEASES) # check for internal API changes: @@ -199,3 +199,17 @@ clean :: clean-doc pure_all :: @if test x"$(addprefix g, make)" != xgmake; then \ echo W: gmake is currently required to build manpages; fi + +# No camel-cased tarballs or pathnames which MakeMaker creates, +# this may not always be a Perl project. +git-dist :: ver = $(shell git describe |sed -ne 's/v//p') +git-dist :: pkgpfx := public-inbox-$(ver) +git-dist :: NEWS + git archive --prefix=$(pkgpfx)/ --format=tar HEAD^{tree} >$(pkgpfx).tar + mkdir -p $(pkgpfx) + cp NEWS $(pkgpfx)/NEWS + $(TAR) rf $(pkgpfx).tar $(pkgpfx)/NEWS + $(RM) $(pkgpfx)/NEWS + rmdir $(pkgpfx) + gzip -9 $(pkgpfx).tar + @echo $(pkgpfx).tar.gz created -- cgit v1.2.3-24-ge0c7