diff options
Diffstat (limited to 'src/appMain/CMakeLists.txt')
-rw-r--r-- | src/appMain/CMakeLists.txt | 160 |
1 files changed, 91 insertions, 69 deletions
diff --git a/src/appMain/CMakeLists.txt b/src/appMain/CMakeLists.txt index 84b2c847bd..514867624a 100644 --- a/src/appMain/CMakeLists.txt +++ b/src/appMain/CMakeLists.txt @@ -1,4 +1,4 @@ -# Copyright (c) 2014, Ford Motor Company +# Copyright (c) 2016, Ford Motor Company # All rights reserved. # # Redistribution and use in source and binary forms, with or without @@ -28,33 +28,64 @@ # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE # POSSIBILITY OF SUCH DAMAGE. -IF (HMIADAPTER STREQUAL "messagebroker") -set (BROKER_LIBRARIES - MessageBrokerClient - MessageBrokerServer +include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake) + +find_package(SDLOpenSSL REQUIRED) + +if (EXTENDED_MEDIA_MODE) + set(default_media_inc + ${GSTREAMER_gst_INCLUDE_DIR} + ${GSTREAMER_gstconfig_INCLUDE_DIR} + ) +else(EXTENDED_MEDIA_MODE) + set(default_media_inc) +endif() + +include_directories( + ${COMPONENTS_DIR}/protocol_handler/include + ${COMPONENTS_DIR}/application_manager/include + ${COMPONENTS_DIR}/remote_control/include + ${COMPONENTS_DIR}/formatters/include + ${COMPONENTS_DIR}/transport_manager/include + ${COMPONENTS_DIR}/security_manager/include + ${COMPONENTS_DIR}/security_manager/include + ${COMPONENTS_DIR}/config_profile/include + ${COMPONENTS_DIR}/utils/include + ${COMPONENTS_DIR}/connection_handler/include + ${COMPONENTS_DIR}/hmi_message_handler/include + ${COMPONENTS_DIR}/hmi_message_handler/src + ${COMPONENTS_DIR}/request_watchdog/include + ${COMPONENTS_DIR}/smart_objects/include + ${COMPONENTS_DIR}/media_manager/include + ${COMPONENTS_DIR}/telemetry_monitor/include + ${COMPONENTS_DIR}/functional_module/include + ${POLICY_PATH}/include + ${POLICY_GLOBAL_INCLUDE_PATH}/ + ${COMPONENTS_DIR}/rpc_base/include + ${COMPONENTS_DIR}/resumption/include + ${COMPONENTS_DIR}/dbus/include + ${CMAKE_BINARY_DIR}/src/components + ${JSONCPP_INCLUDE_DIRECTORY} + ${LOG4CXX_INCLUDE_DIRECTORY} + ${BSON_INCLUDE_DIRECTORY} + ${OPENSSL_INCLUDE_DIRECTORY} + ${default_media_inc} + ${MESSAGE_BROKER_INCLUDE_DIRECTORY} + ${BOOST_INCLUDE_DIR} ) -ENDIF () + +collect_sources(SOURCES "${CMAKE_CURRENT_SOURCE_DIR}") cmake_policy(PUSH) # make link_directories() treat paths relative to the source dir # info: cmake --help-policy CMP0015 cmake_policy(SET CMP0015 NEW) -link_directories(${LIBUSB_LIBS_DIRECTORY}) cmake_policy(POP) -if (EXTENDED_MEDIA_MODE) -set(default_media_inc -${GSTREAMER_gst_INCLUDE_DIR} -${GSTREAMER_gstconfig_INCLUDE_DIR} -) -else(EXTENDED_MEDIA_MODE) -set(default_media_inc -) -endif() - if (TELEMETRY_MONITOR) - set(TELEMETRY_MONITOR_LIB - TelemetryMonitor) + set(TELEMETRY_MONITOR_LIB + TelemetryMonitor + ) endif() set(LIBRARIES @@ -73,13 +104,18 @@ set(LIBRARIES TransportManager ${SecurityManagerLibrary} HMIMessageHandler - MessageBroker ${BROKER_LIBRARIES} Utils jsoncpp ConfigProfile Resumption ) +if(REMOTE_CONTROL) + SET (LIBRARIES + ${LIBRARIES} + FunctionalModule + ) +endif(REMOTE_CONTROL) if (CMAKE_SYSTEM_NAME STREQUAL "Linux") list(APPEND LIBRARIES pthread) @@ -87,12 +123,15 @@ if (CMAKE_SYSTEM_NAME STREQUAL "Linux") endif() if (BUILD_BT_SUPPORT) - list(APPEND LIBRARIES bluetooth) + if(CMAKE_SYSTEM_NAME STREQUAL "Linux") + list(APPEND LIBRARIES bluetooth) + endif() endif() + if (BUILD_USB_SUPPORT) -if (CMAKE_SYSTEM_NAME STREQUAL "Linux") - list(APPEND LIBRARIES Libusb-1.0.16) -endif() + if (CMAKE_SYSTEM_NAME STREQUAL "Linux") + list(APPEND LIBRARIES libusb-1.0.so) + endif() endif() if(ENABLE_LOG) @@ -102,51 +141,19 @@ if(ENABLE_LOG) list(APPEND LIBRARIES expat -L${EXPAT_LIBS_DIRECTORY}) endif() -include_directories ( - ./ - ${COMPONENTS_DIR}/protocol_handler/include/ - ${JSONCPP_INCLUDE_DIRECTORY} - ${COMPONENTS_DIR}/application_manager/include - ${COMPONENTS_DIR}/formatters/include - ${COMPONENTS_DIR}/transport_manager/include - ${COMPONENTS_DIR}/security_manager/include - ${SecurityManagerIncludeDir} - ${COMPONENTS_DIR}/security_manager/include - ${COMPONENTS_DIR}/config_profile/include - ${COMPONENTS_DIR}/utils/include/ - ${COMPONENTS_DIR}/connection_handler/include/ - ${COMPONENTS_DIR}/hmi_message_handler/include - ${COMPONENTS_DIR}/request_watchdog/include - ${COMPONENTS_DIR}/smart_objects/include/ - ${COMPONENTS_DIR}/media_manager/include/ - ${COMPONENTS_DIR}/telemetry_monitor/include - ${COMPONENTS_DIR}/policy/include/ - ${COMPONENTS_DIR}/resumption/include/ - ${MESSAGE_BROKER_INCLUDE_DIRECTORY} - ${ENCRYPTION_INCLUDE_DIRECTORY} - ${COMPONENTS_DIR} - ${CMAKE_BINARY_DIR}/src/components/ - ${COMPONENTS_DIR}/dbus/include/ - ${CMAKE_SOURCE_DIR} - ${default_media_inc} - ${LOG4CXX_INCLUDE_DIRECTORY} - ${CMAKE_SOURCE_DIR}/src/3rd_party/dbus-1.7.8 - ${CMAKE_SOURCE_DIR}/src/3rd_party/dbus-1.7.8/dbus/ -) +list(APPEND LIBRARIES bson -L${BSON_LIBS_DIRECTORY}) +list(APPEND LIBRARIES emhashmap -L${EMHASHMAP_LIBS_DIRECTORY}) -set (SOURCES - main.cc - life_cycle.cc - signal_handlers.cc -) +add_executable(${PROJECT} ${SOURCES}) -if( NOT CMAKE_BUILD_TYPE ) - set(CMAKE_BUILD_TYPE Debug CACHE STRING "Choose the type of build. Options are: None, Debug, Release, RelWithDebInfo, MinSizeRel." FORCE) +if (HMIADAPTER STREQUAL "messagebroker") + add_dependencies(${PROJECT} Boost) + list(APPEND LIBRARIES libboost_system.so) endif() -add_executable(${PROJECT} ${SOURCES}) target_link_libraries(${PROJECT} ${LIBRARIES}) +add_dependencies(${PROJECT} Policy) file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/log4cxx.properties DESTINATION ${CMAKE_CURRENT_BINARY_DIR}) file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/audio.8bit.wav DESTINATION ${CMAKE_CURRENT_BINARY_DIR}) @@ -154,6 +161,9 @@ file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/test.txt DESTINATION ${CMAKE_CURRENT_BINAR file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/smartDeviceLink.ini DESTINATION ${CMAKE_CURRENT_BINARY_DIR}) file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/hmi_capabilities.json DESTINATION ${CMAKE_CURRENT_BINARY_DIR}) file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/sdl_preloaded_pt.json DESTINATION ${CMAKE_CURRENT_BINARY_DIR}) +file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/sample_policy_manager.py DESTINATION ${CMAKE_CURRENT_BINARY_DIR}) +file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/start.sh DESTINATION ${CMAKE_CURRENT_BINARY_DIR}) +file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/start_external_proprietary.sh DESTINATION ${CMAKE_CURRENT_BINARY_DIR}) if (CMAKE_SYSTEM_NAME STREQUAL "QNX") file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/init_policy.sh DESTINATION ${CMAKE_CURRENT_BINARY_DIR}) endif () @@ -203,16 +213,17 @@ endif () install(TARGETS ${PROJECT} DESTINATION bin) install( FILES log4cxx.properties audio.8bit.wav test.txt smartDeviceLink.ini - hmi_capabilities.json sdl_preloaded_pt.json + hmi_capabilities.json sdl_preloaded_pt.json sample_policy_manager.py ${CMAKE_SOURCE_DIR}/mycert.pem ${CMAKE_SOURCE_DIR}/mykey.pem DESTINATION bin ) -if (${WEB_HMI}) - if (CMAKE_SYSTEM_NAME STREQUAL "Linux") - install( DIRECTORY ${CMAKE_HOME_DIRECTORY}/src/components/HMI/ DESTINATION bin/HMI) - endif () -elseif (${QT_HMI}) +install( + FILES sdl_preloaded_pt.json + DESTINATION bin +) + +if (${QT_HMI}) if (CMAKE_SYSTEM_NAME STREQUAL "QNX") install(FILES start-qml.sh DESTINATION bin PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ @@ -227,3 +238,14 @@ if (CMAKE_SYSTEM_NAME STREQUAL "QNX") PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE) endif () + +if (${EXTENDED_POLICY} STREQUAL "EXTERNAL_PROPRIETARY") + install(FILES start_external_proprietary.sh DESTINATION bin + PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ + GROUP_EXECUTE WORLD_READ WORLD_EXECUTE RENAME start.sh) +else() + install(FILES start.sh DESTINATION bin + PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ + GROUP_EXECUTE WORLD_READ WORLD_EXECUTE) +endif() + |