mingw-w64: build both, shared and static libs
This commit is contained in:
parent
78c096e20a
commit
c4082d90c7
|
@ -121,6 +121,16 @@ set_target_properties(${META_PROJECT_NAME} PROPERTIES
|
||||||
SOVERSION ${META_VERSION_MAJOR}
|
SOVERSION ${META_VERSION_MAJOR}
|
||||||
CXX_STANDARD 11
|
CXX_STANDARD 11
|
||||||
)
|
)
|
||||||
|
if(MINGW)
|
||||||
|
# enable static library when building with mingw-w64
|
||||||
|
add_library(${META_PROJECT_NAME}_static STATIC ${HEADER_FILES} ${SRC_FILES} ${RES_FILES} ${WINDOWS_ICON_PATH})
|
||||||
|
set_target_properties(${META_PROJECT_NAME}_static PROPERTIES
|
||||||
|
VERSION ${META_VERSION_MAJOR}.${META_VERSION_MINOR}.${META_VERSION_PATCH}
|
||||||
|
SOVERSION ${META_VERSION_MAJOR}
|
||||||
|
OUTPUT_NAME ${META_PROJECT_NAME}
|
||||||
|
CXX_STANDARD 11
|
||||||
|
)
|
||||||
|
endif(MINGW)
|
||||||
|
|
||||||
# add check target
|
# add check target
|
||||||
if(NOT TARGET check)
|
if(NOT TARGET check)
|
||||||
|
@ -143,6 +153,16 @@ install(TARGETS ${META_PROJECT_NAME}
|
||||||
ARCHIVE DESTINATION lib
|
ARCHIVE DESTINATION lib
|
||||||
COMPONENT binary
|
COMPONENT binary
|
||||||
)
|
)
|
||||||
|
if(MINGW)
|
||||||
|
install(TARGETS ${META_PROJECT_NAME}_static
|
||||||
|
RUNTIME DESTINATION bin
|
||||||
|
COMPONENT binary
|
||||||
|
LIBRARY DESTINATION lib
|
||||||
|
COMPONENT binary
|
||||||
|
ARCHIVE DESTINATION lib
|
||||||
|
COMPONENT binary
|
||||||
|
)
|
||||||
|
endif(MINGW)
|
||||||
foreach(HEADER_FILE ${HEADER_FILES})
|
foreach(HEADER_FILE ${HEADER_FILES})
|
||||||
get_filename_component(HEADER_DIR ${HEADER_FILE} DIRECTORY)
|
get_filename_component(HEADER_DIR ${HEADER_FILE} DIRECTORY)
|
||||||
install(
|
install(
|
||||||
|
@ -174,8 +194,20 @@ if(NOT TARGET install-binary-strip)
|
||||||
COMMAND "${CMAKE_COMMAND}" -DCMAKE_INSTALL_DO_STRIP=1 -DCMAKE_INSTALL_COMPONENT=binary -P "${CMAKE_BINARY_DIR}/cmake_install.cmake"
|
COMMAND "${CMAKE_COMMAND}" -DCMAKE_INSTALL_DO_STRIP=1 -DCMAKE_INSTALL_COMPONENT=binary -P "${CMAKE_BINARY_DIR}/cmake_install.cmake"
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
if(NOT TARGET install-mingw-w64-strip)
|
if(NOT TARGET install-mingw-w64-importlib-strip)
|
||||||
add_custom_target(install-mingw-w64-strip
|
add_custom_target(install-mingw-w64-importlib-strip
|
||||||
DEPENDS install-binary-strip install-header
|
DEPENDS install-binary-strip
|
||||||
|
COMMAND "${CMAKE_FIND_ROOT_PATH}/bin/strip" --strip-unneeded "${CMAKE_INSTALL_PREFIX}/lib/lib${META_PROJECT_NAME}.dll.a"
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
if(NOT TARGET install-mingw-w64-staticlib-strip)
|
||||||
|
add_custom_target(install-mingw-w64-staticlib-strip
|
||||||
|
DEPENDS install-binary-strip
|
||||||
|
COMMAND "${CMAKE_FIND_ROOT_PATH}/bin/strip" -g "${CMAKE_INSTALL_PREFIX}/lib/lib${META_PROJECT_NAME}.a"
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
if(NOT TARGET install-mingw-w64-strip)
|
||||||
|
add_custom_target(install-mingw-w64-strip
|
||||||
|
DEPENDS install-binary-strip install-mingw-w64-importlib-strip install-mingw-w64-staticlib-strip install-header
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
Loading…
Reference in New Issue