adopt dbus cynara check
[platform/core/telephony/tel-plugin-dbus_tapi.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(dbus-tapi-plugin C)
3
4 ### Global setting ###
5 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
6 SET(EXEC_PREFIX "\${prefix}")
7 SET(LIBDIR ${LIB_INSTALL_DIR})
8 SET(INCLUDEDIR "\${prefix}/include")
9 SET(PKGCONFIGDIR "${PREFIX}/lib/pkgconfig" CACHE PATH PKGCONFIGDIR)
10 SET(CMAKE_INSTALL_PREFIX "${PREFIX}")
11 SET(INTROSPECTION "${CMAKE_SOURCE_DIR}/introspection")
12
13 # Set required packages
14 INCLUDE(FindPkgConfig)
15 pkg_check_modules(pkgs REQUIRED
16         glib-2.0
17         gio-2.0
18         gio-unix-2.0
19         libxml-2.0
20         tcore
21         aul
22         appsvc
23         capi-appfw-app-manager
24 )
25
26 FOREACH(flag ${pkgs_CFLAGS})
27         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
28 ENDFOREACH(flag)
29
30
31 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR} ${CMAKE_SOURCE_DIR}/include/ ${CMAKE_SOURCE_DIR}/src/sat_ui_support/)
32
33 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
34 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Werror -Wextra -fvisibility=hidden -fPIC -fdata-sections -ffunction-sections -Wl,--gc-sections")
35
36 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -O2 -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wdeclaration-after-statement -Wmissing-declarations -Wall -Wno-array-bounds -Wno-empty-body -Wno-ignored-qualifiers -Wswitch-default -Wno-unused-but-set-parameter -Wno-unused-but-set-variable")
37
38 ADD_DEFINITIONS("-DENABLE_KPI_LOGS")
39 ADD_DEFINITIONS("-DGCF")
40 ADD_DEFINITIONS("-DFEATURE_TLOG_DEBUG")
41 ADD_DEFINITIONS("-DTCORE_LOG_TAG=\"DBUS\"")
42 ADD_DEFINITIONS("-DPLUGIN_VERSION=${VERSION}")
43 ADD_DEFINITIONS("-DEXPORT_API=__attribute__((visibility(\"default\")))")
44 #ADD_DEFINITIONS("-DTIZEN_USE_DESKTOP_FILE")
45 #ADD_DEFINITIONS("-DTIZEN_SUPPORT_SAT_ICON")
46
47 IF (BOARD_PLATFORM_SPREADTRUM)
48 ADD_DEFINITIONS("-DTIZEN_PLATFORM_LITE")
49 ELSE()
50 ADD_DEFINITIONS("-DTIZEN_PLATFORM_USE_QCOM_QMI")
51 ENDIF (BOARD_PLATFORM_SPREADTRUM)
52
53 MESSAGE(${CMAKE_C_FLAGS})
54 MESSAGE(${pkgs_LDFLAGS})
55
56 SET(SRCS
57         src/desc-dtapi.c
58         src/dtapi_main.c
59         src/dtapi_common.c
60         src/dtapi_network.c
61         src/dtapi_phonebook.c
62         src/dtapi_sim.c
63         src/dtapi_sap.c
64         src/dtapi_sms.c
65         src/dtapi_sat.c
66         src/dtapi_sat_manager.c
67         src/sat_ui_support/sat_ui_support.c
68         src/dtapi_ss.c
69         src/dtapi_call.c
70         src/dtapi_modem.c
71         src/dtapi_oem.c
72 )
73
74 ADD_CUSTOM_COMMAND(
75         WORKING_DIRECTORY
76         OUTPUT ${CMAKE_BINARY_DIR}/generated-code.c
77         COMMAND gdbus-codegen --interface-prefix org.tizen.telephony. --generate-c-code generated-code --c-namespace Telephony --c-generate-object-manager --generate-docbook generated-docs
78         ${INTROSPECTION}/manager.xml
79         ${INTROSPECTION}/network.xml
80         ${INTROSPECTION}/sim.xml
81         ${INTROSPECTION}/phonebook.xml
82         ${INTROSPECTION}/sap.xml
83         ${INTROSPECTION}/sat.xml
84         ${INTROSPECTION}/sms.xml
85         ${INTROSPECTION}/call.xml
86         ${INTROSPECTION}/ss.xml
87         ${INTROSPECTION}/modem.xml
88         ${INTROSPECTION}/oem.xml
89         COMMENT "Generating GDBus .c/.h")
90
91 # library build
92 ADD_LIBRARY(dbus-tapi-plugin SHARED ${SRCS} ${CMAKE_BINARY_DIR}/generated-code.c)
93 TARGET_LINK_LIBRARIES(dbus-tapi-plugin ${pkgs_LDFLAGS})
94 SET_TARGET_PROPERTIES(dbus-tapi-plugin PROPERTIES PREFIX "" OUTPUT_NAME dbus-tapi-plugin)
95
96 # install
97 INSTALL(TARGETS dbus-tapi-plugin
98                 LIBRARY DESTINATION ${LIBDIR}/telephony/plugins)
99 INSTALL(FILES ${CMAKE_SOURCE_DIR}/LICENSE DESTINATION /usr/share/license RENAME tel-plugin-dbus_tapi)