From: Patrick Steinhardt Date: Tue, 11 Mar 2025 10:07:19 +0000 (+0100) Subject: git-gui: extract script to generate "git-gui" X-Git-Tag: v2.50.0-rc1~17^2^2~5 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=854e88335a3e68af46f62ce72037293920bd06f2;p=thirdparty%2Fgit.git git-gui: extract script to generate "git-gui" Extract script to generate "git-gui". This change allows us to reuse the build logic with the Meson build system. Signed-off-by: Patrick Steinhardt --- diff --git a/Makefile b/Makefile index 1cbb16a921..58a65dba24 100644 --- a/Makefile +++ b/Makefile @@ -127,7 +127,6 @@ gitexecdir_SQ = $(subst ','\'',$(gitexecdir)) SHELL_PATH_SQ = $(subst ','\'',$(SHELL_PATH)) TCL_PATH_SQ = $(subst ','\'',$(TCL_PATH)) TCLTK_PATH_SQ = $(subst ','\'',$(TCLTK_PATH)) -TCLTK_PATH_SED = $(subst ','\'',$(subst \,\\,$(TCLTK_PATH))) gg_libdir ?= $(sharedir)/git-gui/lib libdir_SQ = $(subst ','\'',$(gg_libdir)) @@ -202,16 +201,7 @@ git-gui: windows/git-gui.sh endif $(GITGUI_MAIN): git-gui.sh GIT-VERSION-FILE GIT-GUI-BUILD-OPTIONS - $(QUIET_GEN)rm -f $@ $@+ && \ - sed -e '1s|#!.*/sh|#!$(SHELL_PATH_SQ)|' \ - -e 's|@@SHELL_PATH@@|$(SHELL_PATH_SQ)|' \ - -e '1,30s|^ exec wish | exec '\''$(TCLTK_PATH_SED)'\'' |' \ - -e 's/@@GITGUI_VERSION@@/$(GITGUI_VERSION)/g' \ - -e 's|@@GITGUI_RELATIVE@@|$(GITGUI_RELATIVE)|' \ - -e '$(GITGUI_RELATIVE)s|@@GITGUI_LIBDIR@@|$(libdir_SED)|' \ - git-gui.sh >$@+ && \ - chmod +x $@+ && \ - mv $@+ $@ + $(QUIET_GEN)$(SHELL_PATH) generate-git-gui.sh "$<" "$@" ./GIT-GUI-BUILD-OPTIONS ./GIT-VERSION-FILE XGETTEXT ?= xgettext ifdef NO_MSGFMT diff --git a/generate-git-gui.sh b/generate-git-gui.sh new file mode 100755 index 0000000000..39dfafdc4a --- /dev/null +++ b/generate-git-gui.sh @@ -0,0 +1,29 @@ +#!/bin/sh + +set -e + +if test "$#" -ne 4 +then + echo >&2 "usage: $0 " + exit 1 +fi + +INPUT="$1" +OUTPUT="$2" +BUILD_OPTIONS="$3" +VERSION_FILE="$4" + +. "${BUILD_OPTIONS}" +. "${VERSION_FILE}" + +rm -f "$OUTPUT" "$OUTPUT+" +sed \ + -e "1s|#!.*/sh|#!$SHELL_PATH|" \ + -e "s|@@SHELL_PATH@@|$SHELL_PATH|" \ + -e "1,30s|^ exec wish | exec '$TCLTK_PATH' |" \ + -e "s|@@GITGUI_VERSION@@|$GITGUI_VERSION|g" \ + -e "s|@@GITGUI_RELATIVE@@|$GITGUI_RELATIVE|" \ + -e "${GITGUI_RELATIVE}s|@@GITGUI_LIBDIR@@|$GITGUI_LIBDIR|" \ + "$INPUT" >"$OUTPUT"+ +chmod +x "$OUTPUT"+ +mv "$OUTPUT"+ "$OUTPUT"