From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: X-Spam-Status: No, score=-4.0 required=3.0 tests=ALL_TRUSTED,BAYES_00 shortcircuit=no autolearn=ham autolearn_force=no version=3.4.2 Received: from localhost (dcvr.yhbt.net [127.0.0.1]) by dcvr.yhbt.net (Postfix) with ESMTP id 80B941F4C0 for ; Sun, 3 Nov 2019 03:08:06 +0000 (UTC) From: Eric Wong To: meta@public-inbox.org Subject: [PATCH] build: add "git-dist" target for making gzipped tarballs Date: Sun, 3 Nov 2019 03:08:06 +0000 Message-Id: <20191103030806.4393-1-e@80x24.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit List-Id: 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(-) 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 -- EW