From 534894b27a5e6b86cf8d2bd7b53d55d04f2a1bcc Mon Sep 17 00:00:00 2001 From: Dirk Huss Date: Wed, 25 May 2016 19:00:32 +0200 Subject: CommonAPI 3.1.8 --- CMakeLists.txt | 30 +++++++++++++++++++++++------- 1 file changed, 23 insertions(+), 7 deletions(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index 733aa11..b62a926 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -10,7 +10,7 @@ PROJECT(libcommonapi) # version of CommonAPI SET( LIBCOMMONAPI_MAJOR_VERSION 3 ) SET( LIBCOMMONAPI_MINOR_VERSION 1 ) -SET( LIBCOMMONAPI_PATCH_VERSION 7 ) +SET( LIBCOMMONAPI_PATCH_VERSION 8 ) message(STATUS "Project name: ${PROJECT_NAME}") @@ -52,7 +52,9 @@ string(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_FOR_SPEC_IN) # Offer the user the choice of overriding the installation directories set(INSTALL_LIB_DIR lib CACHE PATH "Installation directory for libraries") +set(INSTALL_BIN_DIR bin CACHE PATH "Installation directory for binaries") set(INSTALL_INCLUDE_DIR include/CommonAPI-${COMMONAPI_API_HEADER_VERSION} CACHE PATH "Installation directory for header files") + if(WIN32 AND NOT CYGWIN) set(DEF_INSTALL_CMAKE_DIR cmake) else() @@ -60,6 +62,12 @@ else() endif() set(INSTALL_CMAKE_DIR ${DEF_INSTALL_CMAKE_DIR} CACHE PATH "Installation directory for CMake files") +OPTION(USE_FILE "Set to OFF to disable file logging" OFF ) +message(STATUS "USE_FILE is set to value: ${USE_FILE}") + +OPTION(USE_CONSOLE "Set to OFF to disable console logging" OFF ) +message(STATUS "USE_CONSOLE is set to value: ${USE_CONSOLE}") + # Make relative paths absolute (needed later on) foreach(p LIB INCLUDE CMAKE) set(var INSTALL_${p}_DIR) @@ -76,14 +84,21 @@ SET( LICENSE "MPLv2" ) message(STATUS "Build type: ${CMAKE_BUILD_TYPE}") ############################################################################## - # CommonAPI build section + +IF(USE_FILE) + add_definitions(-DUSE_FILE) +ENDIF(USE_FILE) +IF(USE_CONSOLE) + add_definitions(-DUSE_CONSOLE) +ENDIF(USE_CONSOLE) + IF(MSVC) message("using MSVC Compiler") - add_definitions(-DCOMMONAPI_INTERNAL_COMPILATION) - add_compile_options(/EHsc /wd"4996") + add_definitions(-DCOMMONAPI_INTERNAL_COMPILATION -DCOMMONAPI_DLL_COMPILATION) + add_compile_options(/EHsc /wd4996) ELSE () - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x -Wall -Wextra -Wformat -Wformat-security -Wconversion -fexceptions -fstrict-aliasing -fstack-protector -fasynchronous-unwind-tables -fno-omit-frame-pointer -Werror -DCOMMONAPI_INTERNAL_COMPILATION -DUSE_CONSOLE") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x -Wall -Wextra -Wformat -Wformat-security -Wconversion -fexceptions -fstrict-aliasing -fstack-protector -fasynchronous-unwind-tables -fno-omit-frame-pointer -Werror -DCOMMONAPI_INTERNAL_COMPILATION") ENDIF(MSVC) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DCOMMONAPI_LOGLEVEL=COMMONAPI_LOGLEVEL_${MAX_LOG_LEVEL}") @@ -106,9 +121,9 @@ link_directories( ) file(GLOB CAPI_SRCS "src/CommonAPI/*.cpp") -add_library(CommonAPI ${CAPI_SRCS}) +add_library(CommonAPI SHARED ${CAPI_SRCS}) target_link_libraries(CommonAPI PRIVATE ${DL_LIBRARY} ${DLT_LIBRARIES}) -set_target_properties(CommonAPI PROPERTIES VERSION ${LIBCOMMONAPI_MAJOR_VERSION}.${LIBCOMMONAPI_MINOR_VERSION}.${LIBCOMMONAPI_PATCH_VERSION} SOVERSION ${LIBCOMMONAPI_MAJOR_VERSION} LINKER_LANGUAGE C) +set_target_properties(CommonAPI PROPERTIES VERSION ${LIBCOMMONAPI_MAJOR_VERSION}.${LIBCOMMONAPI_MINOR_VERSION}.${LIBCOMMONAPI_PATCH_VERSION} SOVERSION ${LIBCOMMONAPI_MAJOR_VERSION}.${LIBCOMMONAPI_MINOR_VERSION}.${LIBCOMMONAPI_PATCH_VERSION} LINKER_LANGUAGE C) set_target_properties (CommonAPI PROPERTIES INTERFACE_LINK_LIBRARY "") ############################################################################## @@ -127,6 +142,7 @@ set_target_properties (CommonAPI PROPERTIES PUBLIC_HEADER "${CommonAPI_INCLUDE_I install(TARGETS CommonAPI EXPORT CommonAPITargets LIBRARY DESTINATION ${INSTALL_LIB_DIR} + RUNTIME DESTINATION ${INSTALL_BIN_DIR} ARCHIVE DESTINATION ${INSTALL_LIB_DIR} PUBLIC_HEADER DESTINATION "${INSTALL_INCLUDE_DIR}/CommonAPI" ) -- cgit v1.2.1