# Copyright (C) 2015, ADIT GmbH # # 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 Jens Lorenz, jens.lorenz@de.adit-jv.com ADIT,2015 # # For further information see http://www.genivi.org/. # CMAKE_MINIMUM_REQUIRED(VERSION 2.8.8) 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}) SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC") SET(INCLUDE_FOLDER "include") INCLUDE_DIRECTORIES( ${INCLUDE_FOLDER} ${AUDIO_INCLUDE_FOLDER} ${AUDIOMANAGER_INCLUDE_FOLDER} ${DBUS_INCLUDE_DIRS} ${TCLAP_INCLUDE_DIR} ) IF (WITH_SHARED_UTILITIES) SET(LIBRARY_TYPE SHARED) ELSE (WITH_SHARED_UTILITIES) SET(LIBRARY_TYPE STATIC) ENDIF (WITH_SHARED_UTILITIES) SET(AUDIO_MANAGER_UTILITIES_SRCS_CXX src/CAmCommandLineSingleton.cpp src/CAmDltWrapper.cpp 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) 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) IF (WITH_DBUS_WRAPPER) SET (AM_LINK_LIBS ${AM_LINK_LIBS} ${DBUS_LIBRARIES}) 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 ${AUDIO_MANAGER_UTILITIES_SRCS_CXX} src/CAmCommonAPIWrapper.cpp) INCLUDE_DIRECTORIES(${INCLUDE_DIRECTORIES} ${COMMONAPI_INCLUDE_DIRS}) ENDIF (WITH_CAPI_WRAPPER) ADD_LIBRARY(AudioManagerUtilities ${LIBRARY_TYPE} ${AUDIO_MANAGER_UTILITIES_SRCS_CXX}) TARGET_LINK_LIBRARIES(AudioManagerUtilities ${AM_LINK_LIBS}) set_target_properties(AudioManagerUtilities PROPERTIES VERSION ${AudioManagerUtilities_VERSION_STRING} 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} COMPONENT dev)