Skip to content

Commit 3d092a6

Browse files
loriabrobertodr
authored andcommitted
export zlib dependency for static lib (#60)
1 parent 5d7ac75 commit 3d092a6

2 files changed

Lines changed: 24 additions & 14 deletions

File tree

cmake/PCMSolverConfig.cmake.in

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -154,5 +154,10 @@ if(NOT TARGET ${PN}::pcm)
154154
else()
155155
include("${CMAKE_CURRENT_LIST_DIR}/${PN}Targets-static.cmake")
156156
endif()
157+
158+
include(CMakeFindDependencyMacro)
159+
if(NOT TARGET ZLIB::ZLIB)
160+
find_dependency(ZLIB)
161+
endif()
157162
endif()
158163

src/CMakeLists.txt

Lines changed: 19 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
cmake_policy (SET CMP0022 NEW)
2+
13
include_directories(${CMAKE_CURRENT_LIST_DIR})
24
include_directories(SYSTEM ${CMAKE_CURRENT_LIST_DIR}/utils/getkw)
35

@@ -21,24 +23,27 @@ list(APPEND _objects $<TARGET_OBJECTS:cavity>
2123
$<TARGET_OBJECTS:getkw>
2224
)
2325
if(NOT STATIC_LIBRARY_ONLY)
24-
add_library(pcm-shared SHARED ${_objects})
25-
target_link_libraries(pcm-shared PRIVATE ${ZLIB_LIBRARIES} ${LIBC_INTERJECT})
26-
set_target_properties(pcm-shared PROPERTIES SOVERSION ${PROJECT_VERSION_MAJOR}
27-
CXX_VISIBILITY_PRESET hidden
28-
VISIBILITY_INLINES_HIDDEN 1
29-
OUTPUT_NAME "pcm"
30-
EXPORT_NAME "pcm")
31-
install(TARGETS pcm-shared
32-
EXPORT "${PROJECT_NAME}Targets-shared"
33-
RUNTIME DESTINATION ${CMAKE_INSTALL_LIBDIR}
34-
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
35-
add_dependencies(pcm-shared generate-config-hpp)
26+
add_library(pcm-shared SHARED ${_objects})
27+
target_link_libraries(pcm-shared PRIVATE ${LIBC_INTERJECT}
28+
ZLIB::ZLIB)
29+
set_target_properties(pcm-shared PROPERTIES SOVERSION ${PROJECT_VERSION_MAJOR}
30+
CXX_VISIBILITY_PRESET hidden
31+
VISIBILITY_INLINES_HIDDEN 1
32+
OUTPUT_NAME "pcm"
33+
EXPORT_NAME "pcm")
34+
35+
install(TARGETS pcm-shared
36+
EXPORT "${PROJECT_NAME}Targets-shared"
37+
RUNTIME DESTINATION ${CMAKE_INSTALL_LIBDIR}
38+
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
39+
add_dependencies(pcm-shared generate-config-hpp)
3640
endif()
3741

3842
if(NOT SHARED_LIBRARY_ONLY)
3943
add_library(pcm-static STATIC ${_objects})
40-
set_target_properties(pcm-static PROPERTIES OUTPUT_NAME "pcm"
41-
COMPILE_FLAGS -D${PROJECT_NAME}_STATIC_DEFINE
44+
target_link_libraries(pcm-static PRIVATE ZLIB::ZLIB)
45+
set_target_properties(pcm-static PROPERTIES COMPILE_FLAGS -D${PROJECT_NAME}_STATIC_DEFINE
46+
OUTPUT_NAME "pcm"
4247
EXPORT_NAME "pcm")
4348
install(TARGETS pcm-static
4449
EXPORT "${PROJECT_NAME}Targets-static"

0 commit comments

Comments
 (0)