The dashed invocation of Git commands (git-rev-parse instead of git rev-parse) is deprecated for a long time already. This patch series makes it possible to skip building (and installing) them. Incidentally, these patches also handle the .pdb issue in MSVC's install Makefile target that Peff pointed out in the context of the "slimming down" patch series [https://lore.kernel.org/git/20200813145719.GA891370@xxxxxxxxxxxxxxxxxxxxxxx/] . This addresses https://github.com/gitgitgadget/git/issues/406 Changes since v3: * We now skip linking the built-ins in all CI jobs, including the containerized builds. * The commit message of the third patch was rewritten for clarity. * Rebased on top of master to resolve merge conflicts with jk/slimmed-down. Changes since v2: * Reworded and clarified the commit messages of the second and the third patch. Changes since v1: * Fixed check-docs under SKIP_DASHED_BUILT_INS * Renamed ALL_PROGRAMS_AND_BUILT_INS to ALL_COMMANDS_TO_INSTALL to reflect its purpose better. * Revamped the commit message of patch 2/3 and 3/3. Johannes Schindelin (3): msvc: copy the correct `.pdb` files in the Makefile target `install` Optionally skip linking/copying the built-ins ci: stop linking built-ins to the dashed versions Makefile | 66 ++++++++++++++++++++++++++++++++----------------------- ci/lib.sh | 1 + 2 files changed, 40 insertions(+), 27 deletions(-) base-commit: 385c171a018f2747b329bcfa6be8eda1709e5abd Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-411%2Fdscho%2Foptionally-skip-dashed-built-ins-v4 Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-411/dscho/optionally-skip-dashed-built-ins-v4 Pull-Request: https://github.com/gitgitgadget/git/pull/411 Range-diff vs v3: 1: 1880a0e4bf ! 1: 5df767c919 msvc: copy the correct `.pdb` files in the Makefile target `install` @@ Makefile: ifdef MSVC # because it is just a copy/hardlink of git.exe, rather than a unique binary. - $(INSTALL) git.pdb '$(DESTDIR_SQ)$(bindir_SQ)' - $(INSTALL) git-shell.pdb '$(DESTDIR_SQ)$(bindir_SQ)' -- $(INSTALL) git-upload-pack.pdb '$(DESTDIR_SQ)$(bindir_SQ)' -- $(INSTALL) git-credential-store.pdb '$(DESTDIR_SQ)$(gitexec_instdir_SQ)' - $(INSTALL) git-daemon.pdb '$(DESTDIR_SQ)$(gitexec_instdir_SQ)' -- $(INSTALL) git-fast-import.pdb '$(DESTDIR_SQ)$(gitexec_instdir_SQ)' - $(INSTALL) git-http-backend.pdb '$(DESTDIR_SQ)$(gitexec_instdir_SQ)' - $(INSTALL) git-http-fetch.pdb '$(DESTDIR_SQ)$(gitexec_instdir_SQ)' - $(INSTALL) git-http-push.pdb '$(DESTDIR_SQ)$(gitexec_instdir_SQ)' - $(INSTALL) git-imap-send.pdb '$(DESTDIR_SQ)$(gitexec_instdir_SQ)' - $(INSTALL) git-remote-http.pdb '$(DESTDIR_SQ)$(gitexec_instdir_SQ)' -- $(INSTALL) git-remote-testsvn.pdb '$(DESTDIR_SQ)$(gitexec_instdir_SQ)' - $(INSTALL) git-sh-i18n--envsubst.pdb '$(DESTDIR_SQ)$(gitexec_instdir_SQ)' -- $(INSTALL) git-show-index.pdb '$(DESTDIR_SQ)$(gitexec_instdir_SQ)' + $(INSTALL) $(patsubst %.exe,%.pdb,$(filter-out $(BUILT_INS),$(patsubst %,%$X,$(BINDIR_PROGRAMS_NEED_X)))) '$(DESTDIR_SQ)$(bindir_SQ)' + $(INSTALL) $(patsubst %.exe,%.pdb,$(filter-out $(BUILT_INS) $(REMOTE_CURL_ALIASES),$(PROGRAMS))) '$(DESTDIR_SQ)$(gitexec_instdir_SQ)' ifndef DEBUG 2: 52deafded5 = 2: 14d6eeefbc Optionally skip linking/copying the built-ins 3: 99a5328492 < -: ---------- ci: stop linking built-ins to the dashed versions -: ---------- > 3: 1fdf24af36 ci: stop linking built-ins to the dashed versions -- gitgitgadget