From: Shawn O. Pearce Date: Sun, 29 Apr 2007 07:02:10 +0000 (-0400) Subject: git-gui: Track our own embedded values and rebuild when they change X-Git-Tag: gitgui-0.7.0-rc1~7 X-Git-Url: https://git.tokkee.org/?a=commitdiff_plain;h=c6a5e4030320c934bca70471d04aa9e7d8e2cd67;p=git.git git-gui: Track our own embedded values and rebuild when they change Like core-Git we now track the values that we embed into our shell script wrapper, and we "recompile" that wrapper if they are changed. This concept was lifted from git.git's Makefile, where a similar thing was done by Eygene Ryabinkin. Too bad it wasn't just done here in git-gui from the beginning, as the git.git Makefile support for GIT-GUI-VARS was really just because git-gui doesn't do it on its own. Signed-off-by: Shawn O. Pearce --- diff --git a/.gitignore b/.gitignore index c714d382e..57cced8c1 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ GIT-VERSION-FILE +GIT-GUI-VARS git-citool git-gui diff --git a/Makefile b/Makefile index b29d7d1e6..3b6282e73 100644 --- a/Makefile +++ b/Makefile @@ -53,7 +53,19 @@ $(GITGUI_BUILT_INS): git-gui $(QUIET_BUILT_IN)rm -f $@ && ln git-gui $@ # These can record GITGUI_VERSION -$(patsubst %.sh,%,$(SCRIPT_SH)): GIT-VERSION-FILE +$(patsubst %.sh,%,$(SCRIPT_SH)): GIT-VERSION-FILE GIT-GUI-VARS + +TRACK_VARS = \ + $(subst ','\'',SHELL_PATH='$(SHELL_PATH_SQ)') \ + $(subst ','\'',TCLTK_PATH='$(TCLTK_PATH_SQ)') \ +#end TRACK_VARS + +GIT-GUI-VARS: .FORCE-GIT-GUI-VARS + @VARS='$(TRACK_VARS)'; \ + if test x"$$VARS" != x"`cat $@ 2>/dev/null`" ; then \ + echo 1>&2 " * new locations or Tcl/Tk interpreter"; \ + echo 1>$@ "$$VARS"; \ + fi all:: $(ALL_PROGRAMS) @@ -67,7 +79,8 @@ dist-version: @echo $(GITGUI_VERSION) > $(TARDIR)/version clean:: - rm -f $(ALL_PROGRAMS) GIT-VERSION-FILE + rm -f $(ALL_PROGRAMS) GIT-VERSION-FILE GIT-GUI-VARS .PHONY: all install dist-version clean .PHONY: .FORCE-GIT-VERSION-FILE +.PHONY: .FORCE-GIT-GUI-VARS