Message ID | 077a01d680af$2ad65510$8082ff30$@nexbridge.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [Suggestion] Documentation: quick-install-man not propagating DESTDIR | expand |
"Randall S. Becker" <rsbecker@nexbridge.com> writes: > The make quick-install-man rule is not propagating DESTDIR when GNU Make > 4.2.1 is used. I wonder, instead of having to change all "$(MAKE) -C elsewhere", we can add DESTDIR to the list of variables that are exported. ... goes and looks ... Hmph, DESTDIR is exported together with DIFF, TAR, INSTALL and SHELL_PATH. We do rely on SHELL_PATH to be exported correctly to t/Makefile for "make test" to work, so it is puzzling. It is doubly puzzling that we use $(INSTALL) in Documentation/Makefile on the same line as $(DESTDIR) is used, and apparently you are not reporting problem on that one. > It seems like a bit of a nit to report this, but I discovered that the > installation is not putting the manuals in the same place as git. It’s a > pretty simple fix. I can put a patch together if desired. I do not think we want that patch. Instead I think we'd want a patch that uses the same trick as what makes INSTALL work. Thanks. > diff --git a/Makefile b/Makefile > index 372139f1f2..dae2d99a7f 100644 > --- a/Makefile > +++ b/Makefile > @@ -2992,10 +2992,10 @@ install-gitweb: > $(MAKE) -C gitweb install > > install-doc: install-man-perl > - $(MAKE) -C Documentation install > + $(MAKE) -C Documentation install DESTDIR=$(DESTDIR) > > install-man: install-man-perl > - $(MAKE) -C Documentation install-man > + $(MAKE) -C Documentation install-man DESTDIR=$(DESTDIR) > > install-man-perl: man-perl > $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(mandir_SQ)/man3' > @@ -3006,19 +3006,19 @@ install-html: > $(MAKE) -C Documentation install-html > > install-info: > - $(MAKE) -C Documentation install-info > + $(MAKE) -C Documentation install-info DESTDIR=$(DESTDIR) > > install-pdf: > - $(MAKE) -C Documentation install-pdf > + $(MAKE) -C Documentation install-pdf DESTDIR=$(DESTDIR) > > quick-install-doc: > - $(MAKE) -C Documentation quick-install > + $(MAKE) -C Documentation quick-install DESTDIR=$(DESTDIR) > > quick-install-man: > - $(MAKE) -C Documentation quick-install-man > + $(MAKE) -C Documentation quick-install-man DESTDIR=$(DESTDIR) > > quick-install-html: > - $(MAKE) -C Documentation quick-install-html > + $(MAKE) -C Documentation quick-install-html DESTDIR=$(DESTDIR) > > -- Brief whoami: > NonStop developer since approximately 211288444200000000 > UNIX developer since approximately 421664400 > -- In my real life, I talk too much.
On September 2, 2020 3:45 PM, Junio C Hamano wrote: > "Randall S. Becker" <rsbecker@nexbridge.com> writes: > > > The make quick-install-man rule is not propagating DESTDIR when GNU > > Make > > 4.2.1 is used. > > I wonder, instead of having to change all "$(MAKE) -C elsewhere", we can > add DESTDIR to the list of variables that are exported. > > ... goes and looks ... > > Hmph, DESTDIR is exported together with DIFF, TAR, INSTALL and > SHELL_PATH. We do rely on SHELL_PATH to be exported correctly to > t/Makefile for "make test" to work, so it is puzzling. > > It is doubly puzzling that we use $(INSTALL) in Documentation/Makefile on > the same line as $(DESTDIR) is used, and apparently you are not reporting > problem on that one. > > > It seems like a bit of a nit to report this, but I discovered that the > > installation is not putting the manuals in the same place as git. It’s > > a pretty simple fix. I can put a patch together if desired. > > I do not think we want that patch. Instead I think we'd want a patch that > uses the same trick as what makes INSTALL work. I'll look into that approach. Thanks for the direction. Regards, Randall
diff --git a/Makefile b/Makefile index 372139f1f2..dae2d99a7f 100644 --- a/Makefile +++ b/Makefile @@ -2992,10 +2992,10 @@ install-gitweb: $(MAKE) -C gitweb install install-doc: install-man-perl - $(MAKE) -C Documentation install + $(MAKE) -C Documentation install DESTDIR=$(DESTDIR) install-man: install-man-perl - $(MAKE) -C Documentation install-man + $(MAKE) -C Documentation install-man DESTDIR=$(DESTDIR) install-man-perl: man-perl $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(mandir_SQ)/man3' @@ -3006,19 +3006,19 @@ install-html: $(MAKE) -C Documentation install-html install-info: - $(MAKE) -C Documentation install-info + $(MAKE) -C Documentation install-info DESTDIR=$(DESTDIR) install-pdf: - $(MAKE) -C Documentation install-pdf + $(MAKE) -C Documentation install-pdf DESTDIR=$(DESTDIR) quick-install-doc: - $(MAKE) -C Documentation quick-install + $(MAKE) -C Documentation quick-install DESTDIR=$(DESTDIR) quick-install-man: - $(MAKE) -C Documentation quick-install-man + $(MAKE) -C Documentation quick-install-man DESTDIR=$(DESTDIR) quick-install-html: - $(MAKE) -C Documentation quick-install-html + $(MAKE) -C Documentation quick-install-html DESTDIR=$(DESTDIR) -- Brief whoami: NonStop developer since approximately 211288444200000000 UNIX developer since approximately 421664400