X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=src%2FCMakeLists.txt;h=fc19a18e262fb8a7f3143848631c185ccd410803;hb=d9dc8ef258ed2ddeeca83775eee945dbfdae59c5;hp=7bbc35d36bb65653f94ec7673ca540bf325d77fc;hpb=074d058a7a483a66af7f8c0b928b321ad483f47c;p=apps%2Fagl-service-windowmanager.git diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 7bbc35d..fc19a18 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,5 +1,5 @@ # -# Copyright (C) 2017 Mentor Graphics Development (Deutschland) GmbH +# Copyright (c) 2017 TOYOTA MOTOR CORPORATION # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -14,65 +14,53 @@ # limitations under the License. # -wlproto(IVI_CON ivi-controller) - include(FindPkgConfig) pkg_check_modules(AFB REQUIRED afb-daemon) +pkg_check_modules(ILM REQUIRED ilmControl ilmCommon) pkg_check_modules(SD REQUIRED libsystemd>=222) # We do not want a prefix for our module set(CMAKE_SHARED_MODULE_PREFIX "") -add_custom_command( - OUTPUT afb_binding_api.hpp afb_binding_glue.inl - DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/../generate-binding-glue.py - COMMAND python ${CMAKE_CURRENT_SOURCE_DIR}/../generate-binding-glue.py) - set(TARGETS_WM windowmanager-service) add_library(${TARGETS_WM} MODULE main.cpp - wayland.cpp - wayland.hpp util.cpp - util.hpp - layout.cpp - layout.hpp - ${IVI_CON_PROTO} json_helper.cpp - json_helper.hpp - app.hpp app.cpp - afb_binding_api.cpp - result.hpp - afb_binding_api.hpp - afb_binding_glue.inl - layers.cpp - layers.hpp - controller_hooks.hpp - config.cpp - config.hpp - policy.hpp) + applist.cpp + request.cpp + pm_wrapper.cpp + window_manager.cpp + wm_client.cpp + wm_error.cpp + wm_layer.cpp + wm_layer_control.cpp) target_include_directories(${TARGETS_WM} PRIVATE ${AFB_INCLUDE_DIRS} ${SD_INCLUDE_DIRS} + ${ILM_INCLUDE_DIRS} ../include - ../src) + ../src + ../${PLUGIN_PM}) target_link_libraries(${TARGETS_WM} PRIVATE ${AFB_LIBRARIES} ${WLC_LIBRARIES} - ${SD_LIBRARIES}) + ${ILM_LIBRARIES} + ${SD_LIBRARIES} + ${PLUGIN_PM}) target_compile_definitions(${TARGETS_WM} PRIVATE - AFB_BINDING_VERSION=2 + AFB_BINDING_VERSION=3 # We do not want source location of messages AFB_BINDING_PRAGMA_NO_VERBOSE_DETAILS WINMAN_VERSION_STRING="${PACKAGE_VERSION}" - _GNU_SOURCE) # XXX should I define this here?! + _GNU_SOURCE) if(NOT ${CMAKE_BUILD_TYPE} STREQUAL "Release") target_compile_definitions(${TARGETS_WM} @@ -82,7 +70,7 @@ endif() target_compile_options(${TARGETS_WM} PRIVATE - -Wall -Wextra -Wno-unused-parameter -Wno-comment) + -Wall -Wextra -Wno-unused-parameter -Wno-comment -Wno-missing-field-initializers) set_target_properties(${TARGETS_WM} PROPERTIES @@ -96,12 +84,12 @@ set_target_properties(${TARGETS_WM} C_STANDARD 99 C_STANDARD_REQUIRED ON - LINK_FLAGS "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/../export.map") + LINK_FLAGS "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/../export.map -Wl,-rpath,'$ORIGIN'") if (LINK_LIBCXX) set_target_properties(${TARGETS_WM} PROPERTIES - LINK_FLAGS "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/../export.map -lc++") + LINK_FLAGS "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/../export.map -lc++ -Wl,-rpath,'$ORIGIN'") endif() if (NOT ${SANITIZER_MODE} STREQUAL "none" AND NOT ${SANITIZER_MODE} STREQUAL "") @@ -122,8 +110,11 @@ endif() add_custom_command(TARGET ${TARGETS_WM} POST_BUILD COMMAND mkdir -p ${PROJECT_BINARY_DIR}/package/root/lib COMMAND cp -rf ${PROJECT_BINARY_DIR}/src/${TARGETS_WM}.so ${PROJECT_BINARY_DIR}/package/root/lib + COMMAND mkdir -p ${PROJECT_BINARY_DIR}/package/root/etc + COMMAND cp -f ${CMAKE_SOURCE_DIR}/conf/layers.json ${PROJECT_BINARY_DIR}/package/root/etc + COMMAND cp -f ${CMAKE_SOURCE_DIR}/conf/areas.json ${PROJECT_BINARY_DIR}/package/root/etc ) add_custom_target(package DEPENDS ${PROJECT_BINARY_DIR}/package/root - COMMAND wgtpkg-pack -f -o ${PROJECT_BINARY_DIR}/package/${TARGETS_WM}-2017.wgt ${PROJECT_BINARY_DIR}/package/root + COMMAND wgtpkg-pack -f -o ${PROJECT_BINARY_DIR}/package/${TARGETS_WM}.wgt ${PROJECT_BINARY_DIR}/package/root )