Provide a Windows version resource for the git executables.

Embeds the git version and description into the git executable thus implementing the request in issue #5. Acked-by: Heiko Voigt <hvoigt@hvoigt.net> Acked-by: Sebastian Schuberth <sschuberth@gmail.com> Acked-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>

Pat Thoyts committed May 24, 2012 at 00:56 UTC ce39c2e04ced177747d02de83f61989dcbcca44e
4 files changed +32 -1
.gitignore
+1
@@ -229,6 +229,7 @@
229 /cscope*
230 *.obj
231 *.lib
232 +*.res
233 *.sln
234 *.suo
235 *.ncb
Makefile
+7 -1
@@ -1529,6 +1529,7 @@ ifndef V
1529 QUIET_MSGFMT = @echo ' ' MSGFMT $@;
1530 QUIET_GCOV = @echo ' ' GCOV $@;
1531 QUIET_SP = @echo ' ' SP $<;
1532 + QUIET_RC = @echo ' ' RC $@;
1533 QUIET_SUBDIR0 = +@subdir=
1534 QUIET_SUBDIR1 = ;$(NO_SUBDIR) echo ' ' SUBDIR $$subdir; \
1535 $(MAKE) $(PRINT_DIR) -C $$subdir
@@ -1774,6 +1775,11 @@ $(SCRIPT_LIB) : % : %.sh GIT-SCRIPT-DEFINES
1775 $(QUIET_GEN)$(cmd_munge_script) && \
1776 mv $@+ $@
1777
1778 +git.res: git.rc
1779 + $(QUIET_RC)$(RC) \
1780 + $(join -DMAJOR= -DMINOR= -DPATCH=, $(wordlist 1,3,$(subst ., ,$(GIT_VERSION)))) \
1781 + -DGIT_VERSION="\\\"$(GIT_VERSION)\\\"" $< -o $@
1782 +
1783 ifndef NO_PERL
1784 $(patsubst %.perl,%,$(SCRIPT_PERL)): perl/perl.mak
1785
@@ -2474,7 +2480,7 @@ profile-clean:
2480 $(RM) $(addsuffix *.gcno,$(addprefix $(PROFILE_DIR)/, $(object_dirs)))
2481
2482 clean: profile-clean coverage-clean
2477 - $(RM) *.o block-sha1/*.o ppc/*.o compat/*.o compat/*/*.o xdiff/*.o vcs-svn/*.o \
2483 + $(RM) *.o *.res block-sha1/*.o ppc/*.o compat/*.o compat/*/*.o xdiff/*.o vcs-svn/*.o \
2484 builtin/*.o $(LIB_FILE) $(XDIFF_LIB) $(VCSSVN_LIB)
2485 $(RM) $(ALL_PROGRAMS) $(SCRIPT_LIB) $(BUILT_INS) git$X
2486 $(RM) $(TEST_PROGRAMS)
config.mak.uname
+2
@@ -507,7 +507,9 @@ ifneq (,$(findstring MINGW,$(uname_S)))
507 compat/win32/dirent.o
508 BASIC_LDFLAGS += -Wl,--large-address-aware
509 EXTLIBS += -lws2_32
510 + GITLIBS += git.res
511 PTHREAD_LIBS =
512 + RC = windres -O coff
513 NATIVE_CRLF = YesPlease
514 X = .exe
515 SPARSE_FLAGS = -Wno-one-bit-signed-bitfield
git.rc new
+22
@@ -0,0 +1,22 @@
1 +1 VERSIONINFO
2 +FILEVERSION MAJOR,MINOR,PATCH,0
3 +PRODUCTVERSION MAJOR,MINOR,PATCH,0
4 +BEGIN
5 + BLOCK "StringFileInfo"
6 + BEGIN
7 + BLOCK "040904b0" /* LANG_ENGLISH/SUBLANG_ENGLISH_US, Unicode CP */
8 + BEGIN
9 + VALUE "CompanyName", "The Git Development Community\0"
10 + VALUE "FileDescription", "Git for Windows\0"
11 + VALUE "InternalName", "git\0"
12 + VALUE "OriginalFilename", "git.exe\0"
13 + VALUE "ProductName", "Git\0"
14 + VALUE "ProductVersion", GIT_VERSION "\0"
15 + END
16 + END
17 +
18 + BLOCK "VarFileInfo"
19 + BEGIN
20 + VALUE "Translation", 0x409, 1200
21 + END
22 +END