Implement keygrab using ecore API : ecore_wl_window_keygrab_set()
[apps/native/starter.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(starter C)
3
4 SET(PACKAGE ${PROJECT_NAME})
5 SET(PKGNAME "org.tizen.${PACKAGE}")
6 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
7 SET(BINDIR "${PREFIX}/bin")
8 SET(DATADIR "${PREFIX}/share")
9 SET(RESDIR "${PREFIX}/res")
10 SET(LOCALEDIR "${PREFIX}/share/locale")
11
12 IF("${TIZEN_PROFILE_NAME}" STREQUAL "MOBILE")
13 INCLUDE_DIRECTORIES(
14         ${CMAKE_SOURCE_DIR}/include
15         ${CMAKE_SOURCE_DIR}/include/mobile
16 )
17 INCLUDE(FindPkgConfig)
18 pkg_check_modules(pkgs REQUIRED
19         aul
20         capi-system-media-key
21         db-util
22         dlog
23         ecore
24         ecore-wayland
25         ecore-evas
26         ecore-input
27         edbus
28         eina
29         elementary
30         evas
31         syspopup-caller
32         vconf
33         appcore-efl
34         glib-2.0
35         ui-gadget-1
36         bundle
37         capi-appfw-application
38         capi-appfw-app-manager
39         capi-network-bluetooth
40         capi-system-system-settings
41         feedback
42         alarm-service
43         pkgmgr-info
44         deviced
45         edbus
46         dbus-1
47         dbus-glib-1
48         tts
49         capi-message-port
50         security-manager
51         efl-extension
52 )
53
54 IF(X11_SUPPORT)
55 pkg_check_modules(pkgs REQUIRED
56         ecore-x
57         utilX
58         )
59 ENDIF(X11_SUPPORT)
60
61 ELSE()
62 INCLUDE_DIRECTORIES(
63         ${CMAKE_SOURCE_DIR}/include
64         ${CMAKE_SOURCE_DIR}/include/wearable
65 )
66 INCLUDE(FindPkgConfig)
67 pkg_check_modules(pkgs REQUIRED
68         aul
69         capi-system-media-key
70         db-util
71         dlog
72         ecore
73         ecore-evas
74         ecore-input
75         edbus
76         eina
77         elementary
78         evas
79         syspopup-caller
80         vconf
81         appcore-efl
82         glib-2.0
83         ui-gadget-1
84         bundle
85         capi-appfw-application
86         capi-appfw-app-manager
87         capi-network-bluetooth
88         feedback
89         alarm-service
90         pkgmgr-info
91         deviced
92         edbus
93         dbus-1
94         dbus-glib-1
95 )
96
97 IF(X11_SUPPORT)
98 pkg_check_modules(pkgs REQUIRED
99         ecore-x
100         utilX
101         )
102 ENDIF(X11_SUPPORT)
103
104 ENDIF()
105
106
107 FOREACH(flag ${pkgs_CFLAGS})
108         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
109 ENDFOREACH(flag)
110
111 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -Wall -fPIE")
112 SET(CMAKE_C_FLAGS_PROFILING    "-O0 -g -pg -fPIE")
113 SET(CMAKE_CXX_FLAGS_PROFILING  "-O0 -std=c++0x -g -pg -fPIE")
114 SET(CMAKE_C_FLAGS_DEBUG        "-O0 -g -fPIE")
115 SET(CMAKE_CXX_FLAGS_DEBUG      "-O0 -std=c++0x -g -fPIE")
116 SET(CMAKE_C_FLAGS_RELEASE      "-O2 -g -fPIE")
117 SET(CMAKE_CXX_FLAGS_RELEASE    "-O2 -std=c++0x -g -fPIE")
118 SET(CMAKE_C_FLAGS_CCOV         "-O2 -g --coverage -fPIE")
119 SET(CMAKE_CXX_FLAGS_CCOV       "-O2 -std=c++0x -g --coverage -fPIE")
120
121 SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed -Wl,--rpath=${PREFIX}/lib -pie")
122
123 FIND_PROGRAM(UNAME NAMES uname)
124 EXEC_PROGRAM("${UNAME}" ARGS "-m" OUTPUT_VARIABLE "ARCH")
125 IF("${ARCH}" STREQUAL "arm")
126         ADD_DEFINITIONS("-DTARGET")
127         MESSAGE("add -DTARGET")
128 ENDIF("${ARCH}" STREQUAL "arm")
129
130 ADD_DEFINITIONS("-DPACKAGE=\"${PACKAGE}\"")
131 ADD_DEFINITIONS("-DPACKAGE_NAME=\"${PKGNAME}\"")
132 ADD_DEFINITIONS("-DPREFIX=\"${PREFIX}\"")
133 ADD_DEFINITIONS("-DLOCALEDIR=\"${LOCALEDIR}\"")
134 ADD_DEFINITIONS("-D_GNU_SOURCE")
135
136 IF(X11_SUPPORT)
137         ADD_DEFINITIONS("-DHAVE_X11")
138 ENDIF(X11_SUPPORT)
139
140 IF(WAYLAND_SUPPORT)
141         ADD_DEFINITIONS("-DHAVE_WAYLAND")
142 ENDIF(WAYLAND_SUPPORT)
143
144 IF("${TIZEN_PROFILE_NAME}" STREQUAL "MOBILE")
145 SET(BUILD_SOURCE
146         src/dbus_util.c
147         src/package_mgr.c
148         src/process_mgr.c
149         src/status.c
150
151         src/mobile/home_mgr.c
152         src/mobile/starter.c
153         src/mobile/lock_mgr.c
154         src/mobile/lock_pwd_util.c
155         src/mobile/lock_pwd_simple.c
156         src/mobile/lock_pwd_complex.c
157         src/mobile/lock_pwd_control_panel.c
158         src/mobile/lock_pwd_verification.c
159         src/mobile/window_mgr.c
160         src/mobile/popup.c
161         src/mobile/hw_key.c
162 )
163
164 ELSE("${TIZEN_PROFILE_NAME}" STREQUAL "MOBILE")
165 SET(BUILD_SOURCE
166         src/dbus_util.c
167         src/package_mgr.c
168         src/process_mgr.c
169         src/status.c
170
171         src/wearable/clock_mgr.c
172         src/wearable/home_mgr.c
173         src/wearable/hourly_alert.c
174         src/wearable/starter.c
175 )
176 IF(X11_SUPPORT)
177 SET(BUILD_SOURCE
178         ${BUILD_SOURCE}
179         src/wearable/hw_key.c
180 )
181 ENDIF(X11_SUPPORT)
182 ENDIF("${TIZEN_PROFILE_NAME}" STREQUAL "MOBILE")
183
184 ADD_EXECUTABLE(${PROJECT_NAME} ${BUILD_SOURCE})
185 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS})
186 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${BINDIR})
187 INSTALL(DIRECTORY DESTINATION ${DATADIR})
188
189 INSTALL(FILES ${CMAKE_SOURCE_DIR}/rd4starter DESTINATION /etc/init.d
190                 PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE
191                 GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
192 INSTALL(FILES ${CMAKE_SOURCE_DIR}/rd3starter DESTINATION /etc/init.d
193                 PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE
194                 GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
195 #INSTALL to /etc/init.d
196
197 ADD_SUBDIRECTORY(res)
198 ADD_SUBDIRECTORY(po)