Commit 6053616393c7a522b94fac573a2ae1fe4ad86cc5

Edward Thomson 2020-07-09T22:56:44

Merge pull request #5561 from A-Ovchinnikov-mx/a-ovchin/windres-rc Enable building git2.rc resource script with GCC

diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 481707c..8f139ec 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -278,9 +278,7 @@ list(SORT SRC_H)
 
 # On Windows use specific platform sources
 if(WIN32 AND NOT CYGWIN)
-	if(MSVC)
-		SET(WIN_RC "win32/git2.rc")
-	endif()
+	SET(WIN_RC "win32/git2.rc")
 
 	file(GLOB SRC_OS win32/*.c win32/*.h)
 	list(SORT SRC_OS)
diff --git a/src/win32/git2.rc b/src/win32/git2.rc
index 3571bc6..d273afd 100644
--- a/src/win32/git2.rc
+++ b/src/win32/git2.rc
@@ -2,14 +2,29 @@
 #include "../../include/git2/version.h"
 
 #ifndef LIBGIT2_FILENAME
-# define LIBGIT2_FILENAME "git2"
+# ifdef __GNUC__
+#  define LIBGIT2_FILENAME git2
+# else
+#  define LIBGIT2_FILENAME "git2"
+# endif
 #endif
 
 #ifndef LIBGIT2_COMMENTS
 # define LIBGIT2_COMMENTS "For more information visit http://libgit2.github.com/"
 #endif
 
+#ifdef __GNUC__
+# define _STR(x) #x
+# define STR(x) _STR(x)
+#else
+# define STR(x) x
+#endif
+
+#ifdef __GNUC__
+VS_VERSION_INFO		VERSIONINFO
+#else
 VS_VERSION_INFO		VERSIONINFO	MOVEABLE IMPURE LOADONCALL DISCARDABLE
+#endif
   FILEVERSION		LIBGIT2_VER_MAJOR,LIBGIT2_VER_MINOR,LIBGIT2_VER_REVISION,LIBGIT2_VER_PATCH
   PRODUCTVERSION	LIBGIT2_VER_MAJOR,LIBGIT2_VER_MINOR,LIBGIT2_VER_REVISION,LIBGIT2_VER_PATCH
   FILEFLAGSMASK		VS_FFI_FILEFLAGSMASK
@@ -29,9 +44,9 @@ BEGIN
     BEGIN
       VALUE "FileDescription",	"libgit2 - the Git linkable library\0"
       VALUE "FileVersion",	LIBGIT2_VERSION "\0"
-      VALUE "InternalName",	LIBGIT2_FILENAME ".dll\0"
+      VALUE "InternalName",	STR(LIBGIT2_FILENAME) ".dll\0"
       VALUE "LegalCopyright",	"Copyright (C) the libgit2 contributors. All rights reserved.\0"
-      VALUE "OriginalFilename",	LIBGIT2_FILENAME ".dll\0"
+      VALUE "OriginalFilename",	STR(LIBGIT2_FILENAME) ".dll\0"
       VALUE "ProductName",	"libgit2\0"
       VALUE "ProductVersion",	LIBGIT2_VERSION "\0"
       VALUE "Comments",		LIBGIT2_COMMENTS "\0"