diff options
author | Christian Linke <Christian.Linke@bmw.de> | 2016-02-11 07:28:47 +0100 |
---|---|---|
committer | Christian Linke <Christian.Linke@bmw.de> | 2016-02-15 09:00:59 +0100 |
commit | 5bcd206b9270d9a79e212f91723ea1a08a4d4859 (patch) | |
tree | 55b0cd4d07fbd7ebfd15d58d02e9cae6ae61b127 /AudioManagerUtilities/CMakeLists.txt | |
parent | 59080ecc2c8840fd85c561adea3f85f5344534a8 (diff) | |
download | audiomanager-5bcd206b9270d9a79e212f91723ea1a08a4d4859.tar.gz |
* rework of the build structure, adopt to standard cmake package structure7.4
* check versions when loading the libs
* introduction of the AudioManagerCore
* give control plugin as file or directory
* remove SQLITE
* either find and use gmock or build and install it
* fixed [Bug 411]
* compile flag gnu11 is now used
Signed-off-by: Christian Linke <Christian.Linke@bmw.de>
Signed-off-by: Christian Linke <Christian.Linke@bmw.de>
Diffstat (limited to 'AudioManagerUtilities/CMakeLists.txt')
-rw-r--r-- | AudioManagerUtilities/CMakeLists.txt | 151 |
1 files changed, 93 insertions, 58 deletions
diff --git a/AudioManagerUtilities/CMakeLists.txt b/AudioManagerUtilities/CMakeLists.txt index 69555fa..f859026 100644 --- a/AudioManagerUtilities/CMakeLists.txt +++ b/AudioManagerUtilities/CMakeLists.txt @@ -15,25 +15,22 @@ # For further information see http://www.genivi.org/. # -CMAKE_MINIMUM_REQUIRED(VERSION 2.8.8) +CMAKE_MINIMUM_REQUIRED(VERSION 3.0) -PROJECT(AudioManagerUtilities) - -set(AudioManagerUtilities_VERSION_MAJOR 1) -set(AudioManagerUtilities_VERSION_MINOR 0) -set(AudioManagerUtilities_VERSION_PATCH 0) -set(AudioManagerUtilities_VERSION_STRING ${AudioManagerUtilities_VERSION_MAJOR}.${AudioManagerUtilities_VERSION_MINOR}.${AudioManagerUtilities_VERSION_PATCH}) +PROJECT(AudioManagerUtilities LANGUAGES CXX VERSION ${DAEMONVERSION}) SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC") -SET(INCLUDE_FOLDER "include") -INCLUDE_DIRECTORIES( - ${INCLUDE_FOLDER} +SET(AUDIOMANAGER_UTILITIES_INCLUDE + ${AUDIOMANAGER_UTILITIES}/include ${AUDIO_INCLUDE_FOLDER} - ${AUDIOMANAGER_INCLUDE_FOLDER} - ${DBUS_INCLUDE_DIRS} ${TCLAP_INCLUDE_DIR} -) + ${AUDIOMANAGER_INCLUDE_FOLDER} + CACHE INTERNAL "AUDIOMANAGER_INCLUDE directories" FORCE) + +SET(AUDIO_MANAGER_UTILITIES_LIBS + ${CMAKE_DL_LIBS} + CACHE INTERNAL "AUDIO_MANAGER_UTILITIES_LIBS libs" FORCE) IF (WITH_SHARED_UTILITIES) SET(LIBRARY_TYPE SHARED) @@ -47,79 +44,117 @@ SET(AUDIO_MANAGER_UTILITIES_SRCS_CXX src/CAmSocketHandler.cpp) if(WITH_SYSTEMD_WATCHDOG) - - pkg_check_modules(SYSTEMD libsystemd>=44) - if (SYSTEMD_FOUND) - message(STATUS "Found libsystemd-daemon, version: ${SYSTEMD_VERSION}") - else (SYSTEMD_FOUND) - message(STATUS "Did not find libsystemd-daemon, using own lib") - endif(SYSTEMD_FOUND) - + pkg_check_modules(SYSTEMD REQUIRED "libsystemd >= 44") + + message(STATUS "Found libsystemd-daemon, version: ${SYSTEMD_VERSION}") + set (AUDIO_MANAGER_UTILITIES_LIBS + ${AUDIO_MANAGER_UTILITIES_LIBS} + ${SYSTEMD_LIBRARIES} + CACHE INTERNAL "AUDIO_MANAGER_UTILITIES_LIBS libs" FORCE) + set(AUDIOMANAGER_UTILITIES_INCLUDE + ${AUDIOMANAGER_UTILITIES_INCLUDE} + ${SYSTEMD_INCLUDEDIR}) set (AUDIO_MANAGER_UTILITIES_SRCS_CXX ${AUDIO_MANAGER_UTILITIES_SRCS_CXX} src/CAmWatchdog.cpp) - set (AM_LINK_LIBS - ${AM_LINK_LIBS} - ${SYSTEMD_LIBRARIES}) -endif(WITH_SYSTEMD_WATCHDOG) - - -if (NOT SYSTEMD_FOUND) - set (AUDIO_MANAGER_UTILITIES_SRCS_CXX - ${AUDIO_MANAGER_UTILITIES_SRCS_CXX} - src/sd-daemon.c) -endif (NOT SYSTEMD_FOUND) - - -IF (WITH_DBUS_WRAPPER) - pkg_check_modules (DBUS "dbus-1 >= 1.4") -ENDIF (WITH_DBUS_WRAPPER) -IF (WITH_CAPI_WRAPPER) - FIND_PACKAGE(CommonAPI REQUIRED) -ENDIF (WITH_CAPI_WRAPPER) +endif(WITH_SYSTEMD_WATCHDOG) IF (WITH_DBUS_WRAPPER) - SET (AM_LINK_LIBS - ${AM_LINK_LIBS} - ${DBUS_LIBRARIES}) - SET(AUDIO_MANAGER_UTILITIES_SRCS_CXX + pkg_check_modules (DBUS REQUIRED "dbus-1 >= 1.4") + + set(AUDIOMANAGER_UTILITIES_INCLUDE + ${AUDIOMANAGER_UTILITIES_INCLUDE} + ${DBUS_INCLUDE_DIRS} + CACHE INTERNAL "AUDIOMANAGER_INCLUDE directories" FORCE) + + set (AUDIO_MANAGER_UTILITIES_LIBS + ${AUDIO_MANAGER_UTILITIES_LIBS} + ${DBUS_LIBRARIES} + CACHE INTERNAL "AUDIO_MANAGER_UTILITIES_LIBS libs" FORCE) + + set(AUDIO_MANAGER_UTILITIES_SRCS_CXX ${AUDIO_MANAGER_UTILITIES_SRCS_CXX} src/CAmDbusWrapper.cpp) ENDIF (WITH_DBUS_WRAPPER) IF (WITH_CAPI_WRAPPER) - SET(AM_LINK_LIBS - ${AM_LINK_LIBS} - ${DBUS_LIBRARIES} - ${COMMON_API_LIBRARIES} - ${COMMON_API_DBUS_LIBRARIES}) - SET(AUDIO_MANAGER_UTILITIES_SRCS_CXX + pkg_check_modules(COMMONAPI REQUIRED "CommonAPI >= 3.1.5") + + set(AUDIO_MANAGER_UTILITIES_LIBS + ${AUDIO_MANAGER_UTILITIES_LIBS} + ${COMMONAPI_LIBRARIES} + ${COMMONAPI_DBUS_LIBRARIES} + CACHE INTERNAL "AUDIO_MANAGER_UTILITIES_LIBS libs" FORCE) + + set(AUDIO_MANAGER_UTILITIES_SRCS_CXX ${AUDIO_MANAGER_UTILITIES_SRCS_CXX} src/CAmCommonAPIWrapper.cpp) - INCLUDE_DIRECTORIES(${INCLUDE_DIRECTORIES} - ${COMMONAPI_INCLUDE_DIRS}) + + set(AUDIOMANAGER_UTILITIES_INCLUDE + ${AUDIOMANAGER_UTILITIES_INCLUDE} + ${COMMONAPI_INCLUDE_DIRS} + CACHE INTERNAL "AUDIOMANAGER_INCLUDE directories" FORCE) ENDIF (WITH_CAPI_WRAPPER) +if(WITH_DLT) + pkg_check_modules(DLT REQUIRED "automotive-dlt >= 2.2.0") + + add_definitions(${DLT_CFLAGS_OTHER}) + + set(AUDIO_MANAGER_UTILITIES_LIBS + ${AUDIO_MANAGER_UTILITIES_LIBS} + ${DLT_LIBRARIES} + CACHE INTERNAL "AUDIO_MANAGER_UTILITIES_LIBS libs" FORCE) + + SET(AUDIOMANAGER_UTILITIES_INCLUDE + ${AUDIOMANAGER_UTILITIES_INCLUDE} + ${DLT_LIBRARY_DIRS} + CACHE INTERNAL "AUDIOMANAGER_INCLUDE directories" FORCE) +endif(WITH_DLT) + + +INCLUDE_DIRECTORIES(${AUDIOMANAGER_UTILITIES_INCLUDE}) + ADD_LIBRARY(AudioManagerUtilities ${LIBRARY_TYPE} ${AUDIO_MANAGER_UTILITIES_SRCS_CXX}) -TARGET_LINK_LIBRARIES(AudioManagerUtilities ${AM_LINK_LIBS}) +TARGET_LINK_LIBRARIES(AudioManagerUtilities ${AUDIO_MANAGER_UTILITIES_LIBS}) -set_target_properties(AudioManagerUtilities PROPERTIES VERSION ${AudioManagerUtilities_VERSION_STRING} SOVERSION ${AudioManagerUtilities_VERSION_MAJOR}) +set_target_properties(AudioManagerUtilities PROPERTIES VERSION ${AudioManagerUtilities_VERSION} SOVERSION ${AudioManagerUtilities_VERSION_MAJOR}) IF (WITH_SHARED_UTILITIES) INSTALL(TARGETS AudioManagerUtilities LIBRARY DESTINATION lib PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ GROUP_EXECUTE GROUP_READ WORLD_EXECUTE WORLD_READ COMPONENT bin) - configure_file( ${CMAKE_SOURCE_DIR}/cmake/audiomanagerutilities.pc.in ${CMAKE_BINARY_DIR}/audiomanagerutilities.pc @ONLY ) - install(FILES ${CMAKE_BINARY_DIR}/audiomanagerutilities.pc DESTINATION lib/pkgconfig COMPONENT devel) ELSE (WITH_SHARED_UTILITIES) INSTALL(TARGETS AudioManagerUtilities ARCHIVE DESTINATION lib COMPONENT dev) ENDIF (WITH_SHARED_UTILITIES) -INSTALL(DIRECTORY "${AUDIOMANAGER_UTILITIES_INCLUDE}/" - DESTINATION ${CMAKE_INSTALL_PREFIX}/include/${LIB_INSTALL_SUFFIX} +configure_file( ${CMAKE_SOURCE_DIR}/cmake/audiomanagerutilities.pc.in ${CMAKE_BINARY_DIR}/audiomanagerutilities.pc @ONLY ) +install(FILES ${CMAKE_BINARY_DIR}/audiomanagerutilities.pc DESTINATION lib/pkgconfig COMPONENT devel) + +configure_package_config_file ( + ${CMAKE_SOURCE_DIR}/cmake/AudioManagerUtilitiesConfig.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/AudioManagerUtilitiesConfig.cmake + INSTALL_DESTINATION lib/${LIB_INSTALL_SUFFIX}/cmake + PATH_VARS AUDIO_INCLUDE_FOLDER ) + +write_basic_package_version_file( + ${CMAKE_CURRENT_BINARY_DIR}/AudioManagerUtilitiesConfigVersion.cmake + VERSION ${DAEMONVERSION} + COMPATIBILITY SameMajorVersion ) + +install( +FILES ${CMAKE_CURRENT_BINARY_DIR}/AudioManagerUtilitiesConfig.cmake + ${CMAKE_CURRENT_BINARY_DIR}/AudioManagerUtilitiesConfigVersion.cmake +DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/cmake/AudioManagerUtilities-${DAEMONVERSION}) + +INSTALL(DIRECTORY "include/" + DESTINATION ${CMAKE_INSTALL_PREFIX}/include/${LIB_INSTALL_SUFFIX}/AudioManagerUtilities COMPONENT dev) + +if(WITH_TESTS) + add_subdirectory (test) +endif(WITH_TESTS) |