diff options
author | Shawn O. Pearce <spearce@spearce.org> | 2007-01-20 20:00:07 -0500 |
---|---|---|
committer | Shawn O. Pearce <spearce@spearce.org> | 2007-01-21 02:54:18 -0500 |
commit | 41bdcda37376a5faa63028f01260890723c3fcfa (patch) | |
tree | 528acec397c402d61615b58ad79c498664ef5534 | |
parent | c25623321d52642fe8fb80c64904a53363f91b12 (diff) | |
download | git-41bdcda37376a5faa63028f01260890723c3fcfa.tar.gz git-41bdcda37376a5faa63028f01260890723c3fcfa.tar.xz |
git-gui: Modified makefile to embed version into git-gui script.
We want to embed the version of git-gui directly into the script file,
so that we can display it properly in the about dialog. Consequently
I've refactored the Makefile process to act like the one in core git.git
with regards to shell scripts, allowing git-gui to be constructed by a
sed replacement performed on git-gui.sh.
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
-rw-r--r-- | .gitignore | 2 | ||||
-rw-r--r-- | Makefile | 31 | ||||
l--------- | git-citool | 1 | ||||
-rwxr-xr-x | git-gui.sh (renamed from git-gui) | 3 |
4 files changed, 32 insertions, 5 deletions
diff --git a/.gitignore b/.gitignore new file mode 100644 index 000000000..5bda901ae --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +git-citool +git-gui @@ -1,4 +1,13 @@ -all: git-gui +all:: + +SCRIPT_SH = git-gui.sh +GITGUI_BUILT_INS = git-citool +ALL_PROGRAMS = $(GITGUI_BUILT_INS) $(patsubst %.sh,%,$(SCRIPT_SH)) +GITGUI_VERSION := $(shell git describe) + +ifndef SHELL_PATH + SHELL_PATH = /bin/sh +endif gitexecdir := $(shell git --exec-path) INSTALL = install @@ -6,9 +15,25 @@ INSTALL = install DESTDIR_SQ = $(subst ','\'',$(DESTDIR)) gitexecdir_SQ = $(subst ','\'',$(gitexecdir)) -GITGUI_BUILTIN = git-citool +SHELL_PATH_SQ = $(subst ','\'',$(SHELL_PATH)) + +$(patsubst %.sh,%,$(SCRIPT_SH)) : % : %.sh + rm -f $@ $@+ + sed -e '1s|#!.*/sh|#!$(SHELL_PATH_SQ)|' \ + -e 's/@@GITGUI_VERSION@@/$(GITGUI_VERSION)/g' \ + $@.sh >$@+ + chmod +x $@+ + mv $@+ $@ + +$(GITGUI_BUILT_INS): git-gui + rm -f $@ && ln git-gui $@ + +all:: $(ALL_PROGRAMS) install: all $(INSTALL) -d -m755 '$(DESTDIR_SQ)$(gitexecdir_SQ)' $(INSTALL) git-gui '$(DESTDIR_SQ)$(gitexecdir_SQ)' - $(foreach p,$(GITGUI_BUILTIN), rm -f '$(DESTDIR_SQ)$(gitexecdir_SQ)/$p' && ln '$(DESTDIR_SQ)$(gitexecdir_SQ)/git-gui' '$(DESTDIR_SQ)$(gitexecdir_SQ)/$p' ;) + $(foreach p,$(GITGUI_BUILT_INS), rm -f '$(DESTDIR_SQ)$(gitexecdir_SQ)/$p' && ln '$(DESTDIR_SQ)$(gitexecdir_SQ)/git-gui' '$(DESTDIR_SQ)$(gitexecdir_SQ)/$p' ;) + +clean:: + rm -f $(ALL_PROGRAMS) diff --git a/git-citool b/git-citool deleted file mode 120000 index b5f620fd0..000000000 --- a/git-citool +++ /dev/null @@ -1 +0,0 @@ -git-gui
\ No newline at end of file @@ -3,7 +3,7 @@ exec wish "$0" -- "$@" set copyright { -Copyright © 2006 Shawn Pearce, Paul Mackerras. +Copyright © 2006, 2007 Shawn Pearce, Paul Mackerras. All rights reserved. @@ -11,6 +11,7 @@ This program is free software; it may be used, copied, modified and distributed under the terms of the GNU General Public Licence, either version 2, or (at your option) any later version.} +set appvers {@@GITGUI_VERSION@@} set appname [lindex [file split $argv0] end] set gitdir {} |