1 cmake_minimum_required(VERSION 3.3)
5 ADD_DEFINITIONS(-O2 -Wall -fwrapv -Werror --std=gnu99 -g3 -Wmissing-declarations -DRUNSTATEDIR="${RUNSTATEDIR}")
6 FIND_LIBRARY(ubus NAMES ubus)
7 FIND_LIBRARY(ubox NAMES ubox)
9 FIND_PATH(ubus_include_dir NAMES libubus.h)
10 FIND_PATH(uloop_include_dir NAMES libubox/uloop.h)
11 FIND_PATH(ucode_include_dir NAMES ucode/module.h)
12 INCLUDE_DIRECTORIES(${uloop_include_dir} ${ubus_include_dir} ${ucode_include_dir})
15 SET(UCODE_MODULE_LINK_OPTIONS "LINKER:-undefined,dynamic_lookup")
18 ADD_LIBRARY(udebug SHARED lib.c lib-pcap.c)
20 SET_TARGET_PROPERTIES(udebug PROPERTIES VERSION ${ABIVERSION})
22 TARGET_LINK_LIBRARIES(udebug ${ubox} ${ubus})
24 ADD_EXECUTABLE(udebugd main.c client.c ring.c ubus.c)
25 TARGET_LINK_LIBRARIES(udebugd udebug ${ubox} ${ubus})
27 ADD_LIBRARY(ucode_lib MODULE lib-ucode.c)
28 SET_TARGET_PROPERTIES(ucode_lib PROPERTIES OUTPUT_NAME udebug PREFIX "")
29 TARGET_LINK_OPTIONS(ucode_lib PRIVATE ${UCODE_MODULE_LINK_OPTIONS})
30 TARGET_LINK_LIBRARIES(ucode_lib ${ubox} udebug)
32 INSTALL(FILES udebug.h udebug-pcap.h
35 INSTALL(FILES udebug-cli
38 INSTALL(TARGETS udebugd udebug
39 RUNTIME DESTINATION sbin
40 LIBRARY DESTINATION lib
42 INSTALL(TARGETS ucode_lib
43 LIBRARY DESTINATION lib/ucode