Return fail if found invited device list or channel list empty
[platform/core/api/multi-device-group.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 SET(CAPI_MDG "capi-network-mdg")
3
4 PROJECT(${CAPI_MDG} C CXX)
5
6 MESSAGE(" - Defining...configuration variables")
7 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
8
9 SET(LIB ${LIB_PATH})
10 SET(LIBDIR ${PREFIX}/${LIB_PATH})
11
12 SET(INC_DIR include)
13 INCLUDE_DIRECTORIES(${INC_DIR})
14 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/src)
15
16 MESSAGE(" - Checking...packages dependency")
17 SET(COMMON_DEPS dlog gio-2.0 glib-2.0 gio-unix-2.0 capi-system-info)
18 SET(PC_DEPS "")
19
20 MESSAGE(" - Making...build configuration")
21 INCLUDE(FindPkgConfig)
22 pkg_check_modules(${CAPI_MDG} REQUIRED ${COMMON_DEPS})
23 FOREACH(flag ${${CAPI_MDG}_CFLAGS})
24     SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
25 ENDFOREACH(flag)
26
27 IF(BUILD_GCOV)
28         SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -fPIC -Wall -Werror -g -fvisibility=hidden -fprofile-arcs -ftest-coverage")
29 ELSE(BUILD_GCOV)
30         SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -fPIC -Wall -Werror -g -fvisibility=hidden")
31 ENDIF(BUILD_GCOV)
32
33 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -fPIC -Wall -Werror -g -fvisibility=hidden")
34 SET(CMAKE_C_FLAGS_DEBUG "-O0 -g")
35
36 IF("${ARCH}" STREQUAL "arm")
37     ADD_DEFINITIONS("-DTARGET")
38 ENDIF("${ARCH}" STREQUAL "arm")
39
40 ADD_DEFINITIONS("-DPREFIX=\"${CMAKE_INSTALL_PREFIX}\"")
41 ADD_DEFINITIONS("-DTIZEN_DEBUG")
42
43 SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed -Wl,--rpath=${LIBDIR}")
44
45 MESSAGE(" - Generating...d-bus code")
46 FIND_PROGRAM(GDBUS_CODEGEN NAMES gdbus-codegen)
47 EXEC_PROGRAM(${GDBUS_CODEGEN} ARGS
48                 " \\
49                 --generate-c-code ${CMAKE_CURRENT_SOURCE_DIR}/src/mdg_gdbus \\
50                 --interface-prefix org.tizen.mdg. \\
51                 ${CMAKE_CURRENT_SOURCE_DIR}/src/mdg_gdbus.xml \\
52                 ")
53
54 MESSAGE(" - Building...shared library")
55 SET(SOURCES src/mdg.c
56             src/mdg_gdbus.c
57             src/mdg_util.c
58             src/mdg_dbus.c)
59 ADD_LIBRARY(${CAPI_MDG} SHARED ${SOURCES})
60 TARGET_LINK_LIBRARIES(${CAPI_MDG} ${${CAPI_MDG}_LDFLAGS} pthread)
61
62 MESSAGE(" - Installing...the library and header files")
63 INSTALL(TARGETS ${CAPI_MDG} DESTINATION lib)
64 INSTALL(
65         DIRECTORY include/ DESTINATION include
66         FILES_MATCHING
67         PATTERN "include/*.h"
68         )
69
70 SET(PC_NAME ${CAPI_MDG})
71 SET(PC_REQUIRED ${PC_DEPS})
72 SET(PC_LDFLAGS -l${CAPI_MDG})
73
74 CONFIGURE_FILE(
75     ${CAPI_MDG}.pc.in
76     ${CMAKE_CURRENT_SOURCE_DIR}/${CAPI_MDG}.pc
77     @ONLY
78 )
79
80 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/${CAPI_MDG}.pc DESTINATION lib/pkgconfig)
81
82 ADD_SUBDIRECTORY(test)