14888ac3813524e45a4d51e7d6a5d6588d0f5e91
[oweals/ucert.git] / CMakeLists.txt
1 cmake_minimum_required(VERSION 2.6)
2
3 PROJECT(ucert C)
4 ADD_DEFINITIONS(-Os -ggdb -Wall --std=gnu99 -Wmissing-declarations)
5
6 SET(CMAKE_SHARED_LIBRARY_LINK_C_FLAGS "")
7
8 FIND_PATH(ubox_include_dir NAMES libubox/usock.h)
9 FIND_PATH(jsonc_include_dir NAMES json-c/json.h)
10 INCLUDE_DIRECTORIES(${ubox_include_dir} ${jsonc_include_dir})
11
12 FIND_LIBRARY(ubox NAMES ubox)
13 FIND_LIBRARY(blobmsg_json NAMES blobmsg_json)
14 FIND_LIBRARY(json NAMES json-c json)
15
16 IF(UCERT_HOST_BUILD)
17 ADD_DEFINITIONS(-DUCERT_HOST_BUILD)
18 ENDIF()
19
20 IF(USE_RPATH)
21 SET(CMAKE_INSTALL_RPATH "${USE_RPATH}")
22 SET(CMAKE_MACOSX_RPATH 1)
23 ENDIF()
24
25 ADD_EXECUTABLE(ucert ucert.c usign-exec.c)
26 IF(UCERT_FULL)
27 ADD_DEFINITIONS(-DUCERT_FULL)
28 TARGET_LINK_LIBRARIES(ucert ${ubox} ${blobmsg_json} ${json})
29 ELSE()
30 ADD_DEFINITIONS(-DUCERT_STRIP_MESSAGES)
31 TARGET_LINK_LIBRARIES(ucert ${ubox})
32 ENDIF()
33
34 INSTALL(TARGETS ucert RUNTIME DESTINATION bin)