Re: [PATCH] make strip: include `scalar`
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Nov 17, 2025, 22:04 UTC
- Message-ID
- <xmqq7bvoiadg.fsf@gitster.g>
- In-Reply-To
- <pull.2004.git.1763409086322.gitgitgadget@gmail.com>
"Johannes Schindelin via GitGitGadget" <gitgitgadget@gmail.com> writes:
Show 7 quoted lines
> From: Johannes Schindelin <johannes.schindelin@gmx.de> > > When Scalar was made a canonical part of Git in 7b5c93c6c68 (scalar: > include in standard Git build & installation, 2022-09-02), it was added > to all relevant Makefile targets except for the `strip` target. > > Let's correct that.
The motivation makes perfect sense.
Show 11 quoted lines
> diff --git a/Makefile b/Makefile > index 7e0f77e298..62f7f7bf56 100644 > --- a/Makefile > +++ b/Makefile > @@ -2565,7 +2565,7 @@ please_set_SHELL_PATH_to_a_more_modern_shell: > > shell_compatibility_test: please_set_SHELL_PATH_to_a_more_modern_shell > > -strip: $(PROGRAMS) git$X > +strip: $(PROGRAMS) git$X scalar$X > $(STRIP) $(STRIP_OPTS) $^
I wonder why the original names git$X here explicitly, instead of using say $(OTHER_PROGRAMS) that covers both of these. I know that the undocumented INCLUDE_DLLS_IN_ARTIFACTS knob uses OTHER_PROGRAMS by throwing in non-programs like DLLs to it, so that artifacts-tar target would include them, but perhaps instead of working around the misdesign of that target, wouldn't it be better to correct its use of OTHER_PROGRAMS and use it here instead?
The change (including the "strip scalar, too!" part) should look like this, I think.
Also do we need a matching change to CMake and meson?
Makefile | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)
diff --git c/Makefile w/Makefile index 70d1543b6b..a63a4adbc7 100644 --- c/Makefile +++ w/Makefile @@ -682,6 +682,7 @@ LIB_OBJS = LIBGIT_PUB_OBJS = SCALAR_OBJS = OBJECTS = +OTHER_ARTIFACTS = OTHER_PROGRAMS = PROGRAM_OBJS = PROGRAMS = @@ -2499,7 +2500,7 @@ please_set_SHELL_PATH_to_a_more_modern_shell: shell_compatibility_test: please_set_SHELL_PATH_to_a_more_modern_shell -strip: $(PROGRAMS) git$X +strip: $(PROGRAMS) $(OTHER_PROGRAMS) $(STRIP) $(STRIP_OPTS) $^ ### Target-specific flags and dependencies @@ -3697,10 +3698,11 @@ rpm:: .PHONY: rpm ifneq ($(INCLUDE_DLLS_IN_ARTIFACTS),) -OTHER_PROGRAMS += $(shell echo *.dll t/helper/*.dll t/unit-tests/bin/*.dll) +OTHER_ARTIFACTS += $(shell echo *.dll t/helper/*.dll t/unit-tests/bin/*.dll) endif artifacts-tar:: $(ALL_COMMANDS_TO_INSTALL) $(SCRIPT_LIB) $(OTHER_PROGRAMS) \ + $(OTHER_ARTIFACTS) \ GIT-BUILD-OPTIONS $(TEST_PROGRAMS) $(test_bindir_programs) \ $(UNIT_TEST_PROGS) $(CLAR_TEST_PROG) $(MOFILES) $(QUIET_SUBDIR0)templates $(QUIET_SUBDIR1) \