[xercec-c] no symlinks in static build (#7490) (#7500)

This commit is contained in:
crusader-mike 2019-08-06 12:31:03 -05:00 committed by Curtis J Bezault
parent 5c0c5adc64
commit 26a7e9ad34
2 changed files with 32 additions and 0 deletions

View File

@ -0,0 +1,31 @@
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index c29aa25..3106d77 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -1285,15 +1285,17 @@ if(MSVC)
set_target_properties(xerces-c PROPERTIES RUNTIME_OUTPUT_NAME "xerces-c_${INTERFACE_VERSION_U}")
set_target_properties(xerces-c PROPERTIES DEBUG_POSTFIX "D")
elseif(UNIX)
- # For strict libtool compatibility on Unix. It's a horrible hack to
- # set the version in the filename, and create the symlink at install
- # time. Note: could be dropped when the SONAME is updated and
- # libtool compatibility is no longer required.
- set_target_properties(xerces-c PROPERTIES OUTPUT_NAME "xerces-c-${INTERFACE_VERSION_D}")
- file(GENERATE
- OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/InstallLibrarySymlink.cmake"
- CONTENT "execute_process(COMMAND ln -sf \"$<TARGET_FILE_NAME:xerces-c>\" \"\$ENV{DESTDIR}${CMAKE_INSTALL_FULL_LIBDIR}/libxerces-c.so\")")
- install(SCRIPT "${CMAKE_CURRENT_BINARY_DIR}/InstallLibrarySymlink.cmake")
+ if(BUILD_SHARED_LIBS)
+ # For strict libtool compatibility on Unix. It's a horrible hack to
+ # set the version in the filename, and create the symlink at install
+ # time. Note: could be dropped when the SONAME is updated and
+ # libtool compatibility is no longer required.
+ set_target_properties(xerces-c PROPERTIES OUTPUT_NAME "xerces-c-${INTERFACE_VERSION_D}")
+ file(GENERATE
+ OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/InstallLibrarySymlink.cmake"
+ CONTENT "execute_process(COMMAND ln -sf \"$<TARGET_FILE_NAME:xerces-c>\" \"\$ENV{DESTDIR}${CMAKE_INSTALL_FULL_LIBDIR}/libxerces-c.so\")")
+ install(SCRIPT "${CMAKE_CURRENT_BINARY_DIR}/InstallLibrarySymlink.cmake")
+ endif()
else()
# Not used for the common cases, though this would be the default if
# not for libtool compatibility.

View File

@ -9,6 +9,7 @@ vcpkg_from_github(
PATCHES
disable-tests.patch
remove-dll-export-macro.patch
no-symlinks-in-static-build.patch
)
set(DISABLE_ICU ON)