1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(ise-default CXX)
7 src/ise-language-change.cpp
8 src/ise-tutorial-mode.cpp
12 src/ise-stt-option.cpp
13 src/ise-stt-common.cpp
14 src/ise-floating-mode.cpp
18 src/WInputSttMicEffect.cpp
19 src/sdk/ise_lang_table.cpp
22 src/candidate/candidate-factory.cpp
23 src/candidate/candidate.cpp
24 src/candidate/efl/candidate-efl.cpp
25 src/candidate/efl/candidate-multiline-efl.cpp
28 src/ise-emoticon-list.cpp
29 src/ise-emoticon-mode.cpp
33 src/w-input-smartreply.cpp
38 src/ise-stt-option.cpp
40 src/sdk/sdk_option.cpp
43 src/sdk/ise_lang_table.cpp
46 SET(ISE_PACKAGE ${PROJECT_NAME})
47 SET(ISE_PKGNAME ${PACKAGE})
48 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
49 SET(ISE_BINDIR "${TZ_SYS_RO_APP}/${ISE_PACKAGE}/bin")
50 SET(ISE_LIBDIR "${TZ_SYS_RO_APP}/${ISE_PACKAGE}/lib")
51 SET(ISE_RESDIR "${TZ_SYS_RO_APP}/${ISE_PACKAGE}/res")
52 SET(ISE_LAYOUTDIR "${ISE_RESDIR}/720x1280/default")
53 IF("${CMAKE_BUILD_TYPE}" STREQUAL "")
54 SET(CMAKE_BUILD_TYPE "Release")
56 MESSAGE(STATUS "Build type: ${CMAKE_BUILD_TYPE}")
58 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/src/include
59 ${CMAKE_SOURCE_DIR}/src
60 ${CMAKE_SOURCE_DIR}/src/candidate/include
61 ${CMAKE_SOURCE_DIR}/src/candidate/efl
64 INCLUDE(FindPkgConfig)
65 SET(PKGS_CHECK_MODULES
74 capi-appfw-application
83 ADD_DEFINITIONS("-DHAVE_CBHM")
84 SET(PKGS_CHECK_MODULES ${PKGS_CHECK_MODULES} cbhm)
87 pkg_check_modules(ISE_PKGS REQUIRED ${PKGS_CHECK_MODULES})
89 FOREACH(flag ${ISE_PKGS_CFLAGS})
90 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
93 SET(SETTING_PKGS_CHECK_MODULES
99 capi-appfw-application
100 capi-appfw-preference
103 pkg_check_modules(ISE_SETTING_PKGS REQUIRED ${SETTING_PKGS_CHECK_MODULES})
105 SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${EXTRA_CFLAGS} -fPIE -Wall -fpermissive -Werror")
106 #SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${EXTRA_CFLAGS} -finstrument-functions")
107 SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -g")
108 SET(CMAKE_CXX_FLAGS_RELEASE "-O2 -g")
109 SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed -pie")
111 ADD_DEFINITIONS("-DEXPORTED=__attribute__((visibility(\"default\")))")
112 ADD_DEFINITIONS("-DPACKAGE=\"${ISE_PACKAGE}\"")
113 ADD_DEFINITIONS("-DPACKAGE_NAME=\"${ISE_PKGNAME}\"")
114 ADD_DEFINITIONS("-DRESDIR=\"${ISE_RESDIR}\"")
115 ADD_DEFINITIONS("-DLAYOUTDIR=\"${ISE_LAYOUTDIR}\"")
116 ADD_DEFINITIONS(-DISE_NAME=\"/ise-default\")
117 ADD_DEFINITIONS(-DSUPPORTS_EMOTICONS)
119 ADD_EXECUTABLE(${PROJECT_NAME} ${ISE_SRCS})
121 ADD_EXECUTABLE(${PROJECT_NAME}-setting ${ISE_SETTING_SRCS})
126 COMMAND edje_cc -no-save
127 -id ${CMAKE_CURRENT_SOURCE_DIR}/data/edc/candidate-single
128 -sd ${CMAKE_CURRENT_SOURCE_DIR}/data/edc/candidate-single
129 ${CMAKE_CURRENT_SOURCE_DIR}/data/edc/candidate-single/candidate.edc
130 ${CMAKE_BINARY_DIR}/candidate-single.edj
131 DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/data/edc/candidate-single/candidate.edc
133 ADD_DEPENDENCIES(${PROJECT_NAME} candidate-single.edj)
134 INSTALL(FILES ${CMAKE_BINARY_DIR}/candidate-single.edj DESTINATION ${ISE_RESDIR}/edje)
138 candidate-multiline.edj
139 COMMAND edje_cc -no-save
140 -id ${CMAKE_CURRENT_SOURCE_DIR}/data/edc/candidate-multiline
141 -sd ${CMAKE_CURRENT_SOURCE_DIR}/data/edc/candidate-multiline
142 ${CMAKE_CURRENT_SOURCE_DIR}/data/edc/candidate-multiline/candidate.edc
143 ${CMAKE_BINARY_DIR}/candidate-multiline.edj
144 DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/data/edc/candidate-multiline/candidate.edc
146 ADD_DEPENDENCIES(${PROJECT_NAME} candidate-multiline.edj)
147 INSTALL(FILES ${CMAKE_BINARY_DIR}/candidate-multiline.edj DESTINATION ${ISE_RESDIR}/edje)
151 customised_gengrid.edj
152 COMMAND edje_cc -no-save
153 -id ${CMAKE_CURRENT_SOURCE_DIR}/data/edc/gengrid
154 -sd ${CMAKE_CURRENT_SOURCE_DIR}/data/edc/gengrid
155 ${CMAKE_CURRENT_SOURCE_DIR}/data/edc/gengrid/customised_gengrid.edc
156 ${CMAKE_BINARY_DIR}/customised_gengrid.edj
157 DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/data/edc/gengrid/customised_gengrid.edc)
158 ADD_DEPENDENCIES(${PROJECT_NAME} customised_gengrid.edj)
159 INSTALL(FILES ${CMAKE_BINARY_DIR}/customised_gengrid.edj DESTINATION ${ISE_RESDIR}/edje)
163 COMMAND edje_cc -no-save
164 ${CMAKE_CURRENT_SOURCE_DIR}/data/edc/gengrid/layout_keypad.edc
165 ${CMAKE_BINARY_DIR}/layout_keypad.edj
166 DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/data/edc/gengrid/layout_keypad.edc)
167 ADD_DEPENDENCIES(${PROJECT_NAME} layout_keypad.edj)
168 INSTALL(FILES ${CMAKE_BINARY_DIR}/layout_keypad.edj DESTINATION ${ISE_RESDIR}/edje)
170 ADD_CUSTOM_TARGET( customised_ctxpopup.edj COMMAND edje_cc
171 -id ${CMAKE_CURRENT_SOURCE_DIR}/edje/mobile
172 -sd ${CMAKE_CURRENT_SOURCE_DIR}/edje/mobile
173 ${CMAKE_CURRENT_SOURCE_DIR}/data/edc/customised_ctxpopup.edc
174 ${CMAKE_BINARY_DIR}/customised_ctxpopup.edj
175 DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/data/edc/customised_ctxpopup.edc)
176 ADD_DEPENDENCIES(${PROJECT_NAME} customised_ctxpopup.edj)
177 INSTALL(FILES ${CMAKE_BINARY_DIR}/customised_ctxpopup.edj DESTINATION ${ISE_RESDIR}/edje/mobile)
179 if(${TARGET} STREQUAL "wearable")
180 file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/res/wearable/edje)
181 ADD_CUSTOM_TARGET(w-input-stt.edj COMMAND edje_cc
182 -id ${CMAKE_CURRENT_SOURCE_DIR}/edje/wearable/images
183 ${CMAKE_CURRENT_SOURCE_DIR}/res/wearable/edje/w-input-stt.edc
184 ${CMAKE_BINARY_DIR}/res/wearable/edje/w-input-stt.edj
185 DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/res/wearable/edje/w-input-stt.edc)
186 ADD_DEPENDENCIES(${PROJECT_NAME} w-input-stt.edj)
187 INSTALL(FILES ${CMAKE_BINARY_DIR}/res/wearable/edje/w-input-stt.edj DESTINATION
188 ${ISE_RESDIR}/edje/wearable)
190 ADD_CUSTOM_TARGET(popup_custom.edj COMMAND edje_cc
191 -id ${CMAKE_CURRENT_SOURCE_DIR}/edje/wearable/images
192 ${CMAKE_CURRENT_SOURCE_DIR}/res/wearable/edje/popup_custom.edc
193 ${CMAKE_BINARY_DIR}/res/wearable/edje/popup_custom.edj
194 DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/res/wearable/edje/popup_custom.edc)
195 ADD_DEPENDENCIES(${PROJECT_NAME} popup_custom.edj)
196 INSTALL(FILES ${CMAKE_BINARY_DIR}/res/wearable/edje/popup_custom.edj DESTINATION
197 ${ISE_RESDIR}/edje/wearable)
199 ADD_CUSTOM_TARGET(tutorial_popup.edj COMMAND edje_cc
200 -id ${CMAKE_CURRENT_SOURCE_DIR}/edje/wearable/images
201 ${CMAKE_CURRENT_SOURCE_DIR}/res/wearable/edje/tutorial_popup.edc
202 ${CMAKE_BINARY_DIR}/res/wearable/edje/tutorial_popup.edj
203 DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/res/wearable/edje/tutorial_popup.edc)
204 ADD_DEPENDENCIES(${PROJECT_NAME} tutorial_popup.edj)
205 INSTALL(FILES ${CMAKE_BINARY_DIR}/res/wearable/edje/tutorial_popup.edj DESTINATION
206 ${ISE_RESDIR}/edje/wearable)
208 ADD_CUSTOM_TARGET(w-input-stt-button.edj COMMAND edje_cc
209 -id ${CMAKE_CURRENT_SOURCE_DIR}/edje/wearable/images
210 ${CMAKE_CURRENT_SOURCE_DIR}/res/wearable/edje/w-input-stt-button.edc
211 ${CMAKE_BINARY_DIR}/res/wearable/edje/w-input-stt-button.edj
212 DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/res/wearable/edje/w-input-stt-button.edc)
213 ADD_DEPENDENCIES(${PROJECT_NAME} w-input-stt-button.edj)
214 INSTALL(FILES ${CMAKE_BINARY_DIR}/res/wearable/edje/w-input-stt-button.edj DESTINATION
215 ${ISE_RESDIR}/edje/wearable)
217 elseif(${TARGET} STREQUAL "tv")
218 file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/res/tv/edje)
219 ADD_CUSTOM_TARGET(w-input-stt.edj COMMAND edje_cc
220 -id ${CMAKE_CURRENT_SOURCE_DIR}/edje/tv/images
221 ${CMAKE_CURRENT_SOURCE_DIR}/res/tv/edje/w-input-stt.edc
222 ${CMAKE_BINARY_DIR}/res/tv/edje/w-input-stt.edj
223 DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/res/tv/edje/w-input-stt.edc)
224 ADD_DEPENDENCIES(${PROJECT_NAME} w-input-stt.edj)
225 INSTALL(FILES ${CMAKE_BINARY_DIR}/res/tv/edje/w-input-stt.edj DESTINATION
226 ${ISE_RESDIR}/edje/tv)
228 ADD_CUSTOM_TARGET(w-input-stt-button.edj COMMAND edje_cc
229 -id ${CMAKE_CURRENT_SOURCE_DIR}/edje/tv/images
230 ${CMAKE_CURRENT_SOURCE_DIR}/res/tv/edje/w-input-stt-button.edc
231 ${CMAKE_BINARY_DIR}/res/tv/edje/w-input-stt-button.edj
232 DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/res/tv/edje/w-input-stt-button.edc)
233 ADD_DEPENDENCIES(${PROJECT_NAME} w-input-stt-button.edj)
234 INSTALL(FILES ${CMAKE_BINARY_DIR}/res/tv/edje/w-input-stt-button.edj DESTINATION
235 ${ISE_RESDIR}/edje/tv)
237 ADD_CUSTOM_TARGET(popup_custom.edj COMMAND edje_cc
238 -id ${CMAKE_CURRENT_SOURCE_DIR}/edje/tv/images
239 ${CMAKE_CURRENT_SOURCE_DIR}/res/tv/edje/popup_custom.edc
240 ${CMAKE_BINARY_DIR}/res/tv/edje/popup_custom.edj
241 DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/res/tv/edje/popup_custom.edc)
242 ADD_DEPENDENCIES(${PROJECT_NAME} popup_custom.edj)
243 INSTALL(FILES ${CMAKE_BINARY_DIR}/res/tv/edje/popup_custom.edj DESTINATION
244 ${ISE_RESDIR}/edje/tv)
246 ADD_CUSTOM_TARGET(popup_keyboard.edj COMMAND edje_cc
247 -id ${CMAKE_CURRENT_SOURCE_DIR}/edje/tv/images
248 ${CMAKE_CURRENT_SOURCE_DIR}/res/tv/edje/popup_keyboard.edc
249 ${CMAKE_BINARY_DIR}/res/tv/edje/popup_keyboard.edj
250 DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/res/tv/edje/popup_keyboard.edc)
251 ADD_DEPENDENCIES(${PROJECT_NAME} popup_keyboard.edj)
252 INSTALL(FILES ${CMAKE_BINARY_DIR}/res/tv/edje/popup_keyboard.edj DESTINATION
253 ${ISE_RESDIR}/edje/tv)
256 file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/res/mobile/edje)
257 ADD_CUSTOM_TARGET(w-input-stt.edj COMMAND edje_cc
258 -id ${CMAKE_CURRENT_SOURCE_DIR}/edje/mobile/images
259 ${CMAKE_CURRENT_SOURCE_DIR}/res/mobile/edje/w-input-stt.edc
260 ${CMAKE_BINARY_DIR}/res/mobile/edje/w-input-stt.edj
261 DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/res/mobile/edje/w-input-stt.edc)
262 ADD_DEPENDENCIES(${PROJECT_NAME} w-input-stt.edj)
263 INSTALL(FILES ${CMAKE_BINARY_DIR}/res/mobile/edje/w-input-stt.edj DESTINATION
264 ${ISE_RESDIR}/edje/mobile)
266 ADD_CUSTOM_TARGET(w-input-stt-button.edj COMMAND edje_cc
267 -id ${CMAKE_CURRENT_SOURCE_DIR}/edje/mobile/images
268 ${CMAKE_CURRENT_SOURCE_DIR}/res/mobile/edje/w-input-stt-button.edc
269 ${CMAKE_BINARY_DIR}/res/mobile/edje/w-input-stt-button.edj
270 DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/res/mobile/edje/w-input-stt-button.edc)
271 ADD_DEPENDENCIES(${PROJECT_NAME} w-input-stt-button.edj)
272 INSTALL(FILES ${CMAKE_BINARY_DIR}/res/mobile/edje/w-input-stt-button.edj DESTINATION
273 ${ISE_RESDIR}/edje/mobile)
275 ADD_CUSTOM_TARGET(popup_custom.edj COMMAND edje_cc
276 -id ${CMAKE_CURRENT_SOURCE_DIR}/edje/mobile/images
277 ${CMAKE_CURRENT_SOURCE_DIR}/res/mobile/edje/popup_custom.edc
278 ${CMAKE_BINARY_DIR}/res/mobile/edje/popup_custom.edj
279 DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/res/mobile/edje/popup_custom.edc)
280 ADD_DEPENDENCIES(${PROJECT_NAME} popup_custom.edj)
281 INSTALL(FILES ${CMAKE_BINARY_DIR}/res/mobile/edje/popup_custom.edj DESTINATION
282 ${ISE_RESDIR}/edje/mobile)
287 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${ISE_PKGS_LDFLAGS})
288 TARGET_LINK_LIBRARIES(${PROJECT_NAME}-setting ${ISE_SETTING_PKGS_LDFLAGS})
290 set_target_properties(${PROJECT_NAME} PROPERTIES PREFIX "")
291 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${ISE_BINDIR})
292 INSTALL(TARGETS ${PROJECT_NAME}-setting DESTINATION ${ISE_BINDIR})
294 INSTALL(FILES ${CMAKE_SOURCE_DIR}/${PROJECT_NAME}.xml DESTINATION
295 ${TZ_SYS_RO_PACKAGES})
297 if(${TARGET} STREQUAL "wearable")
298 FILE(GLOB_RECURSE ISE_DEFAULT_IMAGES "${CMAKE_CURRENT_SOURCE_DIR}/res/wearable/images/*.png")
299 INSTALL(FILES ${ISE_DEFAULT_IMAGES} DESTINATION ${ISE_RESDIR}/wearable/images)
300 elseif(${TARGET} STREQUAL "tv")
301 FILE(GLOB_RECURSE ISE_DEFAULT_IMAGES "${CMAKE_CURRENT_SOURCE_DIR}/res/tv/images/*.png")
302 INSTALL(FILES ${ISE_DEFAULT_IMAGES} DESTINATION ${ISE_RESDIR}/tv/images)
304 FILE(GLOB_RECURSE ISE_DEFAULT_IMAGES "${CMAKE_CURRENT_SOURCE_DIR}/res/mobile/images/*.png")
305 INSTALL(FILES ${ISE_DEFAULT_IMAGES} DESTINATION ${ISE_RESDIR}/mobile/images)
308 if(${TARGET} STREQUAL "tv")
309 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/data/pixmaps/default/tv/
310 DESTINATION ${ISE_LAYOUTDIR}/tv/image)
311 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/data/layout/tv/ DESTINATION
312 ${ISE_LAYOUTDIR}/tv FILES_MATCHING PATTERN "*.xml")
313 elseif(${TARGET} STREQUAL "wearable")
314 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/data/pixmaps/default/wearable/
315 DESTINATION ${ISE_LAYOUTDIR}/wearable/image)
316 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/data/layout/wearable/ DESTINATION
317 ${ISE_LAYOUTDIR}/wearable FILES_MATCHING PATTERN "*.xml")
319 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/data/pixmaps/default/mobile/
320 DESTINATION ${ISE_LAYOUTDIR}/mobile/image)
321 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/data/layout/mobile/ DESTINATION
322 ${ISE_LAYOUTDIR}/mobile FILES_MATCHING PATTERN "*.xml")