[CVE-2015-8899] Fix crash when empty address from DNS overlays A record from hosts
[platform/upstream/dnsmasq.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(dnsmasq C)
3
4 SET(SRCS        src/auth.c
5                 src/blockdata.c
6                 src/bpf.c
7                 src/cache.c
8                 src/conntrack.c
9                 src/dbus.c
10                 src/dhcp6.c
11                 src/dhcp.c
12                 src/dhcp-common.c
13                 src/dnsmasq.c
14                 src/dnssec.c
15                 src/domain.c
16                 src/forward.c
17                 src/helper.c
18                 src/inotify.c
19                 src/ipset.c
20                 src/lease.c
21                 src/log.c
22                 src/loop.c
23                 src/netlink.c
24                 src/network.c
25                 src/option.c
26                 src/outpacket.c
27                 src/poll.c
28                 src/radv.c
29                 src/rfc1035.c
30                 src/rfc2131.c
31                 src/rfc3315.c
32                 src/slaac.c
33                 src/tables.c
34                 src/tftp.c
35                 src/util.c
36    )
37
38 SET(PACKAGE ${PROJECT_NAME})
39 SET(PKGNAME ${PACKAGE})
40 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
41 SET(BINDIR "${PREFIX}/bin")
42
43 IF("${CMAKE_BUILD_TYPE}" STREQUAL "")
44         SET(CMAKE_BUILD_TYPE "Release")
45 ENDIF("${CMAKE_BUILD_TYPE}" STREQUAL "")
46 MESSAGE("Build type: ${CMAKE_BUILD_TYPE}")
47
48 #INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include)
49
50 INCLUDE(FindPkgConfig)
51 pkg_check_modules(pkgs REQUIRED dbus-1)
52
53 FOREACH(flag ${pkgs_CFLAGS})
54         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
55 ENDFOREACH(flag)
56 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fvisibility=hidden")
57
58 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
59 SET(CMAKE_C_FLAGS_DEBUG "-O0 -g")
60 SET(CMAKE_C_FLAGS_RELEASE "-O2")
61
62 ADD_DEFINITIONS("-DPACKAGE=\"${PACKAGE}\"")
63 ADD_DEFINITIONS("-DPACKAGE_NAME=\"${PKGNAME}\"")
64 ADD_DEFINITIONS("-DPREFIX=\"${PREFIX}\"")
65
66 FIND_PROGRAM(UNAME NAMES uname)
67 EXEC_PROGRAM("${UNAME}" ARGS "-m" OUTPUT_VARIABLE "ARCH")
68 #IF("${ARCH}" STREQUAL "arm")
69 #       ADD_DEFINITIONS("-D_MMICHECK_ARM_CODE_")
70 #ENDIF("${ARCH}" STREQUAL "arm")
71
72 ADD_EXECUTABLE(${PROJECT_NAME} ${SRCS})
73 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS})
74
75 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${BINDIR})