Modify directory hierarchy
[platform/core/uifw/ise-default.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(ise-default CXX)
3
4 SET(ISE_SRCS
5     src/ise.cpp
6     src/languages.cpp
7     src/config.cpp
8     src/option.cpp
9     src/imdata.cpp
10     src/ise-stt-mode.cpp
11     src/ise-stt-option.cpp
12     src/MicEffector.cpp
13     src/SttFeedback.cpp
14     src/SttManager.cpp
15     src/WInputSttMicEffect.cpp
16     src/sdk/ise_lang_table.cpp
17     src/sdk/cji.cpp
18     src/sdk/sdk.cpp
19     src/sdk/sdk_option.cpp
20     src/candidate/candidate-factory.cpp
21     src/candidate/candidate.cpp
22     src/candidate/efl/candidate-efl.cpp
23     src/candidate/efl/candidate-multiline-efl.cpp
24
25     src/ise-emoticon-list.cpp
26     src/ise-emoticon-mode.cpp
27     src/cbhm.cpp
28     src/modeindicator.cpp
29 )
30
31 SET(ISE_PACKAGE ${PROJECT_NAME})
32 SET(ISE_PKGNAME ${PACKAGE})
33 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
34 SET(ISE_BINDIR "${TZ_SYS_RO_APP}/${ISE_PACKAGE}/bin")
35 SET(ISE_LIBDIR "${TZ_SYS_RO_APP}/${ISE_PACKAGE}/lib")
36 SET(ISE_RESDIR "${TZ_SYS_RO_APP}/${ISE_PACKAGE}/res")
37 SET(ISE_LAYOUTDIR "${ISE_RESDIR}/720x1280/default")
38 IF("${CMAKE_BUILD_TYPE}" STREQUAL "")
39     SET(CMAKE_BUILD_TYPE "Release")
40 ENDIF()
41 MESSAGE(STATUS "Build type: ${CMAKE_BUILD_TYPE}")
42
43 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/src/include
44     ${CMAKE_SOURCE_DIR}/src
45     ${CMAKE_SOURCE_DIR}/src/candidate/include
46     ${CMAKE_SOURCE_DIR}/src/candidate/efl
47 )
48
49 INCLUDE(FindPkgConfig)
50 pkg_check_modules(ISE_PKGS REQUIRED
51         elementary
52         efl-extension
53         dlog
54         libscl-ui
55         libscl-core
56         ecore-imf
57         isf
58         vconf
59         libxml-2.0
60         stt
61         capi-appfw-application
62         )
63
64 FOREACH(flag ${ISE_PKGS_CFLAGS})
65     SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
66 ENDFOREACH(flag)
67
68 SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${EXTRA_CFLAGS} -fPIC -Wall")
69 #SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${EXTRA_CFLAGS} -finstrument-functions")
70 SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -g")
71 SET(CMAKE_CXX_FLAGS_RELEASE "-O2 -g")
72
73 ADD_DEFINITIONS("-DPACKAGE=\"${ISE_PACKAGE}\"")
74 ADD_DEFINITIONS("-DPACKAGE_NAME=\"${ISE_PKGNAME}\"")
75 ADD_DEFINITIONS("-DRESDIR=\"${ISE_RESDIR}\"")
76 ADD_DEFINITIONS("-DLAYOUTDIR=\"${ISE_LAYOUTDIR}\"")
77 ADD_DEFINITIONS(-DISE_NAME=\"/ise-default\")
78 ADD_DEFINITIONS(-DSUPPORTS_EMOTICONS)
79
80 ADD_EXECUTABLE(${PROJECT_NAME} ${ISE_SRCS})
81
82 # For edc File
83 ADD_CUSTOM_TARGET(
84     candidate-single.edj
85     COMMAND edje_cc -no-save
86         -id ${CMAKE_CURRENT_SOURCE_DIR}/data/edc/candidate-single
87         -sd ${CMAKE_CURRENT_SOURCE_DIR}/data/edc/candidate-single
88         ${CMAKE_CURRENT_SOURCE_DIR}/data/edc/candidate-single/candidate.edc
89         ${CMAKE_BINARY_DIR}/candidate-single.edj
90     DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/data/edc/candidate-single/candidate.edc
91 )
92 ADD_DEPENDENCIES(${PROJECT_NAME} candidate-single.edj)
93 INSTALL(FILES ${CMAKE_BINARY_DIR}/candidate-single.edj DESTINATION ${ISE_LAYOUTDIR}/sdk/edc)
94 # For edc File end
95 # For edc File
96 ADD_CUSTOM_TARGET(
97     candidate-multiline.edj
98     COMMAND edje_cc -no-save
99         -id ${CMAKE_CURRENT_SOURCE_DIR}/data/edc/candidate-multiline
100         -sd ${CMAKE_CURRENT_SOURCE_DIR}/data/edc/candidate-multiline
101         ${CMAKE_CURRENT_SOURCE_DIR}/data/edc/candidate-multiline/candidate.edc
102         ${CMAKE_BINARY_DIR}/candidate-multiline.edj
103     DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/data/edc/candidate-multiline/candidate.edc
104 )
105 ADD_DEPENDENCIES(${PROJECT_NAME} candidate-multiline.edj)
106 INSTALL(FILES ${CMAKE_BINARY_DIR}/candidate-multiline.edj DESTINATION ${ISE_LAYOUTDIR}/sdk/edc)
107 # For edc File end
108 # For edc File
109 ADD_CUSTOM_TARGET(
110     customised_gengrid.edj
111     COMMAND edje_cc -no-save
112         -id ${CMAKE_CURRENT_SOURCE_DIR}/data/edc/gengrid
113         -sd ${CMAKE_CURRENT_SOURCE_DIR}/data/edc/gengrid
114         ${CMAKE_CURRENT_SOURCE_DIR}/data/edc/gengrid/customised_gengrid.edc
115         ${CMAKE_BINARY_DIR}/customised_gengrid.edj
116     DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/data/edc/gengrid/customised_gengrid.edc)
117 ADD_DEPENDENCIES(${PROJECT_NAME} customised_gengrid.edj)
118 INSTALL(FILES ${CMAKE_BINARY_DIR}/customised_gengrid.edj DESTINATION ${ISE_LAYOUTDIR}/sdk/edc)
119
120 ADD_CUSTOM_TARGET(
121     layout_keypad.edj
122     COMMAND edje_cc -no-save
123         ${CMAKE_CURRENT_SOURCE_DIR}/data/edc/gengrid/layout_keypad.edc
124         ${CMAKE_BINARY_DIR}/layout_keypad.edj
125         DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/data/edc/gengrid/layout_keypad.edc)
126 ADD_DEPENDENCIES(${PROJECT_NAME} layout_keypad.edj)
127 INSTALL(FILES ${CMAKE_BINARY_DIR}/layout_keypad.edj DESTINATION ${ISE_LAYOUTDIR}/sdk/edc)
128
129 if(${TARGET} STREQUAL "wearable")
130 ADD_CUSTOM_TARGET(w-input-stt.edj COMMAND edje_cc
131         -id ${CMAKE_CURRENT_SOURCE_DIR}/edje/wearable/images
132         ${CMAKE_CURRENT_SOURCE_DIR}/res/wearable/edje/w-input-stt.edc
133         ${CMAKE_BINARY_DIR}/res/wearable/edje/w-input-stt.edj
134         DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/res/wearable/edje/w-input-stt.edc)
135 ADD_DEPENDENCIES(${PROJECT_NAME} w-input-stt.edj)
136 INSTALL(FILES ${CMAKE_BINARY_DIR}/res/wearable/edje/w-input-stt.edj DESTINATION
137 ${ISE_RESDIR}/edje/wearable)
138
139 ADD_CUSTOM_TARGET(w-input-stt-button.edj COMMAND edje_cc
140         -id ${CMAKE_CURRENT_SOURCE_DIR}/edje/wearable/images
141         ${CMAKE_CURRENT_SOURCE_DIR}/res/wearable/edje/w-input-stt-button.edc
142         ${CMAKE_BINARY_DIR}/res/wearable/edje/w-input-stt-button.edj
143         DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/res/wearable/edje/w-input-stt-button.edc)
144 ADD_DEPENDENCIES(${PROJECT_NAME} w-input-stt-button.edj)
145 INSTALL(FILES ${CMAKE_BINARY_DIR}/res/wearable/edje/w-input-stt-button.edj DESTINATION
146 ${ISE_RESDIR}/edje/wearable)
147
148 else()
149 ADD_CUSTOM_TARGET(w-input-stt.edj COMMAND edje_cc
150         -id ${CMAKE_CURRENT_SOURCE_DIR}/edje/mobile/images
151         ${CMAKE_CURRENT_SOURCE_DIR}/res/mobile/edje/w-input-stt.edc
152         ${CMAKE_BINARY_DIR}/res/mobile/edje/w-input-stt.edj
153         DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/res/mobile/edje/w-input-stt.edc)
154 ADD_DEPENDENCIES(${PROJECT_NAME} w-input-stt.edj)
155 INSTALL(FILES ${CMAKE_BINARY_DIR}/res/mobile/edje/w-input-stt.edj DESTINATION
156 ${ISE_RESDIR}/edje/mobile)
157
158 ADD_CUSTOM_TARGET(w-input-stt-button.edj COMMAND edje_cc
159         -id ${CMAKE_CURRENT_SOURCE_DIR}/edje/mobile/images
160         ${CMAKE_CURRENT_SOURCE_DIR}/res/mobile/edje/w-input-stt-button.edc
161         ${CMAKE_BINARY_DIR}/res/mobile/edje/w-input-stt-button.edj
162         DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/res/mobile/edje/w-input-stt-button.edc)
163 ADD_DEPENDENCIES(${PROJECT_NAME} w-input-stt-button.edj)
164 INSTALL(FILES ${CMAKE_BINARY_DIR}/res/mobile/edje/w-input-stt-button.edj DESTINATION
165 ${ISE_RESDIR}/edje/mobile)
166 endif()
167
168 # For edc File end
169
170 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${ISE_PKGS_LDFLAGS})
171
172 set_target_properties(${PROJECT_NAME} PROPERTIES PREFIX "")
173 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${ISE_BINDIR})
174
175 INSTALL(FILES ${CMAKE_SOURCE_DIR}/${PROJECT_NAME}.xml DESTINATION
176         ${TZ_SYS_RO_PACKAGES})
177
178 if(${TARGET} STREQUAL "wearable")
179 FILE(GLOB_RECURSE ISE_DEFAULT_IMAGES "${CMAKE_CURRENT_SOURCE_DIR}/res/wearable/images/*.png")
180 INSTALL(FILES ${ISE_DEFAULT_IMAGES} DESTINATION ${ISE_RESDIR}/wearable/images)
181 else()
182 FILE(GLOB_RECURSE ISE_DEFAULT_IMAGES "${CMAKE_CURRENT_SOURCE_DIR}/res/mobile/images/*.png")
183 INSTALL(FILES ${ISE_DEFAULT_IMAGES} DESTINATION ${ISE_RESDIR}/mobile/images)
184 endif()
185
186 if(${TARGET} STREQUAL "tv")
187 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/data/pixmaps/default/tv/
188         DESTINATION ${ISE_LAYOUTDIR}/tv/image)
189 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/data/layout/tv/ DESTINATION
190         ${ISE_LAYOUTDIR}/tv FILES_MATCHING PATTERN "*.xml")
191 elseif(${TARGET} STREQUAL "wearable")
192 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/data/pixmaps/default/wearable/
193         DESTINATION ${ISE_LAYOUTDIR}/wearable/image)
194 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/data/layout/wearable/ DESTINATION
195         ${ISE_LAYOUTDIR}/wearable FILES_MATCHING PATTERN "*.xml")
196 else()
197 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/data/pixmaps/default/mobile/
198         DESTINATION ${ISE_LAYOUTDIR}/mobile/image)
199 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/data/layout/mobile/ DESTINATION
200         ${ISE_LAYOUTDIR}/mobile FILES_MATCHING PATTERN "*.xml")
201 endif()
202
203 ADD_SUBDIRECTORY(po)