f11d4956a818e3418acd06026b89b085b8e8e431
[apps/livebox/data-provider-master.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(data-provider-master C)
3
4 INCLUDE(FindPkgConfig)
5 pkg_check_modules(pkg REQUIRED
6         ail
7         dlog
8         aul
9         vconf
10         sqlite3
11         db-util
12         glib-2.0
13         gio-2.0
14         bundle
15         ecore
16         eina
17         com-core
18         pkgmgr
19         notification
20         notification-service
21         badge
22         badge-service
23         libsmack
24         shortcut
25         libsystemd-daemon
26 )
27
28 IF (LIVEBOX)
29 pkg_check_modules(pkg_livebox REQUIRED
30         livebox-service
31 )
32 ENDIF (LIVEBOX)
33
34 IF (X11_SUPPORT)
35 pkg_check_modules(pkg_extra REQUIRED
36         ecore-x
37         x11
38         libdri2
39         libdrm
40         libtbm
41         xfixes
42         dri2proto
43         xext
44         xdamage
45 )
46 ENDIF (X11_SUPPORT)
47
48 IF (WAYLAND_SUPPORT)
49 pkg_check_modules(pkg_extra REQUIRED
50         ecore-wayland
51 )
52 ENDIF (WAYLAND_SUPPORT)
53
54 SET(PACKAGE "${PROJECT_NAME}")
55 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Winline -Werror -fno-builtin-malloc -fno-omit-frame-pointer -g")
56
57 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/include)
58
59 #ADD_DEFINITIONS("-DPREFIX=\"${CMAKE_INSTALL_PREFIX}\"")
60 ADD_DEFINITIONS("-DPATH_MAX=256")
61 ADD_DEFINITIONS("-DPACKAGE=\"${PACKAGE}\"")
62 ADD_DEFINITIONS("-DLOCALEDIR=\"${LOCALEDIR}\"")
63
64 ADD_DEFINITIONS("-DINFO_SOCKET=\"/opt/usr/share/live_magazine/.live.socket\"")
65 ADD_DEFINITIONS("-DCLIENT_SOCKET=\"/opt/usr/share/live_magazine/.client.socket\"")
66 ADD_DEFINITIONS("-DSLAVE_SOCKET=\"/opt/usr/share/live_magazine/.slave.socket\"")
67 ADD_DEFINITIONS("-DSERVICE_SOCKET=\"/opt/usr/share/live_magazine/.service.socket\"")
68
69 ADD_DEFINITIONS("-DCLIENT_PORT=\"8208\"")
70
71 ADD_DEFINITIONS("-DBADGE_SOCKET=\"/tmp/.badge.service\"")
72 ADD_DEFINITIONS("-DSHORTCUT_SOCKET=\"/tmp/.shortcut.service\"")
73 ADD_DEFINITIONS("-DNOTIFICATION_SOCKET=\"/tmp/.notification.service\"")
74 ADD_DEFINITIONS("-DUTILITY_SOCKET=\"/tmp/.utility.service\"")
75
76 ADD_DEFINITIONS("-DUTILITY_SMACK_LABEL=\"data-provider-master::utility\"")
77 ADD_DEFINITIONS("-DSHORTCUT_SMACK_LABEL=\"data-provider-master::shortcut\"")
78 ADD_DEFINITIONS("-DNOTIFICATION_SMACK_LABEL=\"data-provider-master::notification\"")
79 ADD_DEFINITIONS("-DBADGE_SMACK_LABEL=\"data-provider-master::badge\"")
80 ADD_DEFINITIONS("-DDATA_SHARE_LABEL=\"data-provider-master::share\"")
81
82 ADD_DEFINITIONS("-DDEFAULT_MASTER_CONF=\"/usr/share/data-provider-master/conf.ini\"")
83
84 ADD_DEFINITIONS("-DNDEBUG")
85
86 ADD_DEFINITIONS("-D_USE_ECORE_TIME_GET")
87
88 IF (MOBILE)
89         ADD_DEFINITIONS("-DMOBILE")
90 ELSEIF (WEARABLE)
91         ADD_DEFINITIONS("-DWEARABLE")
92 ENDIF (MOBILE)
93
94 SET(BUILD_SOURCE
95         src/main.c
96         src/util.c
97         src/setting.c
98         src/critical_log.c
99         src/shortcut_service.c
100         src/badge_service.c
101         src/notification_service.c
102         src/service_common.c
103         src/conf.c
104 )
105
106 IF (LIVEBOX)
107         ADD_DEFINITIONS("-DHAVE_LIVEBOX")
108         SET(BUILD_SOURCE
109                 ${BUILD_SOURCE}
110                 src/utility_service.c
111                 src/dead_monitor.c
112                 src/package.c
113                 src/instance.c
114                 src/server.c
115                 src/abi.c
116                 src/fault_manager.c
117                 src/parser.c
118                 src/io.c
119                 src/slave_life.c
120                 src/slave_rpc.c
121                 src/client_life.c
122                 src/client_rpc.c
123                 src/group.c
124                 src/script_handler.c
125                 src/liveinfo.c
126                 src/pkgmgr.c
127                 src/event.c
128                 src/file_service.c
129         )
130
131         IF (WAYLAND_SUPPORT)
132                 ADD_DEFINITIONS("-DHAVE_WAYLAND")
133                 SET(BUILD_SOURCE
134                         ${BUILD_SOURCE}
135                         src/xmonitor_wayland.c
136                         src/buffer_handler_wayland.c
137                         src/util_wayland.c
138                 )
139         ENDIF (WAYLAND_SUPPORT)
140
141         IF (X11_SUPPORT)
142                 ADD_DEFINITIONS("-DHAVE_X11")
143                 SET(BUILD_SOURCE
144                         ${BUILD_SOURCE}
145                         src/xmonitor.c
146                         src/buffer_handler.c
147                         src/util_x11.c
148                 )
149         ENDIF (X11_SUPPORT)
150 ENDIF (LIVEBOX)
151
152 IF (WAYLAND_SUPPORT)
153         ADD_DEFINITIONS("-DHAVE_WAYLAND")
154         SET(BUILD_SOURCE
155                 ${BUILD_SOURCE}
156                 src/util_wayland.c
157         )
158 ENDIF (WAYLAND_SUPPORT)
159
160 IF (X11_SUPPORT)
161         ADD_DEFINITIONS("-DHAVE_X11")
162         SET(BUILD_SOURCE
163                 ${BUILD_SOURCE}
164                 src/util_x11.c
165         )
166 ENDIF (X11_SUPPORT)
167
168 #ADD_DEFINITIONS("-D_APPLY_SCRIPT_ASYNC_UPDATE")
169 #ADD_DEFINITIONS("-DFLOG")
170 ADD_DEFINITIONS(${pkg_CFLAGS})
171 ADD_DEFINITIONS(${pkg_LDFLAGS})
172 ADD_DEFINITIONS(${pkg_extra_CFLAGS})
173 ADD_DEFINITIONS(${pkg_extra_LDFLAGS})
174 ADD_DEFINITIONS(${pkg_livebox_CFLAGS})
175 ADD_DEFINITIONS(${pkg_livebox_LDFLAGS})
176
177 ADD_EXECUTABLE(${PROJECT_NAME} ${BUILD_SOURCE})
178
179 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkg_LDFLAGS} ${pkg_extra_LDFLAGS} ${pkg_livebox_LDFLAGS} "-ldl -lrt")
180
181 IF (LIVEBOX)
182 INSTALL(FILES ${CMAKE_SOURCE_DIR}/data/abi.ini DESTINATION /usr/share/data-provider-master PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ)
183 INSTALL(FILES ${CMAKE_SOURCE_DIR}/data/${PRODUCT}.conf.ini DESTINATION /usr/share/data-provider-master RENAME "conf.ini" PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ)
184 INSTALL(FILES ${CMAKE_SOURCE_DIR}/data/${PRODUCT}.resolution.ini DESTINATION /usr/share/data-provider-master RENAME "resolution.ini" PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ)
185 ENDIF (LIVEBOX)
186 INSTALL(FILES ${CMAKE_SOURCE_DIR}/LICENSE DESTINATION /usr/share/license RENAME "${PROJECT_NAME}")
187 IF (MOBILE)
188 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION /usr/bin PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE SETUID)
189 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_NAME}.rule DESTINATION /opt/etc/smack/accesses.d)
190 ELSE (MOBILE)
191 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION /usr/bin PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
192 ENDIF (MOBILE)
193
194 # INCLUDE FOR BUILD & INSTALL .PO FILES
195 ADD_SUBDIRECTORY(res)
196 ADD_SUBDIRECTORY(data)
197 IF (LIVEBOX)
198 ADD_SUBDIRECTORY(pkgmgr_livebox)
199
200 IF (X11_SUPPORT)
201         IF ("${ENGINEER_BINARY}" STREQUAL "true")
202                 ADD_SUBDIRECTORY(util_liveinfo)
203         ENDIF ("${ENGINEER_BINARY}" STREQUAL "true")
204 ENDIF (X11_SUPPORT)
205 ENDIF (LIVEBOX)
206
207 # End of a file