Message ID | 40da2404-8504-e134-7176-f3429c081f12@web.de (mailing list archive) |
---|---|
State | Accepted |
Commit | 93e70311730b3c93c7f1357b7644355a5f04bba3 |
Headers | show |
Series | Makefile: use git init/add/commit/archive for dist-doc | expand |
René Scharfe <l.s.r@web.de> writes: > Reduce the dependency on external tools by generating the distribution > archives for HTML documentation and manpages using git commands instead > of tar. This gives the archive entries the same meta data as those in > the dist archive for binaries. Hmph. I vaguely recall somebody on a more exotic platform wanted our "tar" invocations to be tweakable as their "tar" lacked options or something like that, and hopefully pushing our build procedure in this direction would help them. Will queue. Thanks. > Signed-off-by: René Scharfe <l.s.r@web.de> > --- > Makefile | 14 +++++++++++--- > 1 file changed, 11 insertions(+), 3 deletions(-) > > diff --git a/Makefile b/Makefile > index 95571ee3fc..b7f3708292 100644 > --- a/Makefile > +++ b/Makefile > @@ -3105,11 +3105,15 @@ artifacts-tar:: $(ALL_COMMANDS_TO_INSTALL) $(SCRIPT_LIB) $(OTHER_PROGRAMS) \ > htmldocs = git-htmldocs-$(GIT_VERSION) > manpages = git-manpages-$(GIT_VERSION) > .PHONY: dist-doc distclean > -dist-doc: > +dist-doc: git$X > $(RM) -r .doc-tmp-dir > mkdir .doc-tmp-dir > $(MAKE) -C Documentation WEBDOC_DEST=../.doc-tmp-dir install-webdoc > - cd .doc-tmp-dir && $(TAR) cf ../$(htmldocs).tar $(TAR_DIST_EXTRA_OPTS) . > + ./git -C .doc-tmp-dir init > + ./git -C .doc-tmp-dir add . > + ./git -C .doc-tmp-dir commit -m htmldocs > + ./git -C .doc-tmp-dir archive --format=tar --prefix=./ HEAD^{tree} \ > + > $(htmldocs).tar > gzip -n -9 -f $(htmldocs).tar > : > $(RM) -r .doc-tmp-dir > @@ -3119,7 +3123,11 @@ dist-doc: > man5dir=../.doc-tmp-dir/man5 \ > man7dir=../.doc-tmp-dir/man7 \ > install > - cd .doc-tmp-dir && $(TAR) cf ../$(manpages).tar $(TAR_DIST_EXTRA_OPTS) . > + ./git -C .doc-tmp-dir init > + ./git -C .doc-tmp-dir add . > + ./git -C .doc-tmp-dir commit -m manpages > + ./git -C .doc-tmp-dir archive --format=tar --prefix=./ HEAD^{tree} \ > + > $(manpages).tar > gzip -n -9 -f $(manpages).tar > $(RM) -r .doc-tmp-dir > > -- > 2.28.0
diff --git a/Makefile b/Makefile index 95571ee3fc..b7f3708292 100644 --- a/Makefile +++ b/Makefile @@ -3105,11 +3105,15 @@ artifacts-tar:: $(ALL_COMMANDS_TO_INSTALL) $(SCRIPT_LIB) $(OTHER_PROGRAMS) \ htmldocs = git-htmldocs-$(GIT_VERSION) manpages = git-manpages-$(GIT_VERSION) .PHONY: dist-doc distclean -dist-doc: +dist-doc: git$X $(RM) -r .doc-tmp-dir mkdir .doc-tmp-dir $(MAKE) -C Documentation WEBDOC_DEST=../.doc-tmp-dir install-webdoc - cd .doc-tmp-dir && $(TAR) cf ../$(htmldocs).tar $(TAR_DIST_EXTRA_OPTS) . + ./git -C .doc-tmp-dir init + ./git -C .doc-tmp-dir add . + ./git -C .doc-tmp-dir commit -m htmldocs + ./git -C .doc-tmp-dir archive --format=tar --prefix=./ HEAD^{tree} \ + > $(htmldocs).tar gzip -n -9 -f $(htmldocs).tar : $(RM) -r .doc-tmp-dir @@ -3119,7 +3123,11 @@ dist-doc: man5dir=../.doc-tmp-dir/man5 \ man7dir=../.doc-tmp-dir/man7 \ install - cd .doc-tmp-dir && $(TAR) cf ../$(manpages).tar $(TAR_DIST_EXTRA_OPTS) . + ./git -C .doc-tmp-dir init + ./git -C .doc-tmp-dir add . + ./git -C .doc-tmp-dir commit -m manpages + ./git -C .doc-tmp-dir archive --format=tar --prefix=./ HEAD^{tree} \ + > $(manpages).tar gzip -n -9 -f $(manpages).tar $(RM) -r .doc-tmp-dir
Reduce the dependency on external tools by generating the distribution archives for HTML documentation and manpages using git commands instead of tar. This gives the archive entries the same meta data as those in the dist archive for binaries. Signed-off-by: René Scharfe <l.s.r@web.de> --- Makefile | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) -- 2.28.0