From ce39c2e04ced177747d02de83f61989dcbcca44e Mon Sep 17 00:00:00 2001 From: Pat Thoyts Date: Thu, 24 May 2012 00:56:24 +0100 Subject: 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 Acked-by: Sebastian Schuberth Acked-by: Johannes Schindelin Signed-off-by: Pat Thoyts --- .gitignore | 1 + Makefile | 8 +++++++- config.mak.uname | 2 ++ git.rc | 22 ++++++++++++++++++++++ 4 files changed, 32 insertions(+), 1 deletion(-) create mode 100644 git.rc diff --git a/.gitignore b/.gitignore index 10aee94760..1640c3ad00 100644 --- a/.gitignore +++ b/.gitignore @@ -229,6 +229,7 @@ /cscope* *.obj *.lib +*.res *.sln *.suo *.ncb diff --git a/Makefile b/Makefile index 985598b014..7ba8640e18 100644 --- a/Makefile +++ b/Makefile @@ -1529,6 +1529,7 @@ ifndef V QUIET_MSGFMT = @echo ' ' MSGFMT $@; QUIET_GCOV = @echo ' ' GCOV $@; QUIET_SP = @echo ' ' SP $<; + QUIET_RC = @echo ' ' RC $@; QUIET_SUBDIR0 = +@subdir= QUIET_SUBDIR1 = ;$(NO_SUBDIR) echo ' ' SUBDIR $$subdir; \ $(MAKE) $(PRINT_DIR) -C $$subdir @@ -1774,6 +1775,11 @@ $(SCRIPT_LIB) : % : %.sh GIT-SCRIPT-DEFINES $(QUIET_GEN)$(cmd_munge_script) && \ mv $@+ $@ +git.res: git.rc + $(QUIET_RC)$(RC) \ + $(join -DMAJOR= -DMINOR= -DPATCH=, $(wordlist 1,3,$(subst ., ,$(GIT_VERSION)))) \ + -DGIT_VERSION="\\\"$(GIT_VERSION)\\\"" $< -o $@ + ifndef NO_PERL $(patsubst %.perl,%,$(SCRIPT_PERL)): perl/perl.mak @@ -2474,7 +2480,7 @@ profile-clean: $(RM) $(addsuffix *.gcno,$(addprefix $(PROFILE_DIR)/, $(object_dirs))) clean: profile-clean coverage-clean - $(RM) *.o block-sha1/*.o ppc/*.o compat/*.o compat/*/*.o xdiff/*.o vcs-svn/*.o \ + $(RM) *.o *.res block-sha1/*.o ppc/*.o compat/*.o compat/*/*.o xdiff/*.o vcs-svn/*.o \ builtin/*.o $(LIB_FILE) $(XDIFF_LIB) $(VCSSVN_LIB) $(RM) $(ALL_PROGRAMS) $(SCRIPT_LIB) $(BUILT_INS) git$X $(RM) $(TEST_PROGRAMS) diff --git a/config.mak.uname b/config.mak.uname index c5518fe330..04b97486a2 100644 --- a/config.mak.uname +++ b/config.mak.uname @@ -507,7 +507,9 @@ ifneq (,$(findstring MINGW,$(uname_S))) compat/win32/dirent.o BASIC_LDFLAGS += -Wl,--large-address-aware EXTLIBS += -lws2_32 + GITLIBS += git.res PTHREAD_LIBS = + RC = windres -O coff NATIVE_CRLF = YesPlease X = .exe SPARSE_FLAGS = -Wno-one-bit-signed-bitfield diff --git a/git.rc b/git.rc new file mode 100644 index 0000000000..bce6db96a3 --- /dev/null +++ b/git.rc @@ -0,0 +1,22 @@ +1 VERSIONINFO +FILEVERSION MAJOR,MINOR,PATCH,0 +PRODUCTVERSION MAJOR,MINOR,PATCH,0 +BEGIN + BLOCK "StringFileInfo" + BEGIN + BLOCK "040904b0" /* LANG_ENGLISH/SUBLANG_ENGLISH_US, Unicode CP */ + BEGIN + VALUE "CompanyName", "The Git Development Community\0" + VALUE "FileDescription", "Git for Windows\0" + VALUE "InternalName", "git\0" + VALUE "OriginalFilename", "git.exe\0" + VALUE "ProductName", "Git\0" + VALUE "ProductVersion", GIT_VERSION "\0" + END + END + + BLOCK "VarFileInfo" + BEGIN + VALUE "Translation", 0x409, 1200 + END +END -- cgit v1.2.3