tizen 2.4 release
[apps/home/settings.git] / src / CMakeLists.txt
1 INCLUDE(FindPkgConfig)
2 pkg_check_modules(pkgs_main REQUIRED
3                                           glib-2.0 gthread-2.0 elementary
4                                           appcore-common appcore-efl
5                                           tapi
6                                           utilX
7                                           dlog json-glib-1.0
8                                           ui-gadget-1
9                                           capi-appfw-application aul
10                                           capi-appfw-preference
11                                           ecore-imf ecore-x eina capi-system-sensor
12                                           ecore ecore-file ecore-input
13                                           deviced icu-i18n icu-io icu-le icu-lx icu-uc
14                                           appsvc libxml-2.0
15                                           capi-system-system-settings
16                                           capi-network-wifi
17                                           capi-network-bluetooth
18                                           dbus-glib-1
19                                           capi-media-player
20                                           capi-media-sound-manager
21                                           feedback
22                                           capi-system-device
23                                           cairo
24                                           alarm-service
25                                           notification
26                                           capi-appfw-app-manager
27                                           pkgmgr-info
28                                           sqlite3
29                                           accounts-svc
30                                           capi-media-image-util
31                                           efl-extension
32                                           callmgr_client
33                                   )
34
35 FOREACH(flag ${pkgs_main_CFLAGS})
36         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
37 ENDFOREACH(flag)
38 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -fPIC -Werror-implicit-function-declaration")
39 SET(CMAKE_C_FLAGS_DEBUG "-O0 -g")
40 SET(BUILD_ARCH "${ARCH}")
41
42 SET(APP_DATA_DIR_PATH "/opt/usr/apps/org.tizen.setting/data/")
43
44
45 IF (BINARY_RELEASE_TYPE_ENG)
46         MESSAGE("eng binary--------------------------------")
47         ADD_DEFINITIONS("-DBINARY_RELEASE_TYPE_ENG")
48 ENDIF (BINARY_RELEASE_TYPE_ENG)
49
50 IF("${BUILD_ARCH}" STREQUAL "arm")
51         ADD_DEFINITIONS("-DTARGET")
52         MESSAGE("********************** add -DTARGET")
53 ENDIF("${BUILD_ARCH}" STREQUAL "arm")
54
55 ADD_DEFINITIONS("-DPREFIX=\"${PREFIX}\"")
56 ADD_DEFINITIONS("-DRESDIR=\"${RESDIR}\"")
57 ADD_DEFINITIONS("-DDATADIR=\"${DATADIR}\"")
58 ADD_DEFINITIONS("-DLOCALEDIR=\"${LOCALEDIR}\"")
59 ADD_DEFINITIONS("-DICONDIR=\"${ICONDIR}\"")
60 ADD_DEFINITIONS("-DEDJEDIR=\"${EDJEDIR}\"")
61 ADD_DEFINITIONS("-DSLP_DEBUG")
62 ADD_DEFINITIONS("-DSETTING_PLUGIN")
63 ADD_DEFINITIONS("-fpie")
64
65 ADD_DEFINITIONS("-DXP_UNIX")
66
67
68 ADD_EXECUTABLE(${PROJECT_NAME}
69         ./setting.c
70         ./setting-handler.c
71         ./setting-helper.c
72         ./setting-main.c
73         )
74
75 # conf_tool
76 SET(SETTING_CONFUTIL setting_conf_util)
77 ADD_EXECUTABLE(${SETTING_CONFUTIL}
78         ./conf_util/setting_confutil.c
79         )
80 TARGET_LINK_LIBRARIES(${SETTING_CONFUTIL} -L${CMAKE_BINARY_DIR}/${SETTING_COMMON} -lsetting-common)
81 TARGET_LINK_LIBRARIES(${SETTING_CONFUTIL} ${pkgs_main_LDFLAGS} "-pie")
82 INSTALL(TARGETS ${SETTING_CONFUTIL} DESTINATION /usr/apps/${SETTING_PKG_NAME}/bin)
83
84 ####FOR TEST>>>>########
85 TARGET_LINK_LIBRARIES(${PROJECT_NAME} -L${CMAKE_BINARY_DIR}/${SETTING_COMMON} -lsetting-common)
86 #TARGET_LINK_LIBRARIES(${PROJECT_NAME} -L/usr/apps/${SETTING_PKG_NAME}/lib -lsetting-common)
87 # /usr/apps/${SETTING_PKG_NAME}/lib
88
89
90 # dmalloc
91 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_main_LDFLAGS} "-pie")
92
93 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION /usr/apps/${SETTING_PKG_NAME}/bin)
94
95 # support help ringtone
96 SET(SETTING_HELP_RINGTONE setting_help_ringtone)
97 ADD_EXECUTABLE(${SETTING_HELP_RINGTONE}
98                  ./setting-support-shortcut/support_help_ringtone.c
99          )
100 TARGET_LINK_LIBRARIES(${SETTING_HELP_RINGTONE} -L${CMAKE_BINARY_DIR}/${SETTING_COMMON} -lsetting-common)
101 TARGET_LINK_LIBRARIES(${SETTING_HELP_RINGTONE} ${pkgs_main_LDFLAGS} "-pie")
102 INSTALL(TARGETS ${SETTING_HELP_RINGTONE} DESTINATION /usr/apps/${SETTING_PKG_NAME}/bin)
103 # end
104
105
106 # make font-slider.edj
107 ADD_CUSTOM_TARGET(font-slider.edj
108                 COMMAND edje_cc -id ${CMAKE_SOURCE_DIR}/resource/images -id ${CMAKE_SOURCE_DIR}/resource/icons -sd ${CMAKE_SOURCE_DIR}/resource/sounds
109                 ${CMAKE_SOURCE_DIR}/resource/font-slider.edc ${CMAKE_BINARY_DIR}/font-slider.edj
110                 DEPENDS ${CMAKE_SOURCE_DIR}/resource/font-slider.edc
111 )
112 ADD_DEPENDENCIES(${PROJECT_NAME} font-slider.edj)
113 INSTALL(FILES ${CMAKE_BINARY_DIR}/font-slider.edj DESTINATION /usr/apps/${SETTING_PKG_NAME}/res/edje/)
114
115 # make setting-theme.edj
116 ADD_CUSTOM_TARGET(setting-theme.edj
117                 COMMAND edje_cc -id ${CMAKE_SOURCE_DIR}/resource/images -id ${CMAKE_SOURCE_DIR}/resource/icons -sd ${CMAKE_SOURCE_DIR}/resource/sounds
118                 ${CMAKE_SOURCE_DIR}/resource/setting-theme.edc ${CMAKE_BINARY_DIR}/setting-theme.edj
119                 DEPENDS ${CMAKE_SOURCE_DIR}/resource/setting-theme.edc
120 )
121 ADD_DEPENDENCIES(${PROJECT_NAME} setting-theme.edj)
122
123 INSTALL(FILES ${CMAKE_BINARY_DIR}/setting-theme.edj DESTINATION /usr/apps/${SETTING_PKG_NAME}/res/edje/)
124
125 # make settings.edj
126 ADD_CUSTOM_TARGET(settings.edj
127                 COMMAND edje_cc -id ${CMAKE_SOURCE_DIR}/resource/images -id ${CMAKE_SOURCE_DIR}/resource/icons -sd ${CMAKE_SOURCE_DIR}/resource/sounds
128                 ${CMAKE_SOURCE_DIR}/resource/settings.edc ${CMAKE_BINARY_DIR}/settings.edj
129                 DEPENDS ${CMAKE_SOURCE_DIR}/resource/settings.edc
130 )
131 ADD_DEPENDENCIES(${PROJECT_NAME} settings.edj)
132
133 INSTALL(FILES ${CMAKE_BINARY_DIR}/settings.edj DESTINATION /usr/apps/${SETTING_PKG_NAME}/res/edje/)
134
135 # make setting-newux.edj
136 ADD_CUSTOM_TARGET(setting-newux.edj
137                 COMMAND edje_cc -id ${CMAKE_SOURCE_DIR}/resource/images -id ${CMAKE_SOURCE_DIR}/resource/icons
138                 ${CMAKE_SOURCE_DIR}/resource/setting-newux.edc ${CMAKE_BINARY_DIR}/setting-newux.edj
139                 DEPENDS ${CMAKE_SOURCE_DIR}/resource/setting-newux.edc
140 )
141
142 ADD_DEPENDENCIES(${PROJECT_NAME} setting-newux.edj)
143 INSTALL(FILES ${CMAKE_BINARY_DIR}/setting-newux.edj DESTINATION /usr/apps/${SETTING_PKG_NAME}/res/edje/)
144
145 # make setting-genlist.edj
146 ADD_CUSTOM_TARGET(setting-genlist.edj
147                 COMMAND edje_cc -id ${CMAKE_SOURCE_DIR}/resource/images -sd ${CMAKE_SOURCE_DIR}/resource/sounds
148                 ${CMAKE_SOURCE_DIR}/resource/setting-genlist.edc ${CMAKE_BINARY_DIR}/setting-genlist.edj
149                 DEPENDS ${CMAKE_SOURCE_DIR}/resource/setting-genlist.edc
150 )
151
152 ADD_DEPENDENCIES(${PROJECT_NAME} setting-genlist.edj)
153 INSTALL(FILES ${CMAKE_BINARY_DIR}/setting-genlist.edj DESTINATION /usr/apps/${SETTING_PKG_NAME}/res/edje/)
154
155 ADD_CUSTOM_TARGET(setting-new-genlist.edj
156                 COMMAND edje_cc -id ${CMAKE_SOURCE_DIR}/resource/images -sd ${CMAKE_SOURCE_DIR}/resource/sounds
157                 ${CMAKE_SOURCE_DIR}/resource/setting-new-genlist.edc
158                 ${CMAKE_BINARY_DIR}/setting-new-genlist.edj
159                 DEPENDS ${CMAKE_SOURCE_DIR}/resource/setting-new-genlist.edc
160 )
161
162 ADD_DEPENDENCIES(${PROJECT_NAME} setting-new-genlist.edj)
163 INSTALL(FILES ${CMAKE_BINARY_DIR}/setting-new-genlist.edj DESTINATION /usr/apps/${SETTING_PKG_NAME}/res/edje/)
164
165 # make setting-proc.edj
166 ADD_CUSTOM_TARGET(setting-proc.edj
167                 COMMAND edje_cc -id ${CMAKE_SOURCE_DIR}/resource/images -id ${CMAKE_SOURCE_DIR}/resource/icons
168                 ${CMAKE_SOURCE_DIR}/resource/setting-proc.edc ${CMAKE_BINARY_DIR}/setting-proc.edj
169                 DEPENDS ${CMAKE_SOURCE_DIR}/resource/setting-proc.edc
170 )
171
172 ADD_DEPENDENCIES(${PROJECT_NAME} setting-proc.edj)
173 INSTALL(FILES ${CMAKE_BINARY_DIR}/setting-proc.edj DESTINATION /usr/apps/${SETTING_PKG_NAME}/res/edje/)
174
175 # make setting-slider.edj
176 ADD_CUSTOM_TARGET(setting-slider.edj
177                 COMMAND edje_cc -id ${CMAKE_SOURCE_DIR}/resource/images -sd ${CMAKE_SOURCE_DIR}/resource/sounds
178                 ${CMAKE_SOURCE_DIR}/resource/setting-slider.edc
179                 ${CMAKE_BINARY_DIR}/setting-slider.edj
180                 DEPENDS ${CMAKE_SOURCE_DIR}/resource/setting-slider.edc
181 )
182
183 ADD_DEPENDENCIES(${PROJECT_NAME} setting-slider.edj)
184 INSTALL(FILES ${CMAKE_BINARY_DIR}/setting-slider.edj DESTINATION /usr/apps/${SETTING_PKG_NAME}/res/edje/)
185
186 # make setting-eff.edj
187 ADD_CUSTOM_TARGET(setting-eff.edj
188                 COMMAND edje_cc -id ${CMAKE_SOURCE_DIR}/resource/images -id ${CMAKE_SOURCE_DIR}/resource/icons
189                 ${CMAKE_SOURCE_DIR}/resource/setting-proc.edc ${CMAKE_BINARY_DIR}/setting-eff.edj
190                 DEPENDS ${CMAKE_SOURCE_DIR}/resource/setting-proc.edc
191 )
192
193 ADD_DEPENDENCIES(${PROJECT_NAME} setting-eff.edj)
194 INSTALL(FILES ${CMAKE_BINARY_DIR}/setting-eff.edj DESTINATION /usr/apps/${SETTING_PKG_NAME}/res/edje/)
195
196 # make ug-setting-manage-applications-efl.edj
197 ADD_CUSTOM_TARGET(ug-setting-manage-applications-efl.edj
198                 COMMAND edje_cc
199                 ${CMAKE_SOURCE_DIR}/resource/ug-setting-manage-applications-efl.edc ${CMAKE_BINARY_DIR}/ug-setting-manage-applications-efl.edj
200                 DEPENDS ${CMAKE_SOURCE_DIR}/resource/ug-setting-manage-applications-efl.edc
201 )
202
203 ADD_DEPENDENCIES(${PROJECT_NAME} ug-setting-manage-applications-efl.edj)
204 INSTALL(FILES ${CMAKE_BINARY_DIR}/ug-setting-manage-applications-efl.edj DESTINATION /usr/apps/${SETTING_PKG_NAME}/res/edje/)
205
206 # make setting-custompopup.edj
207 ADD_CUSTOM_TARGET(setting-custompopup.edj
208                 COMMAND edje_cc -id ${CMAKE_SOURCE_DIR}/resource/images -sd ${CMAKE_SOURCE_DIR}/resource/sounds -id ${CMAKE_SOURCE_DIR}/resource/icons
209                 ${CMAKE_SOURCE_DIR}/resource/setting-custompopup.edc
210                 ${CMAKE_BINARY_DIR}/setting-custompopup.edj
211                 DEPENDS ${CMAKE_SOURCE_DIR}/resource/setting-custompopup.edc
212 )
213
214 ADD_DEPENDENCIES(${PROJECT_NAME} setting-custompopup.edj)
215 INSTALL(FILES ${CMAKE_BINARY_DIR}/setting-custompopup.edj DESTINATION /usr/apps/${SETTING_PKG_NAME}/res/edje/)
216
217
218 INSTALL(FILES ${CMAKE_SOURCE_DIR}/resource/langlist.xml DESTINATION /usr/apps/${SETTING_PKG_NAME}/data)
219 INSTALL(FILES ${CMAKE_SOURCE_DIR}/resource/langlist.xml DESTINATION ${APP_DATA_DIR_PATH})
220 INSTALL(FILES ${CMAKE_SOURCE_DIR}/resource/langlist_all.xml DESTINATION /usr/apps/${SETTING_PKG_NAME}/data)
221 INSTALL(FILES ${CMAKE_SOURCE_DIR}/resource/langlist_all.xml DESTINATION ${APP_DATA_DIR_PATH})
222 #------------------------------------------------------------------------------------------
223
224 # install desktop file & icon
225 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
226
227 INSTALL(FILES ${CMAKE_SOURCE_DIR}/org.tizen.setting.xml DESTINATION /usr/share/packages/)
228 INSTALL(FILES ${CMAKE_SOURCE_DIR}/org.tizen.setting.xml.ref DESTINATION /usr/share/packages/)
229
230 INSTALL(FILES ${CMAKE_SOURCE_DIR}/${SETTING_PKG_NAME}.png DESTINATION /usr/share/icons/default/small)
231 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/resource/icons DESTINATION /usr/apps/${SETTING_PKG_NAME}/res FILES_MATCHING PATTERN "*.png")
232 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/resource/images DESTINATION /usr/apps/${SETTING_PKG_NAME}/res FILES_MATCHING PATTERN "*.png")
233
234
235 # install file for help app
236 #SET(HELPDATADIR_PH "/usr/apps/org.tizen.setting/shared/res")
237 #INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/resource/help DESTINATION ${HELPDATADIR_PH} PATTERN "*")
238
239 # install media-data
240 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/resource/media-data/settings DESTINATION /opt/usr/share PATTERN "*")
241
242
243 # install the SEARCH db
244 INSTALL(FILES ${CMAKE_SOURCE_DIR}/resource/test.db DESTINATION ${APP_DATA_DIR_PATH})
245
246 # install changeable UI code
247 INSTALL(FILES ${CMAKE_SOURCE_DIR}/resource/changeable/org.tizen.setting.xml DESTINATION /usr/apps/org.tizen.setting/shared/res/tables)
248
249 INSTALL(FILES ${CMAKE_SOURCE_DIR}/mime.setting.xml DESTINATION /usr/share/mime/packages)
250
251
252 #------------------------------------------------------------------
253 #add setting-sfinder-plugin
254 #ADD_SUBDIRECTORY(setting-sfinder-plugin)
255 #------------------------------------------------------------------
256
257 #-----------------------------------------------------------------------------------
258 CONFIGURE_FILE(
259         setting-common-internal.pc
260     ${CMAKE_CURRENT_SOURCE_DIR}/setting-common-internal.pc
261     @ONLY
262 )
263 INSTALL(FILES ${CMAKE_SOURCE_DIR}/src/setting-common-internal.pc DESTINATION /usr/lib/pkgconfig)
264 #-----------------------------------------------------------------------------------
265
266 # install firewall script for FOTA(210.org.tizen.setting.patch.sh)
267 INSTALL(PROGRAMS ${CMAKE_SOURCE_DIR}/210.org.tizen.setting.patch.sh DESTINATION /etc/opt/upgrade/)
268