Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Backports:SLE-15-SP1:Update
oyranos
0005-Make-static-libs-optional.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 0005-Make-static-libs-optional.patch of Package oyranos
From 41599f8f6ea96ef69c45e0392c06ef1906d5acda Mon Sep 17 00:00:00 2001 From: Andreas Sturmlechner <andreas.sturmlechner@gmail.com> Date: Sun, 1 Jan 2017 00:59:09 +0100 Subject: [PATCH 5/6] Make static libs optional --- CMakeLists.txt | 5 +++++ src/liboyranos/CMakeLists.txt | 22 +++++++++++++++++----- src/liboyranos_config/CMakeLists.txt | 20 +++++++++++++++----- src/liboyranos_core/CMakeLists.txt | 18 +++++++++++++++--- src/liboyranos_modules/CMakeLists.txt | 21 ++++++++++++++++----- src/liboyranos_object/CMakeLists.txt | 21 ++++++++++++++++----- 6 files changed, 84 insertions(+), 23 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 7107840..130fd68 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -34,8 +34,13 @@ SET( OYRANOS_VERSION_MAJORMINOR "${OYRANOS_VERSION_MAJOR}.${OYRANOS_VERSION_MINO include(GNUInstallDirs) option(ENABLE_EXAMPLES "Build example applications" ON) +option(ENABLE_STATIC_LIBS "Build static libs" ON) option(ENABLE_TESTS "Build tests (requires static libs)" ON) +IF( ENABLE_TESTS ) + SET(ENABLE_STATIC_LIBS ON) +ENDIF() + IF( ${CMAKE_SYSTEM_NAME} MATCHES "Darwin") SET(PLATFORM "OSX") ELSEIF( ${CMAKE_SYSTEM_NAME} MATCHES "Linux") diff --git a/src/liboyranos/CMakeLists.txt b/src/liboyranos/CMakeLists.txt index ba550e6..0e031b7 100644 --- a/src/liboyranos/CMakeLists.txt +++ b/src/liboyranos/CMakeLists.txt @@ -68,10 +68,6 @@ ADD_LIBRARY( ${PROJECT_NAME} SHARED ${SOURCES} ${CHEADERS_OBJECT_IMAGING_PUBLIC} TARGET_LINK_LIBRARIES ( ${PROJECT_NAME} ${PROJECT_NAME}Config ${PROJECT_NAME}Modules ${PROJECT_NAME}Object ${PROJECT_NAME}Core ${EXTRA_LIBS} ) -ADD_LIBRARY( oyranos-static STATIC ${SOURCES} ${CHEADERS_OBJECT_IMAGING_PUBLIC} ) -TARGET_LINK_LIBRARIES ( - oyranos-static - oyranos_config-static oyranos_modules-static oyranos_object-static oyranos_core-static ${EXTRA_LIBS} ) # OS X Framework FOREACH( policy ${SETTINGS_PUBLIC} ) @@ -95,7 +91,7 @@ SET_TARGET_PROPERTIES( ${PROJECT_NAME} PROPERTIES # DEBUG_POSTFIX -d ) -INSTALL( TARGETS ${PROJECT_NAME} oyranos-static +INSTALL( TARGETS ${PROJECT_NAME} RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} FRAMEWORK DESTINATION ${FRAMEWORK_DIR} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} @@ -104,6 +100,22 @@ INSTALL( TARGETS ${PROJECT_NAME} oyranos-static RESOURCE DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/color/settings ) +IF(ENABLE_STATIC_LIBS) + ADD_LIBRARY( oyranos-static STATIC ${SOURCES} ${CHEADERS_OBJECT_IMAGING_PUBLIC} ) + TARGET_LINK_LIBRARIES ( + oyranos-static + oyranos_config-static oyranos_modules-static oyranos_object-static oyranos_core-static ${EXTRA_LIBS} ) + + INSTALL(TARGETS oyranos-static + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} + FRAMEWORK DESTINATION ${FRAMEWORK_DIR} + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} + PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${PACKAGE_NAME} + RESOURCE DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/color/settings + ) +ENDIF() + # install for all but app bundles INSTALL( FILES ${SETTINGS_PUBLIC} DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/color/settings diff --git a/src/liboyranos_config/CMakeLists.txt b/src/liboyranos_config/CMakeLists.txt index 0e223c2..5e81c0e 100644 --- a/src/liboyranos_config/CMakeLists.txt +++ b/src/liboyranos_config/CMakeLists.txt @@ -80,10 +80,6 @@ ADD_LIBRARY( ${PROJECT_NAME}Config SHARED ${SOURCES} ) TARGET_LINK_LIBRARIES ( ${PROJECT_NAME}Config ${PROJECT_NAME}Modules ${PROJECT_NAME}Object ${PROJECT_NAME}Core ${EXTRA_LIBS_CONFIG} ${EXTRA_LIBS_CS} ) -ADD_LIBRARY( oyranos_config-static STATIC ${SOURCES} ) -TARGET_LINK_LIBRARIES ( - oyranos_config-static - oyranos_modules-static oyranos_object-static oyranos_core-static ${EXTRA_LIBS_CONFIG} ${EXTRA_LIBS_CS} ) # OS X Framework SET_TARGET_PROPERTIES( ${PROJECT_NAME}Config PROPERTIES @@ -96,7 +92,7 @@ SET_TARGET_PROPERTIES( ${PROJECT_NAME}Config PROPERTIES # DEBUG_POSTFIX -d ) -INSTALL( TARGETS ${PROJECT_NAME}Config oyranos_config-static +INSTALL( TARGETS ${PROJECT_NAME}Config RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} FRAMEWORK DESTINATION ${FRAMEWORK_DIR} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} @@ -104,3 +100,17 @@ INSTALL( TARGETS ${PROJECT_NAME}Config oyranos_config-static PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${PACKAGE_NAME} ) +IF(ENABLE_STATIC_LIBS) + ADD_LIBRARY( oyranos_config-static STATIC ${SOURCES} ) + TARGET_LINK_LIBRARIES ( + oyranos_config-static + oyranos_modules-static oyranos_object-static oyranos_core-static ${EXTRA_LIBS_CONFIG} ${EXTRA_LIBS_CS} ) + + INSTALL( TARGETS oyranos_config-static + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} + FRAMEWORK DESTINATION ${FRAMEWORK_DIR} + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} + PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${PACKAGE_NAME} + ) +ENDIF() diff --git a/src/liboyranos_core/CMakeLists.txt b/src/liboyranos_core/CMakeLists.txt index 078a4ce..73aa3c3 100644 --- a/src/liboyranos_core/CMakeLists.txt +++ b/src/liboyranos_core/CMakeLists.txt @@ -38,8 +38,6 @@ SET( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS_CORE}" ) ADD_LIBRARY( ${PROJECT_NAME}Core SHARED ${SOURCES} ) TARGET_LINK_LIBRARIES ( ${PROJECT_NAME}Core ${EXTRA_LIBS_CORE} ) -ADD_LIBRARY( oyranos_core-static STATIC ${SOURCES}) -TARGET_LINK_LIBRARIES ( oyranos_core-static ${EXTRA_LIBS_CORE} ) # OS X Framework SET_TARGET_PROPERTIES( ${PROJECT_NAME}Core PROPERTIES @@ -52,7 +50,7 @@ SET_TARGET_PROPERTIES( ${PROJECT_NAME}Core PROPERTIES # DEBUG_POSTFIX -d ) -INSTALL( TARGETS ${PROJECT_NAME}Core oyranos_core-static +INSTALL( TARGETS ${PROJECT_NAME}Core RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} FRAMEWORK DESTINATION ${FRAMEWORK_DIR} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} @@ -61,6 +59,20 @@ INSTALL( TARGETS ${PROJECT_NAME}Core oyranos_core-static RESOURCE DESTINATION ${FRAMEWORK_DIR} ) +IF(ENABLE_STATIC_LIBS) + ADD_LIBRARY( oyranos_core-static STATIC ${SOURCES}) + TARGET_LINK_LIBRARIES ( oyranos_core-static ${EXTRA_LIBS_CORE} ) + + INSTALL( TARGETS oyranos_core-static + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} + FRAMEWORK DESTINATION ${FRAMEWORK_DIR} + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} + PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${PACKAGE_NAME} + RESOURCE DESTINATION ${FRAMEWORK_DIR} + ) +ENDIF() + IF( USE_GETTEXT ) MESSAGE( "-- OY_LINGUAS: ${OY_LINGUAS}" ) IF(APPLE) diff --git a/src/liboyranos_modules/CMakeLists.txt b/src/liboyranos_modules/CMakeLists.txt index ded32e7..0f33788 100644 --- a/src/liboyranos_modules/CMakeLists.txt +++ b/src/liboyranos_modules/CMakeLists.txt @@ -118,10 +118,6 @@ ADD_LIBRARY( ${PROJECT_NAME}Modules SHARED ${SOURCES} ) TARGET_LINK_LIBRARIES ( ${PROJECT_NAME}Modules ${PROJECT_NAME}Object ${PROJECT_NAME}Core ${EXTRA_LIBS} ) -ADD_LIBRARY( oyranos_modules-static STATIC ${SOURCES} ) -TARGET_LINK_LIBRARIES ( - oyranos_modules-static - oyranos_object-static oyranos_core-static ${EXTRA_LIBS} ) # OS X Framework SET_TARGET_PROPERTIES( ${PROJECT_NAME}Modules PROPERTIES @@ -134,10 +130,25 @@ SET_TARGET_PROPERTIES( ${PROJECT_NAME}Modules PROPERTIES # DEBUG_POSTFIX -d ) -INSTALL( TARGETS ${PROJECT_NAME}Modules oyranos_modules-static +INSTALL( TARGETS ${PROJECT_NAME}Modules RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} FRAMEWORK DESTINATION ${FRAMEWORK_DIR} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${PACKAGE_NAME} ) + +IF(ENABLE_STATIC_LIBS) + ADD_LIBRARY( oyranos_modules-static STATIC ${SOURCES} ) + TARGET_LINK_LIBRARIES ( + oyranos_modules-static + oyranos_object-static oyranos_core-static ${EXTRA_LIBS} ) + + INSTALL( TARGETS oyranos_modules-static + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} + FRAMEWORK DESTINATION ${FRAMEWORK_DIR} + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} + PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${PACKAGE_NAME} + ) +ENDIF() diff --git a/src/liboyranos_object/CMakeLists.txt b/src/liboyranos_object/CMakeLists.txt index 0e0e7c9..a11e6aa 100644 --- a/src/liboyranos_object/CMakeLists.txt +++ b/src/liboyranos_object/CMakeLists.txt @@ -87,10 +87,6 @@ ADD_LIBRARY( ${PROJECT_NAME}Object SHARED ${SOURCES} ) TARGET_LINK_LIBRARIES ( ${PROJECT_NAME}Object ${PROJECT_NAME}Core ${EXTRA_LIBS_CORE} ) -ADD_LIBRARY( oyranos_object-static STATIC ${SOURCES} ) -TARGET_LINK_LIBRARIES ( - oyranos_object-static - oyranos_core-static ${EXTRA_LIBS_CORE} ) # OS X Framework SET_TARGET_PROPERTIES( ${PROJECT_NAME}Object PROPERTIES @@ -103,10 +99,25 @@ SET_TARGET_PROPERTIES( ${PROJECT_NAME}Object PROPERTIES # DEBUG_POSTFIX -d ) -INSTALL( TARGETS ${PROJECT_NAME}Object oyranos_object-static +INSTALL( TARGETS ${PROJECT_NAME}Object RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} FRAMEWORK DESTINATION ${FRAMEWORK_DIR} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${PACKAGE_NAME} ) + +IF(ENABLE_STATIC_LIBS) + ADD_LIBRARY( oyranos_object-static STATIC ${SOURCES} ) + TARGET_LINK_LIBRARIES ( + oyranos_object-static + oyranos_core-static ${EXTRA_LIBS_CORE} ) + + INSTALL( TARGETS oyranos_object-static + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} + FRAMEWORK DESTINATION ${FRAMEWORK_DIR} + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} + PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${PACKAGE_NAME} + ) +ENDIF() -- 2.10.2
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor