Add: Windows DLL version info header (#298)

Closes #294
This commit is contained in:
lady mesh 2019-09-19 16:27:40 +02:00 committed by Arseny Kapoulkine
parent 6202519ca6
commit 6fb765ca9d
2 changed files with 52 additions and 2 deletions

View File

@ -31,6 +31,9 @@ mark_as_advanced(CLEAR CMAKE_INSTALL_LIBDIR CMAKE_INSTALL_INCLUDEDIR)
set(HEADERS src/pugixml.hpp src/pugiconfig.hpp)
set(SOURCES src/pugixml.cpp)
if(BUILD_SHARED_LIBS AND MSVC)
set(PUGIXML_WINDLL_SRCS src/win32/pugixml.rc)
endif()
if(DEFINED BUILD_DEFINES)
foreach(DEFINE ${BUILD_DEFINES})
@ -46,10 +49,10 @@ endif()
if(BUILD_SHARED_AND_STATIC_LIBS)
add_library(pugixml-static STATIC ${HEADERS} ${SOURCES})
add_library(pugixml-shared SHARED ${HEADERS} ${SOURCES})
add_library(pugixml-shared SHARED ${HEADERS} ${SOURCES} ${PUGIXML_WINDLL_SRCS})
else()
if(BUILD_SHARED_LIBS)
add_library(pugixml SHARED ${HEADERS} ${SOURCES})
add_library(pugixml SHARED ${HEADERS} ${SOURCES} ${PUGIXML_WINDLL_SRCS})
else()
add_library(pugixml STATIC ${HEADERS} ${SOURCES})
endif()

47
src/win32/pugixml.rc Normal file
View File

@ -0,0 +1,47 @@
#include <winver.h>
//#include "../pugixml.hpp"
// TODO these defines should be moved to ../pugixml.hpp
// but when included pugixml.hpp(131): error RC2104: undefined keyword or key name: typedef
# define PUGIXML_VERSION_MAJOR 1
# define PUGIXML_VERSION_MINOR 10
# define PUGIXML_VERSION_PATCH 0
# define PUGIXML_VERSION_NUMBER "1.10.0\0"
#ifdef GCC_WINDRES
VS_VERSION_INFO VERSIONINFO
#else
VS_VERSION_INFO VERSIONINFO MOVEABLE IMPURE LOADONCALL DISCARDABLE
#endif
FILEVERSION PUGIXML_VERSION_MAJOR,PUGIXML_VERSION_MINOR,PUGIXML_VERSION_PATCH,0
PRODUCTVERSION PUGIXML_VERSION_MAJOR,PUGIXML_VERSION_MINOR,PUGIXML_VERSION_PATCH,0
FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
#ifdef _DEBUG
FILEFLAGS 1
#else
FILEFLAGS 0
#endif
FILEOS VOS__WINDOWS32
FILETYPE VFT_DLL
FILESUBTYPE 0 // not used
BEGIN
BLOCK "StringFileInfo"
BEGIN
BLOCK "040904E4"
//language ID = U.S. English, char set = Windows, Multilingual
BEGIN
VALUE "CompanyName", "zeux/pugixml\0"
VALUE "FileDescription", "pugixml library\0"
VALUE "FileVersion", PUGIXML_VERSION_NUMBER
VALUE "InternalName", "pugixml.dll\0"
VALUE "LegalCopyright", "Copyright (C) 2006-2019, by Arseny Kapoulkine\0"
VALUE "OriginalFilename", "pugixml.dll\0"
VALUE "ProductName", "pugixml\0"
VALUE "ProductVersion", PUGIXML_VERSION_NUMBER
VALUE "Comments", "For more information visit https://github.com/zeux/pugixml/\0"
END
END
BLOCK "VarFileInfo"
BEGIN
VALUE "Translation", 0x0409, 1252
END
END