Restore use of Windows resource when building a Windows DLL
git-svn-id: https://svn.apache.org/repos/asf/xerces/c/trunk@1827134 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 2b45097..c29aa25 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -1239,6 +1239,16 @@
list(APPEND libxerces_c_HEADERS ${winfmgr_headers})
endif()
+# Windows resource. With some additional work to clean it up, it
+# might be possible to use with Cygwin and MinGW.
+if(MSVC)
+ configure_file(
+ "${CMAKE_CURRENT_SOURCE_DIR}/xercesc/util/version.rc.cmake.in"
+ "${CMAKE_CURRENT_BINARY_DIR}/xercesc/util/version.rc"
+ @ONLY)
+ list(APPEND libxerces_c_RESOURCES "${CMAKE_CURRENT_BINARY_DIR}/xercesc/util/version.rc")
+endif()
+
# Definitions required for building
add_definitions(
-DHAVE_CONFIG_H=1
@@ -1259,7 +1269,8 @@
set_target_properties(xerces-c-headers PROPERTIES FOLDER "Library")
add_library(xerces-c
- ${libxerces_c_SOURCES})
+ ${libxerces_c_SOURCES}
+ ${libxerces_c_RESOURCES})
target_link_libraries(xerces-c ${libxerces_c_DEPS})
if(XERCES_USE_NETACCESSOR_CURL)
target_include_directories(xerces-c SYSTEM PRIVATE ${CURL_INCLUDE_DIRS})
diff --git a/src/xercesc/util/version.rc.cmake.in b/src/xercesc/util/version.rc.cmake.in
new file mode 100644
index 0000000..f3f17ab
--- /dev/null
+++ b/src/xercesc/util/version.rc.cmake.in
@@ -0,0 +1,38 @@
+#include <windows.h>
+
+VS_VERSION_INFO VERSIONINFO
+ FILEVERSION @xerces-c_VERSION_MAJOR@,@xerces-c_VERSION_MINOR@,@xerces-c_VERSION_PATCH@,0
+ PRODUCTVERSION @xerces-c_VERSION_MAJOR@,@xerces-c_VERSION_MINOR@,@xerces-c_VERSION_PATCH@,0
+ FILEFLAGSMASK 0x17L
+#ifdef _DEBUG
+ FILEFLAGS VS_FF_DEBUG
+#else
+ FILEFLAGS 0x0L
+#endif
+ FILEOS VOS_NT_WINDOWS32
+ FILETYPE VFT_DLL
+ FILESUBTYPE VFT2_UNKNOWN
+BEGIN
+ BLOCK "StringFileInfo"
+ BEGIN
+ BLOCK "040904b0"
+ BEGIN
+ VALUE "Comments", "Dynamic linked library for Xerces-C++\0"
+ VALUE "CompanyName", "Apache Software Foundation\0"
+ VALUE "FileDescription", "Shared Library for Xerces-C++ Version @xerces-c_VERSION@\0"
+ VALUE "FileVersion", "@xerces-c_VERSION_MAJOR@, @xerces-c_VERSION_MINOR@, @xerces-c_VERSION_PATCH@\0"
+ VALUE "InternalName", XERCES_DLL_NAME
+ VALUE "LegalCopyright", "Copyright © 1999-2018 Apache Software Foundation; subject to licensing terms\0"
+ VALUE "LegalTrademarks", "\0"
+ VALUE "OriginalFilename", XERCES_DLL_NAME
+ VALUE "PrivateBuild", "\0"
+ VALUE "ProductName", "Xerces-C++ Version @xerces-c_VERSION@\0"
+ VALUE "ProductVersion", "@xerces-c_VERSION_MAJOR@, @xerces-c_VERSION_MINOR@, @xerces-c_VERSION_PATCH@\0"
+ VALUE "SpecialBuild", "\0"
+ END
+ END
+ BLOCK "VarFileInfo"
+ BEGIN
+ VALUE "Translation", 0x409, 0x04e4
+ END
+END