summaryrefslogtreecommitdiffstats
path: root/src/CMakeLists.txt
diff options
context:
space:
mode:
authorzheng_wenlong <wenlong_zheng@nexty-ele.com>2017-07-31 17:30:17 +0900
committerzheng_wenlong <wenlong_zheng@nexty-ele.com>2017-08-10 10:19:16 +0900
commit183e61cb341a9bb394b1e933edb66284211ef7e6 (patch)
treeb2ebaab0cece1f5f57bceb82555986b7bf541595 /src/CMakeLists.txt
parentf9bdd961edde55b918129064578b0405d28281d0 (diff)
Add agl-service-steering-wheel
Add new binding service for steering wheel. Right now it's for logitech g29 and build on reneses m3ulcb. Had test on Daring Dab 3.99.2, 3.99.3, 4.0.0. After this commit, we want to add some code for dashboard to use this binding. [Modify 20170803] Deleted trailing whitespace in README.md Fixed typo enogh to enough Modfied .noconcurrency 0 to 1 for atomic Checked event valid by afb_event_is_valid Droped event when not enough memory by afb_event_drop [Modify 20170804] Modify json path into afb_daemon_rootdir_open_locale Delete error.h for same ERRMSG define in af-steering-wheel-binding.h Delete install code in recipes because aglwgt do autoinstall Add verbs information [Modify 20170808] Add target 'package' in CMakeLists.txt to make package [Modify 20170810] Add new folder named 'package' for jenkins job Change-Id: I975b1ce3afbeea0145ea723586b4b46288c987ab Signed-off-by: zheng_wenlong <wenlong_zheng@nexty-ele.com>
Diffstat (limited to 'src/CMakeLists.txt')
-rw-r--r--src/CMakeLists.txt107
1 files changed, 107 insertions, 0 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
new file mode 100644
index 0000000..71168a3
--- /dev/null
+++ b/src/CMakeLists.txt
@@ -0,0 +1,107 @@
+#
+# 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 2.8)
+
+###########################################################################
+
+link_libraries(-Wl,--as-needed -Wl,--gc-sections)
+
+add_compile_options(-Wall -Wextra -Wconversion)
+add_compile_options(-Wno-unused-parameter) # frankly not using a parameter does it care?
+add_compile_options(-Werror=maybe-uninitialized)
+add_compile_options(-Werror=implicit-function-declaration)
+add_compile_options(-ffunction-sections -fdata-sections)
+add_compile_options(-Wl,--as-needed -Wl,--gc-sections)
+add_compile_options(-fPIC)
+
+set(CMAKE_C_FLAGS_PROFILING "-g -O0 -pg -Wp,-U_FORTIFY_SOURCE")
+set(CMAKE_C_FLAGS_DEBUG "-g -O0 -ggdb -Wp,-U_FORTIFY_SOURCE")
+set(CMAKE_C_FLAGS_RELEASE "-g -O2")
+set(CMAKE_C_FLAGS_CCOV "-g -O2 --coverage")
+set(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/package/root/lib)
+
+###########################################################################
+
+include(FindPkgConfig)
+
+#*<NESSARY> pkg_check_modules(EXTRAS REQUIRED json-c libsystemd afb-daemon)
+#pkg_check_modules(EXTRAS REQUIRED json-c)
+add_compile_options(${EXTRAS_CFLAGS})
+include_directories(${EXTRAS_INCLUDE_DIRS})
+link_libraries(${EXTRAS_LIBRARIES})
+
+message(STATUS "${EXTRAS_CFLAGS}")
+message(STATUS "${EXTRAS_INCLUDE_DIRS}")
+message(STATUS "${EXTRAS_LIBRARIES}")
+message(STATUS "${EXTRAS_LIBRARY_DIRS}")
+
+pkg_check_modules(GIO_UNIX REQUIRED gio-unix-2.0)
+include_directories(${GIO_UNIX_INCLUDE_DIRS})
+link_libraries(${GIO_UNIX_LIBRARIES})
+message(STATUS "${GIO_UNIX_INCLUDE_DIRS}")
+
+#set(VAR "")
+#get_target_property(VAR target INCLUDE_DIRECTORIES)
+#message(STATUS "${VAR}")
+
+###########################################################################
+# the binding for afb
+
+message(STATUS "Creation af-steering-wheel-binding for AFB-DAEMON")
+
+###############################################################
+#pkg_get_variable(afb_binding_install_dir afb-daemon binding_install_dir)
+
+#*<NESSARY>
+#* execute_process(
+#* COMMAND pkg-config --variable binding_install_dir afb-daemon
+#* OUTPUT_VARIABLE afb_binding_install_dir OUTPUT_STRIP_TRAILING_WHITESPACE
+#* )
+
+###############################################################
+add_library(af-steering-wheel-binding MODULE af-steering-wheel-binding.c bind_event.c steering_wheel_json.c prop_info.c prop_search.c js_signal_event.c js_raw.c)
+set_target_properties(af-steering-wheel-binding PROPERTIES
+ PREFIX ""
+ LINK_FLAGS "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/export.map"
+)
+
+#add_custom_command(TARGET af-steering-wheel-binding POST_BUILD
+# COMMAND cp -f ${CMAKE_CURRENT_SOURCE_DIR}/config.xml ${CMAKE_CURRENT_SOURCE_DIR}/steering_wheel.json ${CMAKE_CURRENT_SOURCE_DIR}/icon.png ${PROJECT_BINARY_DIR}/package/root
+# COMMAND cp -f ${CMAKE_CURRENT_SOURCE_DIR}/steering_wheel_map.json ${CMAKE_CURRENT_SOURCE_DIR}/gear_shift_para.json ${PROJECT_BINARY_DIR}/package/root)
+
+add_custom_target(package DEPENDS ${PROJECT_BINARY_DIR}/package/root
+ COMMAND wgtpkg-pack -f -o ${PROJECT_BINARY_DIR}/package/${PROJECT_NAME}.wgt ${PROJECT_BINARY_DIR}/package/root)
+
+#*<NESSARY> install(TARGETS af-canivi-binding LIBRARY DESTINATION ${afb_binding_install_dir})
+# <OR following packaging>
+##############################################################
+# WGT packaging
+
+#message(STATUS "Creation of af-canivi.wgt package for AppFW")
+##############################################################
+#configure_file(config.xml.in config.xml)
+#add_custom_command(
+# OUTPUT af-canivi.wgt
+# COMMAND rm -rf package
+# COMMAND mkdir -p package/libs package/htdocs
+# COMMAND cp config.xml package/
+# COMMAND cp ${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_ICON} package/icon.png
+# COMMAND cp af-canivi-binding.so package
+# COMMAND wgtpkg-pack -f -o af-canivi.wgt package
+#)
+#add_custom_target(widget ALL DEPENDS af-canivi.wgt)
+