Skip to content

Commit 63d6855

Browse files
committed
Fixing TPL bug in linux and add a flag to avoid installing all system libs
1 parent d350ffb commit 63d6855

File tree

2 files changed

+39
-25
lines changed

2 files changed

+39
-25
lines changed

applications/HDF5Application/CMakeLists.txt

Lines changed: 18 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -145,17 +145,24 @@ file(TO_CMAKE_PATH "${HDF5_ROOT}/bin" HDF5_ROOT_DEP_BIN)
145145
# Install targets
146146
install(TARGETS KratosHDF5Core DESTINATION libs)
147147
install(TARGETS KratosHDF5Application DESTINATION libs)
148-
if(WIN32)
149-
install(DIRECTORY "${HDF5_ROOT_DEP_LIB}/" DESTINATION libs FILES_MATCHING PATTERN "*.dll")
150-
install(DIRECTORY "${HDF5_ROOT_DEP_BIN}/" DESTINATION libs FILES_MATCHING PATTERN "*.dll")
151-
endif()
152-
if(APPLE)
153-
install(DIRECTORY "${HDF5_ROOT_DEP_LIB}/" DESTINATION libs FILES_MATCHING PATTERN "*.dylib")
154-
install(DIRECTORY "${HDF5_ROOT_DEP_BIN}/" DESTINATION libs FILES_MATCHING PATTERN "*.dylib")
155-
endif()
156-
if(UNIX AND NOT APPLE)
157-
install(DIRECTORY "${HDF5_ROOT_DEP_LIB}/" DESTINATION libs FILES_MATCHING PATTERN "*.so*")
158-
install(DIRECTORY "${HDF5_ROOT_DEP_BIN}/" DESTINATION libs FILES_MATCHING PATTERN "*.so*")
148+
149+
# Install dependent libraries
150+
# Note: Please be carefull to enable this option if MED or HDF5 are system wide dependencies as it will
151+
# the full /lib system dir into kratos.
152+
if(${INSTALL_TPL_LIBRARIES} MATCHES ON)
153+
if(WIN32)
154+
install(DIRECTORY "${HDF5_ROOT_DEP_LIB}/" DESTINATION libs FILES_MATCHING PATTERN "*.dll")
155+
install(DIRECTORY "${HDF5_ROOT_DEP_BIN}/" DESTINATION libs FILES_MATCHING PATTERN "*.dll")
156+
endif()
157+
if(APPLE)
158+
install(DIRECTORY "${HDF5_ROOT_DEP_LIB}/" DESTINATION libs FILES_MATCHING PATTERN "*.dylib")
159+
install(DIRECTORY "${HDF5_ROOT_DEP_BIN}/" DESTINATION libs FILES_MATCHING PATTERN "*.dylib")
160+
endif()
161+
if(UNIX AND NOT APPLE)
162+
file(GLOB_RECURSE LIB_FILES "${HDF5_ROOT_DEP_LIB}/*.so*")
163+
file(GLOB_RECURSE LIB_FILES APPEND "${HDF5_ROOT_DEP_BIN}/*.so*")
164+
install(FILES ${LIB_FILES} DESTINATION libs)
165+
endif()
159166
endif()
160167

161168
# Define custom targets

applications/MedApplication/CMakeLists.txt

Lines changed: 21 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -84,20 +84,27 @@ file(TO_CMAKE_PATH "${MED_ROOT}/lib" MED_ROOT_DEP)
8484
# Install targets
8585
install(TARGETS KratosMedCore DESTINATION libs)
8686
install(TARGETS KratosMedApplication DESTINATION libs)
87-
if(WIN32)
88-
install(DIRECTORY "${HDF5_ROOT_DEP_LIB}/" DESTINATION libs FILES_MATCHING PATTERN "*.dll")
89-
install(DIRECTORY "${HDF5_ROOT_DEP_BIN}/" DESTINATION libs FILES_MATCHING PATTERN "*.dll")
90-
install(DIRECTORY "${MED_ROOT_DEP}/" DESTINATION libs FILES_MATCHING PATTERN "*.dll")
91-
endif()
92-
if(APPLE)
93-
install(DIRECTORY "${HDF5_ROOT_DEP_LIB}/" DESTINATION libs FILES_MATCHING PATTERN "*.dylib")
94-
install(DIRECTORY "${HDF5_ROOT_DEP_BIN}/" DESTINATION libs FILES_MATCHING PATTERN "*.dylib")
95-
install(DIRECTORY "${MED_ROOT_DEP}/" DESTINATION libs FILES_MATCHING PATTERN "*.dylib")
96-
endif()
97-
if(UNIX AND NOT APPLE)
98-
install(DIRECTORY "${HDF5_ROOT_DEP_LIB}/" DESTINATION libs FILES_MATCHING PATTERN "*.so*")
99-
install(DIRECTORY "${HDF5_ROOT_DEP_BIN}/" DESTINATION libs FILES_MATCHING PATTERN "*.so*")
100-
install(DIRECTORY "${MED_ROOT_DEP}/" DESTINATION libs FILES_MATCHING PATTERN "*.so*")
87+
88+
# Install dependent libraries
89+
# Note: Please be carefull to enable this option if MED or HDF5 are system wide dependencies as it will
90+
# the full /lib system dir into kratos.
91+
if(${INSTALL_TPL_LIBRARIES} MATCHES ON)
92+
if(WIN32)
93+
install(DIRECTORY "${HDF5_ROOT_DEP_LIB}/" DESTINATION libs FILES_MATCHING PATTERN "*.dll")
94+
install(DIRECTORY "${HDF5_ROOT_DEP_BIN}/" DESTINATION libs FILES_MATCHING PATTERN "*.dll")
95+
install(DIRECTORY "${MED_ROOT_DEP}/" DESTINATION libs FILES_MATCHING PATTERN "*.dll")
96+
endif()
97+
if(APPLE)
98+
install(DIRECTORY "${HDF5_ROOT_DEP_LIB}/" DESTINATION libs FILES_MATCHING PATTERN "*.dylib")
99+
install(DIRECTORY "${HDF5_ROOT_DEP_BIN}/" DESTINATION libs FILES_MATCHING PATTERN "*.dylib")
100+
install(DIRECTORY "${MED_ROOT_DEP}/" DESTINATION libs FILES_MATCHING PATTERN "*.dylib")
101+
endif()
102+
if(UNIX AND NOT APPLE)
103+
file(GLOB_RECURSE LIB_FILES "${HDF5_ROOT_DEP_LIB}/*.so*")
104+
file(GLOB_RECURSE LIB_FILES APPEND "${HDF5_ROOT_DEP_BIN}/*.so*")
105+
file(GLOB_RECURSE LIB_FILES APPEND "${MED_ROOT_DEP}/*.so*")
106+
install(FILES ${LIB_FILES} DESTINATION libs)
107+
endif()
101108
endif()
102109

103110
# Define custom targets

0 commit comments

Comments
 (0)