Merge pull request #570 from petitlapin/dll_info
CMake/Windows: store Expat version in the dll
This commit is contained in:
commit
6aa6a82d24
@ -381,7 +381,7 @@ endforeach()
|
|||||||
#
|
#
|
||||||
# C library
|
# C library
|
||||||
#
|
#
|
||||||
set(expat_SRCS
|
set(_EXPAT_C_SOURCES
|
||||||
lib/xmlparse.c
|
lib/xmlparse.c
|
||||||
lib/xmlrole.c
|
lib/xmlrole.c
|
||||||
lib/xmltok.c
|
lib/xmltok.c
|
||||||
@ -393,13 +393,18 @@ set(expat_SRCS
|
|||||||
if(EXPAT_SHARED_LIBS)
|
if(EXPAT_SHARED_LIBS)
|
||||||
set(_SHARED SHARED)
|
set(_SHARED SHARED)
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
set(expat_SRCS ${expat_SRCS} lib/libexpat.def)
|
set(_EXPAT_EXTRA_SOURCES ${_EXPAT_EXTRA_SOURCES} lib/libexpat.def)
|
||||||
|
endif()
|
||||||
|
if(WIN32)
|
||||||
|
# Add DLL version
|
||||||
|
string(REPLACE "." "," _EXPAT_DLL_VERSION ${PROJECT_VERSION}.0)
|
||||||
|
set(_EXPAT_EXTRA_SOURCES ${_EXPAT_EXTRA_SOURCES} win32/version.rc)
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
set(_SHARED STATIC)
|
set(_SHARED STATIC)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
add_library(expat ${_SHARED} ${expat_SRCS})
|
add_library(expat ${_SHARED} ${_EXPAT_C_SOURCES} ${_EXPAT_EXTRA_SOURCES})
|
||||||
if(_EXPAT_LIBM_FOUND)
|
if(_EXPAT_LIBM_FOUND)
|
||||||
target_link_libraries(expat m)
|
target_link_libraries(expat m)
|
||||||
endif()
|
endif()
|
||||||
@ -434,9 +439,13 @@ target_include_directories(expat
|
|||||||
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
|
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
|
||||||
)
|
)
|
||||||
|
|
||||||
if(NOT EXPAT_SHARED_LIBS AND WIN32)
|
if(WIN32)
|
||||||
|
if(EXPAT_SHARED_LIBS)
|
||||||
|
target_compile_definitions(expat PRIVATE VER_FILEVERSION=${_EXPAT_DLL_VERSION})
|
||||||
|
else()
|
||||||
target_compile_definitions(expat PUBLIC -DXML_STATIC)
|
target_compile_definitions(expat PUBLIC -DXML_STATIC)
|
||||||
endif()
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
expat_install(TARGETS expat EXPORT expat
|
expat_install(TARGETS expat EXPORT expat
|
||||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||||
@ -550,7 +559,7 @@ if(EXPAT_BUILD_TESTS)
|
|||||||
tests/memcheck.c
|
tests/memcheck.c
|
||||||
tests/minicheck.c
|
tests/minicheck.c
|
||||||
tests/structdata.c
|
tests/structdata.c
|
||||||
${expat_SRCS}
|
${_EXPAT_C_SOURCES}
|
||||||
)
|
)
|
||||||
|
|
||||||
if(NOT MSVC)
|
if(NOT MSVC)
|
||||||
@ -619,7 +628,7 @@ if(EXPAT_BUILD_FUZZERS)
|
|||||||
set(encoding_types UTF-16 UTF-8 ISO-8859-1 US-ASCII UTF-16BE UTF-16LE)
|
set(encoding_types UTF-16 UTF-8 ISO-8859-1 US-ASCII UTF-16BE UTF-16LE)
|
||||||
set(fuzz_targets xml_parse_fuzzer xml_parsebuffer_fuzzer)
|
set(fuzz_targets xml_parse_fuzzer xml_parsebuffer_fuzzer)
|
||||||
|
|
||||||
add_library(fuzzpat STATIC ${expat_SRCS})
|
add_library(fuzzpat STATIC ${_EXPAT_C_SOURCES})
|
||||||
if(NOT EXPAT_OSSFUZZ_BUILD)
|
if(NOT EXPAT_OSSFUZZ_BUILD)
|
||||||
target_compile_options(fuzzpat PRIVATE -fsanitize=fuzzer-no-link)
|
target_compile_options(fuzzpat PRIVATE -fsanitize=fuzzer-no-link)
|
||||||
endif()
|
endif()
|
||||||
|
@ -82,7 +82,8 @@ _EXTRA_DIST_WINDOWS = \
|
|||||||
win32/build_expat_iss.bat \
|
win32/build_expat_iss.bat \
|
||||||
win32/expat.iss \
|
win32/expat.iss \
|
||||||
win32/MANIFEST.txt \
|
win32/MANIFEST.txt \
|
||||||
win32/README.txt
|
win32/README.txt \
|
||||||
|
win32/version.rc
|
||||||
|
|
||||||
EXTRA_DIST = \
|
EXTRA_DIST = \
|
||||||
$(_EXTRA_DIST_CMAKE) \
|
$(_EXTRA_DIST_CMAKE) \
|
||||||
|
@ -76,6 +76,7 @@ Flags: ignoreversion; Source: doc\*.css; DestDir: "{app}\Doc"
|
|||||||
Flags: ignoreversion; Source: doc\*.xml; DestDir: "{app}\Doc"
|
Flags: ignoreversion; Source: doc\*.xml; DestDir: "{app}\Doc"
|
||||||
Flags: ignoreversion; Source: win32\bin\Release\*.dll; DestDir: "{app}\Bin"
|
Flags: ignoreversion; Source: win32\bin\Release\*.dll; DestDir: "{app}\Bin"
|
||||||
Flags: ignoreversion; Source: win32\bin\Release\*.lib; DestDir: "{app}\Bin"
|
Flags: ignoreversion; Source: win32\bin\Release\*.lib; DestDir: "{app}\Bin"
|
||||||
|
Flags: ignoreversion; Source: win32\version.rc; DestDir: "{app}\Bin"
|
||||||
Flags: ignoreversion; Source: win32\README.txt; DestDir: "{app}\Source"
|
Flags: ignoreversion; Source: win32\README.txt; DestDir: "{app}\Source"
|
||||||
Flags: ignoreversion; Source: AUTHORS; DestDir: "{app}\Source"
|
Flags: ignoreversion; Source: AUTHORS; DestDir: "{app}\Source"
|
||||||
Flags: ignoreversion; Source: Changes; DestDir: "{app}\Source"
|
Flags: ignoreversion; Source: Changes; DestDir: "{app}\Source"
|
||||||
|
17
expat/win32/version.rc
Normal file
17
expat/win32/version.rc
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
1 VERSIONINFO
|
||||||
|
FILEVERSION VER_FILEVERSION
|
||||||
|
PRODUCTVERSION VER_FILEVERSION
|
||||||
|
BEGIN
|
||||||
|
BLOCK "StringFileInfo"
|
||||||
|
BEGIN
|
||||||
|
BLOCK "040904E4"
|
||||||
|
BEGIN
|
||||||
|
VALUE "FileVersion", "VER_FILEVERSION"
|
||||||
|
VALUE "ProductVersion", "VER_FILEVERSION"
|
||||||
|
END
|
||||||
|
END
|
||||||
|
BLOCK "VarFileInfo"
|
||||||
|
BEGIN
|
||||||
|
VALUE "Translation", 0x0409, 1252
|
||||||
|
END
|
||||||
|
END
|
Loading…
Reference in New Issue
Block a user