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