add command manager module
[apps/native/tizen-things-daemon.git] / common / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2
3 SET(CMAKE_VERBOSE_MAKEFILE 0)
4 SET(COMMON ttd-common)
5
6 INCLUDE(FindPkgConfig)
7 pkg_check_modules(COMMON_PKGS REQUIRED
8         glib-2.0
9         gio-unix-2.0
10         dlog
11 )
12
13 FOREACH (flag ${COMMON_PKGS_CFLAGS})
14         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
15 ENDFOREACH(flag)
16
17 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fvisibility=hidden -Wall -Winline -g -fno-builtin-malloc -fPIE")
18 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -fPIC -Wall -Winline -g")
19 SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed -pie")
20
21 FIND_PROGRAM(GDBUS_CODEGEN NAMES gdbus-codegen)
22 EXEC_PROGRAM(${GDBUS_CODEGEN} ARGS
23                                 " \\
24                                 --generate-c-code ${CMAKE_CURRENT_SOURCE_DIR}/common-worker-inf-dbus \\
25                                 ${CMAKE_CURRENT_SOURCE_DIR}/common-worker-inf-dbus.xml \\
26                                 ")
27
28 FILE(GLOB COMMON_SOURCE ${CMAKE_CURRENT_SOURCE_DIR}/*.c)
29
30 SET(COMMON_INCLUDES
31         ${CMAKE_CURRENT_SOURCE_DIR}
32         CACHE PATH "common includes path"
33 )
34
35 SET(COMMON_LIBS
36         ${COMMON}
37         CACHE STRING "common libs"
38 )
39
40 ADD_LIBRARY(${COMMON} STATIC ${COMMON_SOURCE})
41 TARGET_LINK_LIBRARIES(${COMMON} ${COMMON_LDFLAGS})
42 TARGET_INCLUDE_DIRECTORIES(${COMMON} PUBLIC ${COMMON_INCLUDES})