From: Junio C Hamano <junkio@cox.net>
Date: Mon, 12 Feb 2007 07:04:00 +0000 (-0800)
Subject: Merge git-gui
X-Git-Tag: v1.5.0~21
X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=b4d2b04c9b6dc42c0bcf0513b9d8f731ec26db82;p=git.git

Merge git-gui

This merges git-gui project of Shawn as a subproject of git.git
at git-gui/ subdirectory.

This merge only melds two histories together.  The toplevel Makefile
does not even know about git-gui yet.

Signed-off-by: Junio C Hamano <junkio@cox.net>
---

b4d2b04c9b6dc42c0bcf0513b9d8f731ec26db82
diff --cc git-gui/.gitignore
index 000000000,000000000..c714d382e
new file mode 100644
--- /dev/null
+++ b/git-gui/.gitignore
@@@ -1,0 -1,0 +1,3 @@@
++GIT-VERSION-FILE
++git-citool
++git-gui
diff --cc git-gui/GIT-VERSION-GEN
index 000000000,000000000..79f1c527f
new file mode 100755
--- /dev/null
+++ b/git-gui/GIT-VERSION-GEN
@@@ -1,0 -1,0 +1,46 @@@
++#!/bin/sh
++
++GVF=GIT-VERSION-FILE
++DEF_VER=v0.5.GIT
++
++LF='
++'
++
++# First try git-describe, then see if there is a version file
++# (included in release tarballs), then default
++if VN=$(git describe --abbrev=4 HEAD 2>/dev/null) &&
++   case "$VN" in
++   *$LF*) (exit 1) ;;
++   v[0-9]*) : happy ;;
++   esac
++then
++	VN=$(echo "$VN" | sed -e 's/-/./g');
++elif test -f version
++then
++	VN=$(cat version) || VN="$DEF_VER"
++else
++	VN="$DEF_VER"
++fi
++
++VN=$(expr "$VN" : v*'\(.*\)')
++
++dirty=$(sh -c 'git diff-index --name-only HEAD' 2>/dev/null) || dirty=
++case "$dirty" in
++'')
++	;;
++*)
++	VN="$VN-dirty" ;;
++esac
++
++if test -r $GVF
++then
++	VC=$(sed -e 's/^GIT_VERSION = //' <$GVF)
++else
++	VC=unset
++fi
++test "$VN" = "$VC" || {
++	echo >&2 "GIT_VERSION = $VN"
++	echo "GIT_VERSION = $VN" >$GVF
++}
++
++
diff --cc git-gui/Makefile
index 000000000,000000000..8fade6912
new file mode 100644
--- /dev/null
+++ b/git-gui/Makefile
@@@ -1,0 -1,0 +1,48 @@@
++all::
++
++GIT-VERSION-FILE: .FORCE-GIT-VERSION-FILE
++	@$(SHELL_PATH) ./GIT-VERSION-GEN
++-include GIT-VERSION-FILE
++
++SCRIPT_SH = git-gui.sh
++GITGUI_BUILT_INS = git-citool
++ALL_PROGRAMS = $(GITGUI_BUILT_INS) $(patsubst %.sh,%,$(SCRIPT_SH))
++
++ifndef SHELL_PATH
++	SHELL_PATH = /bin/sh
++endif
++
++gitexecdir := $(shell git --exec-path)
++INSTALL = install
++
++DESTDIR_SQ = $(subst ','\'',$(DESTDIR))
++gitexecdir_SQ = $(subst ','\'',$(gitexecdir))
++
++SHELL_PATH_SQ = $(subst ','\'',$(SHELL_PATH))
++
++$(patsubst %.sh,%,$(SCRIPT_SH)) : % : %.sh
++	rm -f $@ $@+
++	sed -e '1s|#!.*/sh|#!$(SHELL_PATH_SQ)|' \
++		-e 's/@@GIT_VERSION@@/$(GIT_VERSION)/g' \
++		$@.sh >$@+
++	chmod +x $@+
++	mv $@+ $@
++
++$(GITGUI_BUILT_INS): git-gui
++	rm -f $@ && ln git-gui $@
++
++# These can record GIT_VERSION
++$(patsubst %.sh,%,$(SCRIPT_SH)): GIT-VERSION-FILE
++
++all:: $(ALL_PROGRAMS)
++
++install: all
++	$(INSTALL) -d -m755 '$(DESTDIR_SQ)$(gitexecdir_SQ)'
++	$(INSTALL) git-gui '$(DESTDIR_SQ)$(gitexecdir_SQ)'
++	$(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) GIT-VERSION-FILE
++
++.PHONY: all install clean
++.PHONY: .FORCE-GIT-VERSION-FILE
diff --cc git-gui/TODO
index 000000000,b95a13732..b95a13732
mode 000000,100644..100644
--- a/git-gui/TODO
+++ b/git-gui/TODO
diff --cc git-gui/git-gui.sh
index 000000000,ea16be43a..ea16be43a
mode 000000,100755..100755
--- a/git-gui/git-gui.sh
+++ b/git-gui/git-gui.sh