Clean up BuildRequires and remove unused DPL log code
[profile/ivi/phoned.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
2 PROJECT(phoned)
3
4 SET(CMAKE_INSTALL_PREFIX "/usr")
5
6 # -----------------------------------------------------------------------------
7 # Required platform modules
8 # -----------------------------------------------------------------------------
9 INCLUDE(FindPkgConfig)
10
11 PKG_CHECK_MODULES(glib REQUIRED glib-2.0)
12 PKG_CHECK_MODULES(gio REQUIRED gio-2.0)
13 PKG_CHECK_MODULES(dbus REQUIRED dbus-1)
14 PKG_CHECK_MODULES(libebook-contacts REQUIRED libebook-contacts-1.2)
15
16 INCLUDE_DIRECTORIES(
17   ${glib_INCLUDE_DIRS}
18   ${gio_INCLUDE_DIRS}
19   ${dbus_INCLUDE_DIRS}
20   ${libebook-contacts_INCLUDE_DIRS}
21 )
22
23 # -----------------------------------------------------------------------------
24 # Determine the time tracing option
25 # -----------------------------------------------------------------------------
26
27 OPTION(ENABLE_TIME_TRACER "TIME TRACING" OFF)
28
29 IF(ENABLE_TIME_TRACER)
30     MESSAGE(STATUS "Time tracer enabled")
31     ADD_DEFINITIONS("-DENABLE_TIME_TRACER")
32 ELSE(ENABLE_TIME_TRACER)
33     MESSAGE(STATUS "Time tracer disabled")
34 ENDIF(ENABLE_TIME_TRACER)
35
36 # -----------------------------------------------------------------------------
37 # Set build type (Release by default)
38 # -----------------------------------------------------------------------------
39 IF("${CMAKE_BUILD_TYPE}" STREQUAL "")
40      SET(CMAKE_BUILD_TYPE Release)
41 ENDIF("${CMAKE_BUILD_TYPE}" STREQUAL "")
42
43 MESSAGE("Build type: ${CMAKE_BUILD_TYPE}")
44
45 # -----------------------------------------------------------------------------
46 # CFlags
47 # -----------------------------------------------------------------------------
48 SET(CMAKE_C_FLAGS_PROFILING    "-O0 -g -pg")
49 SET(CMAKE_CXX_FLAGS_PROFILING  "-O0 -std=c++0x -g -pg")
50 SET(CMAKE_C_FLAGS_DEBUG        "-O0 -g")
51 SET(CMAKE_CXX_FLAGS_DEBUG      "-O0 -std=c++0x -g")
52 SET(CMAKE_C_FLAGS_RELEASE      "-O2 -g")
53 SET(CMAKE_CXX_FLAGS_RELEASE    "-O2 -std=c++0x -g")
54 ADD_DEFINITIONS("-DCLIENT_IPC_THREAD")
55 ADD_DEFINITIONS("-DEXPORT_API=")
56 ADD_DEFINITIONS("-Wall")
57 ADD_DEFINITIONS("-D_FILE_OFFSET_BITS=64")
58 #ADD_DEFINITIONS("-Werror")
59 #ADD_DEFINITIONS("-Wextra")
60 ADD_DEFINITIONS("-DAPPLICATION_API_BACKWARD_COMPATIBILITY")
61 ADD_DEFINITIONS("-std=c++11")
62
63 # -----------------------------------------------------------------------------
64 # Global variables
65 # -----------------------------------------------------------------------------
66
67 SET(DESTINATION_PREFIX sbin)
68 SET(DBUS_SERVICE_PREFIX share/dbus-1/services)
69 SET(SYSTEMD_SERVICE_PREFIX lib/systemd/user)
70
71 # -----------------------------------------------------------------------------
72 # Macros for pkgconfig
73 # -----------------------------------------------------------------------------
74 SET(PKGCONFIG_DIR ${CMAKE_SOURCE_DIR}/pkgconfig)
75
76 MACRO(configure_and_install_pkg PKG_FILE)
77     CONFIGURE_FILE(${PKGCONFIG_DIR}/${PKG_FILE}.in
78                ${PKGCONFIG_DIR}/${PKG_FILE} @ONLY)
79     INSTALL(FILES ${PKGCONFIG_DIR}/${PKG_FILE} DESTINATION lib/pkgconfig)
80 ENDMACRO(configure_and_install_pkg)
81
82 SET(TARGET_NAME phoned)
83
84 configure_and_install_pkg(phoned.pc)
85
86 SET(SRCS src/phoned.cpp
87          src/phone.cpp
88          src/connman.cpp
89          src/bluez.cpp
90          src/obex.cpp
91          src/ofono.cpp
92          src/utils.cpp
93 )
94
95 ADD_EXECUTABLE(${TARGET_NAME} ${SRCS})
96 TARGET_LINK_LIBRARIES(${TARGET_NAME}
97                       ${glib_LDFLAGS}
98                       ${gio_LDFLAGS}
99                       ${dbus_LDFLAGS}
100                       ${libebook-contacts_LDFLAGS}
101 )
102 INSTALL(TARGETS ${TARGET_NAME} DESTINATION ${DESTINATION_PREFIX})
103 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/scripts/org.tizen.phone.service DESTINATION ${DBUS_SERVICE_PREFIX})
104 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/scripts/phoned.service DESTINATION ${SYSTEMD_SERVICE_PREFIX})
105