d06a5b185567552f2405710ec542a9325c924210
[platform/core/connectivity/zigbee-manager.git] / zigbee-daemon / zigbee-service / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(zigbee-service C)
3
4 MESSAGE(===================================================================)
5 MESSAGE(Building...zigbee-service)
6 MESSAGE(===================================================================)
7
8 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
9 SET(EXEC_PREFIX "\${prefix}")
10 SET(LIBDIR ${LIB_INSTALL_DIR})
11 SET(UNITDIR ${UNIT_INSTALL_DIR})
12 SET(INCLUDEDIR "\${prefix}/include")
13
14 # Set required packages
15 INCLUDE(FindPkgConfig)
16 pkg_check_modules(pkgs REQUIRED glib-2.0 dlog)
17
18 FOREACH(flag ${pkgs_CFLAGS})
19         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
20 ENDFOREACH(flag)
21
22 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -Werror -Wextra -Wall -Wdeclaration-after-statement -Wmissing-declarations -Wredundant-decls -Wcast-align -Wcast-qual -Wno-array-bounds -Wno-empty-body -Wno-ignored-qualifiers -Wshadow -Wwrite-strings -Wswitch-default -Wno-unused-but-set-parameter -Wno-unused-but-set-variable")
23
24 ##Address-Space Layout Randomization
25 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fPIE")
26 SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -pie")
27
28 ADD_DEFINITIONS("-DZIGBEE_LOG_TAG=\"ZIGBEE-SVC\"")
29
30 IF (TIZEN_DEBUG_ENABLE)
31         ADD_DEFINITIONS ("-DTIZEN_DEBUG_ENABLE")
32 ENDIF (TIZEN_DEBUG_ENABLE)
33
34 MESSAGE(${CMAKE_C_FLAGS})
35 MESSAGE(${pkgs_LDFLAGS})
36
37 ### Include directories ###
38 INCLUDE_DIRECTORIES(
39         ${CMAKE_CURRENT_SOURCE_DIR}/src
40         ${CMAKE_CURRENT_SOURCE_DIR}/include
41         ${CMAKE_CURRENT_SOURCE_DIR}/../zigbee-lib/include
42         ${CMAKE_SOURCE_DIR}/common/include
43         ${CMAKE_CURRENT_SOURCE_DIR}/../zigbee-interface/include
44 )
45
46 ### Sources ###
47 SET(ZIGBEE_SERVICE_SRCS
48         src/zigbee_service.c
49 )
50
51 ### Binary build ###
52 ### zigbee-service ###
53 ADD_LIBRARY(${PROJECT_NAME} ${ZIGBEE_SERVICE_SRCS})
54 TARGET_LINK_LIBRARIES(${PROJECT_NAME} PRIVATE ${pkgs_LDFLAGS})
55
56 ### Install files ###
57 #INSTALL(TARGETS ${PROJECT_NAME} DESTINATION lib COMPONENT Runtime)