1 ###########################################################################
2 # Copyright 2015, 2016, 2017 IoT.bzh
4 # author: Fulup Ar Foll <fulup@iot.bzh>
6 # Licensed under the Apache License, Version 2.0 (the "License");
7 # you may not use this file except in compliance with the License.
8 # You may obtain a copy of the License at
10 # http://www.apache.org/licenses/LICENSE-2.0
12 # Unless required by applicable law or agreed to in writing, software
13 # distributed under the License is distributed on an "AS IS" BASIS,
14 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 # See the License for the specific language governing permissions and
16 # limitations under the License.
17 ###########################################################################
21 set(NAME can-config-generator)
23 set(PRETTY_NAME "CAN configuration generator")
24 set(DESCRIPTION "Generator that convert JSON file following OpenXC spec to configuration-generated.cpp file for the low level CAN binding.")
25 set(URL "https://github.com/iotbzh/CAN_signaling")
26 set(PROJECT_ICON "icon.png")
28 # Compilation Mode (DEBUG, RELEASE)
29 # ----------------------------------
30 setc(CMAKE_BUILD_TYPE "DEBUG")
32 # PKG_CONFIG required packages
33 # -----------------------------
34 set (PKG_REQUIRED_LIST
40 # Static constante definition
41 # -----------------------------
42 add_compile_options(-D_REENTRANT)
43 add_compile_options(-DPB_FIELD_16BIT)
45 # LANG Specific compile flags set for all build types
47 set(CMAKE_CXX_FLAGS "-std=c++11")
49 # Print a helper message when every thing is finished
50 setc(CLOSING_MESSAGE "Test with: ./can-config-generator -m ../tests/basic.json -o configuration-generated.cpp")
51 # ----------------------------------------------------
53 # (BUG!!!) as PKG_CONFIG_PATH does not work [should be an env variable]
54 # ---------------------------------------------------------------------
55 setc(CMAKE_INSTALL_PREFIX ${HOME}/opt)
56 setc(CMAKE_PREFIX_PATH ${CMAKE_INSTALL_PREFIX}/lib64/pkgconfig ${CMAKE_INSTALL_PREFIX}/lib/pkgconfig)
57 setc(LD_LIBRARY_PATH ${CMAKE_INSTALL_PREFIX}/lib64 ${CMAKE_INSTALL_PREFIX}/lib)
59 # Optional dependencies order
60 # ---------------------------
61 set(EXTRA_DEPENDENCIES_ORDER can-config-generator low-can-binding)
63 # Optional Extra global include path
64 # -----------------------------------
65 #set(EXTRA_INCLUDE_DIRS inc_dir1 inc_dir2 ...)
67 # Optional extra libraries
68 # -------------------------
69 #set(EXTRA_LINK_LIBRARIES)
71 # Optional force binding installation
72 # ------------------------------------
73 # set(BINDINGS_INSTALL_PREFIX DestinationPath )
75 # Optional force binding Linking flag
76 # ------------------------------------
77 # set(BINDINGS_LINK_FLAG LinkOptions )