Fix interface ignore overwrite
[project/odhcpd.git] / CMakeLists.txt
1 cmake_minimum_required(VERSION 2.8)
2 cmake_policy(SET CMP0015 NEW)
3
4 # Project Definition
5 project(odhcpd C)
6
7 set(CMAKE_SHARED_LIBRARY_LINK_C_FLAGS "")
8 set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -std=c99")
9
10
11 add_definitions(-D_GNU_SOURCE -Wall -Werror -Wextra)
12
13 if(${EXT_PREFIX_CLASS})
14         add_definitions(-DEXT_PREFIX_CLASS=${EXT_PREFIX_CLASS})
15 endif(${EXT_PREFIX_CLASS})
16
17 if(${UBUS})
18         add_definitions(-DWITH_UBUS)
19         set(EXT_SRC ${EXT_SRC} src/ubus.c)
20         set(EXT_LINK ${EXT_LINK} ubus)
21 endif(${UBUS})
22
23 add_executable(odhcpd src/odhcpd.c src/config.c src/router.c src/dhcpv6.c src/ndp.c src/dhcpv6-ia.c src/dhcpv4.c ${EXT_SRC})
24 target_link_libraries(odhcpd resolv ubox uci ${EXT_LINK})
25
26 # Installation
27 install(TARGETS odhcpd DESTINATION sbin/)
28
29
30 # Packaging information
31 set(CPACK_PACKAGE_VERSION "1")
32 set(CPACK_PACKAGE_CONTACT "Steven Barth <steven@midlink.org>")
33 set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "odhcpd")
34 set(CPACK_GENERATOR "DEB;RPM;STGZ")
35 set(CPACK_STRIP_FILES true)
36
37 SET(CPACK_DEBIAN_PACKAGE_VERSION ${CPACK_PACKAGE_VERSION})
38 set(CPACK_PACKAGE_FILE_NAME "${PROJECT_NAME}_${CPACK_DEBIAN_PACKAGE_VERSION}")
39
40 include(CPack)
41