diff options
Diffstat (limited to 'AudioManagerCore/CMakeLists.txt')
-rw-r--r-- | AudioManagerCore/CMakeLists.txt | 109 |
1 files changed, 109 insertions, 0 deletions
diff --git a/AudioManagerCore/CMakeLists.txt b/AudioManagerCore/CMakeLists.txt new file mode 100644 index 0000000..2a553ba --- /dev/null +++ b/AudioManagerCore/CMakeLists.txt @@ -0,0 +1,109 @@ +# Copyright (C) 2012, BMW AG +# +# This file is part of GENIVI Project AudioManager. +# +# Contributions are licensed to the GENIVI Alliance under one or more +# Contribution License Agreements. +# +# copyright +# This Source Code Form is subject to the terms of the +# Mozilla Public License, v. 2.0. if a copy of the MPL was not distributed with +# this file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# author Christian Linke, christian.linke@bmw.de BMW 2011,2012 +# +# For further information see http://www.genivi.org/. +# + +cmake_minimum_required(VERSION 3.0) + +project (AudioManagerCore LANGUAGES CXX VERSION ${DAEMONVERSION}) + +SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC") + +SET(AUDIOMANAGER_CORE_INCLUDE + ${AUDIOMANAGER_CORE}/include + ${AUDIOMANAGER_UTILITIES_INCLUDE} + CACHE INTERNAL "AUDIOMANAGER_CORE_INCLUDE directories" FORCE) + +SET(AUDIO_MANAGER_CORE_LIBS + ${AUDIO_MANAGER_UTILITIES_LIBS} + AudioManagerUtilities + CACHE INTERNAL "AUDIO_MANAGER_CORE_LIBS libs" FORCE) + +IF (WITH_SHARED_CORE) + SET(LIBRARY_TYPE SHARED) +ELSE (WITH_SHARED_CORE) + SET(LIBRARY_TYPE STATIC) +ENDIF (WITH_SHARED_CORE) + +set(AUDIOMAN_CORE_SRCS_CXX + src/CAmCommandReceiver.cpp + src/CAmCommandSender.cpp + src/CAmControlReceiver.cpp + src/CAmControlSender.cpp + src/CAmDatabaseObserver.cpp + src/CAmRoutingReceiver.cpp + src/CAmRoutingSender.cpp + src/CAmRouter.cpp + src/CAmLog.cpp + src/CAmDatabaseHandlerMap.cpp +) + +if(WITH_TELNET) + set (AUDIOMAN_CORE_SRCS_CXX + ${AUDIOMAN_CORE_SRCS_CXX} + src/CAmTelnetServer.cpp + src/CAmTelnetMenuHelper.cpp) +endif(WITH_TELNET) + +INCLUDE_DIRECTORIES(${AUDIOMANAGER_CORE_INCLUDE}) + +ADD_LIBRARY(AudioManagerCore ${LIBRARY_TYPE} ${AUDIOMAN_CORE_SRCS_CXX}) + +TARGET_LINK_LIBRARIES(AudioManagerCore ${AUDIO_MANAGER_CORE_LIBS} ) + +ADD_DEPENDENCIES(AudioManagerCore AudioManagerUtilities) + +set_target_properties(AudioManagerCore PROPERTIES VERSION ${AudioManagerCore_VERSION} SOVERSION ${AudioManagerCore_VERSION_MAJOR}) + + +IF (WITH_SHARED_CORE) + INSTALL(TARGETS AudioManagerCore + LIBRARY DESTINATION lib + PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ GROUP_EXECUTE GROUP_READ WORLD_EXECUTE WORLD_READ + COMPONENT bin) +ELSE (WITH_SHARED_CORE) + INSTALL(TARGETS AudioManagerCore + ARCHIVE DESTINATION lib + COMPONENT dev) +ENDIF (WITH_SHARED_CORE) + +configure_file( ${CMAKE_SOURCE_DIR}/cmake/audiomanagercore.pc.in ${CMAKE_BINARY_DIR}/audiomanagercore.pc @ONLY ) +install(FILES ${CMAKE_BINARY_DIR}/audiomanagercore.pc DESTINATION lib/pkgconfig COMPONENT devel) + +configure_package_config_file ( + ${CMAKE_SOURCE_DIR}/cmake/AudioManagerCoreConfig.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/AudioManagerCoreConfig.cmake + INSTALL_DESTINATION lib/${LIB_INSTALL_SUFFIX}/cmake + PATH_VARS AUDIO_INCLUDE_FOLDER ) + +write_basic_package_version_file( + ${CMAKE_CURRENT_BINARY_DIR}/AudioManagerCoreConfigVersion.cmake + VERSION ${DAEMONVERSION} + COMPATIBILITY SameMajorVersion ) + +install( +FILES ${CMAKE_CURRENT_BINARY_DIR}/AudioManagerCoreConfig.cmake + ${CMAKE_CURRENT_BINARY_DIR}/AudioManagerCoreConfigVersion.cmake +DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/cmake/AudioManagerCore-${DAEMONVERSION}) + +INSTALL(DIRECTORY "${AUDIOMANAGER_CORE}/include/" + DESTINATION ${CMAKE_INSTALL_PREFIX}/include/${LIB_INSTALL_SUFFIX}/AudioManagerCore + COMPONENT dev) + +if(WITH_TESTS) + add_subdirectory (test) +endif(WITH_TESTS) + + + |