1 ###########################################################################
2 # Copyright 2015 IoT.bzh
4 # author: José Bollo <jose.bollo@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 ###########################################################################
19 cmake_minimum_required(VERSION 2.8)
21 include(FindPkgConfig)
23 pkg_check_modules(EXTRAS REQUIRED
26 xmlsec1 xmlsec1-openssl
31 add_compile_options(${EXTRAS_CFLAGS})
32 include_directories(${EXTRAS_INCLUDE_DIRS})
33 link_libraries(${EXTRAS_LIBRARIES})
36 pkg_check_modules(LIBZIP REQUIRED libzip>=0.11)
37 add_compile_options(${LIBZIP_CFLAGS})
38 include_directories(${LIBZIP_INCLUDE_DIRS})
39 link_libraries(${LIBZIP_LIBRARIES})
40 add_definitions(-DUSE_LIBZIP=1)
42 find_program(PATH_TO_ZIP zip)
43 find_program(PATH_TO_UNZIP unzip)
44 add_definitions(-DUSE_LIBZIP=0 -DPATH_TO_ZIP="${PATH_TO_ZIP}" -DPATH_TO_UNZIP="${PATH_TO_UNZIP}")
47 ###########################################################################
50 include_directories(simulation)
52 pkg_check_modules(SECMGR REQUIRED security-manager)
53 add_compile_options(${SECMGR_CFLAGS})
54 include_directories(${SECMGR_INCLUDE_DIRS})
55 link_libraries(${SECMGR_LIBRARIES})
58 ###########################################################################
60 add_compile_options(-Wall -Wno-pointer-sign)
61 add_compile_options(-ffunction-sections -fdata-sections)
62 add_compile_options(-fPIC)
63 add_compile_options(-Wl,--gc-sections)
65 set(CMAKE_C_FLAGS_PROFILING "-g -O0 -pg -Wp,-U_FORTIFY_SOURCE")
66 set(CMAKE_C_FLAGS_DEBUG "-g -O0 -ggdb -Wp,-U_FORTIFY_SOURCE")
67 set(CMAKE_C_FLAGS_RELEASE "-g -O2")
68 set(CMAKE_C_FLAGS_CCOV "-g -O2 --coverage")
70 ###########################################################################
106 add_executable(wgtpkg-sign wgtpkg-sign.c)
107 target_link_libraries(wgtpkg-sign wgtpkg utils)
109 add_executable(wgtpkg-pack wgtpkg-pack.c)
110 target_link_libraries(wgtpkg-pack wgtpkg utils)
112 add_executable(wgtpkg-info wgtpkg-info.c)
113 target_link_libraries(wgtpkg-info wgtpkg wgt utils)
115 add_executable(wgtpkg-installer wgtpkg-installer.c)
116 target_link_libraries(wgtpkg-installer wgtpkg wgt secwrp utils)
118 add_executable(afm-user-daemon afm-user-daemon.c)
119 target_link_libraries(afm-user-daemon afm secwrp wgt utils)
121 add_executable(afm-system-daemon afm-system-daemon.c)
122 target_link_libraries(afm-system-daemon wgtpkg afm secwrp wgt utils)
124 install(TARGETS wgtpkg-sign wgtpkg-pack wgtpkg-info wgtpkg-installer DESTINATION ${CMAKE_INSTALL_FULL_BINDIR})
125 install(TARGETS afm-user-daemon DESTINATION ${CMAKE_INSTALL_FULL_BINDIR})
126 install(TARGETS afm-system-daemon DESTINATION ${CMAKE_INSTALL_FULL_BINDIR})