### Build rules
-all: $(PROGRAMS)
+all: $(PROGRAMS) git.sh
all:
$(MAKE) -C templates
+git.sh: git.sh.in Makefile
+ rm -f $@+ $@
+ sed -e 's/@@GIT_VERSION@@/$(GIT_VERSION)/g' <$@.in >$@+
+ chmod +x $@+
+ mv $@+ $@
+
%.o: %.c
$(CC) -o $*.o -c $(ALL_CFLAGS) $<
%.o: %.S
clean:
rm -f *.o mozilla-sha1/*.o ppc/*.o $(PROGRAMS) $(LIB_FILE)
- rm -f git-core.spec
+ rm -f git-core.spec git.sh
rm -rf $(GIT_TARNAME)
rm -f $(GIT_TARNAME).tar.gz git-core_$(GIT_VERSION)-*.tar.gz
rm -f git-core_$(GIT_VERSION)-*.deb git-core_$(GIT_VERSION)-*.dsc
+++ /dev/null
-#!/bin/sh
-
-cmd=
-path=$(dirname $0)
-case "$#" in
-0) ;;
-*) cmd="$1"
- shift
- test -x $path/git-$cmd && exec $path/git-$cmd "$@" ;;
-esac
-
-echo "Usage: git COMMAND [OPTIONS] [TARGET]"
-if [ -n "$cmd" ]; then
- echo " git command '$cmd' not found: commands are:"
-else
- echo " git commands are:"
-fi
-
-cat <<\EOF
- add apply archimport bisect branch checkout cherry clone
- commit count-objects cvsimport diff fetch format-patch
- fsck-cache get-tar-commit-id init-db log ls-remote octopus
- pack-objects parse-remote patch-id prune pull push rebase
- relink rename repack request-pull reset resolve revert
- send-email shortlog show-branch status tag verify-tag
- whatchanged
-EOF
--- /dev/null
+#!/bin/sh
+
+cmd=
+path=$(dirname $0)
+case "$#" in
+0) ;;
+*) cmd="$1"
+ shift
+ case "$cmd" in
+ -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
+ echo "git version @@GIT_VERSION@@"
+ exit 0 ;;
+ esac
+ test -x $path/git-$cmd && exec $path/git-$cmd "$@" ;;
+esac
+
+echo "Usage: git COMMAND [OPTIONS] [TARGET]"
+if [ -n "$cmd" ]; then
+ echo " git command '$cmd' not found: commands are:"
+else
+ echo " git commands are:"
+fi
+
+cat <<\EOF
+ add apply archimport bisect branch checkout cherry clone
+ commit count-objects cvsimport diff fetch format-patch
+ fsck-cache get-tar-commit-id init-db log ls-remote octopus
+ pack-objects parse-remote patch-id prune pull push rebase
+ relink rename repack request-pull reset resolve revert
+ send-email shortlog show-branch status tag verify-tag
+ whatchanged
+EOF