X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?p=staging%2Fsoundmanager.git;a=blobdiff_plain;f=soundmanager_binging%2FCMakeLists.txt;fp=soundmanager_binging%2FCMakeLists.txt;h=003c394cccc51f92c39f14dfc34dc5c401235fe2;hp=0000000000000000000000000000000000000000;hb=2e602801b372b0b68111316b89f567213e3ea378;hpb=f743c3428f41b8d127e538ea8a6505a0c882cdb2 diff --git a/soundmanager_binging/CMakeLists.txt b/soundmanager_binging/CMakeLists.txt new file mode 100644 index 0000000..003c394 --- /dev/null +++ b/soundmanager_binging/CMakeLists.txt @@ -0,0 +1,54 @@ +# +# 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. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +cmake_minimum_required(VERSION 3.0) + +set(TARGETS_SMBINDER soundmanager-binding) + +INCLUDE(FindThreads) +FIND_PACKAGE(Threads) + +pkg_check_modules(sm_binding_depends afb-daemon glib-2.0 gio-2.0 gio-unix-2.0 json-c) +set(binding_sm_sources + soundmanager.c + sm-helper.c + dbus/audio_manager_interface.c) + +include_directories(dbus) +link_libraries(-Wl,--as-needed -Wl,--gc-sections -Wl,--no-undefined) + +add_library(${TARGETS_SMBINDER} MODULE ${binding_sm_sources}) + +target_compile_options(${TARGETS_SMBINDER} PRIVATE ${sm_binding_depends_CFLAGS}) +if(DEFINED DEBUGMODE) + target_compile_options(${TARGETS_SMBINDER} PRIVATE -g -O0) +else(DEFINED DEBUGMODE) + target_compile_options(${TARGETS_SMBINDER} PRIVATE -g -O2) +endif(DEFINED DEBUGMODE) + +target_include_directories(${TARGETS_SMBINDER} PRIVATE ${sm_binding_depends_INCLUDE_DIRS}) +target_link_libraries(${TARGETS_SMBINDER} ${CMAKE_THREAD_LIBS_INIT} ${link_libraries} ${sm_binding_depends_LIBRARIES}) + +# Binder exposes a unique public entry point + +set_target_properties(${TARGETS_SMBINDER} PROPERTIES + PREFIX "" + LINK_FLAGS "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/export.map" + ) + +# installation directory +INSTALL(TARGETS ${TARGETS_SMBINDER} + LIBRARY DESTINATION ${binding_install_dir})