ebed7c69c0cff10779f48418a8a94b0658da685e
[platform/core/uifw/dali-toolkit.git] / automated-tests / src / dali-toolkit-internal / CMakeLists.txt
1 SET(PKG_NAME "dali-toolkit-internal")
2
3 SET(EXEC_NAME "tct-${PKG_NAME}-core")
4 SET(RPM_NAME "core-${PKG_NAME}-tests")
5
6 SET(CAPI_LIB "dali-toolkit-internal")
7
8 # List of test case sources (Only these get parsed for test cases)
9 SET(TC_SOURCES
10  utc-Dali-AddOns.cpp
11  utc-Dali-BidirectionalSupport.cpp
12  utc-Dali-BoundedParagraph-Functions.cpp
13  utc-Dali-ColorConversion.cpp
14  utc-Dali-Control-internal.cpp
15  utc-Dali-DebugRendering.cpp
16  utc-Dali-Dictionary.cpp
17  utc-Dali-FeedbackStyle.cpp
18  utc-Dali-ItemView-internal.cpp
19  utc-Dali-LineHelperFunctions.cpp
20  utc-Dali-LogicalModel.cpp
21  utc-Dali-PropertyHelper.cpp
22  utc-Dali-Text-Characters.cpp
23  utc-Dali-Text-CharacterSetConversion.cpp
24  utc-Dali-Text-Circular.cpp
25  utc-Dali-Text-Controller.cpp
26  utc-Dali-Text-Cursor.cpp
27  utc-Dali-Text-Layout.cpp
28  utc-Dali-Text-Markup.cpp
29  utc-Dali-Text-MultiLanguage.cpp
30  utc-Dali-Text-Segmentation.cpp
31  utc-Dali-Text-Shaping.cpp
32  utc-Dali-Text-Typesetter.cpp
33  utc-Dali-Text-ViewModel.cpp
34  utc-Dali-TextField-internal.cpp
35  utc-Dali-TextEditor-internal.cpp
36  utc-Dali-TextLabel-internal.cpp
37  utc-Dali-TextSelectionPopup-internal.cpp
38  utc-Dali-TextureManager.cpp
39  utc-Dali-Visuals-internal.cpp
40  utc-Dali-VisualModel.cpp
41  utc-Dali-VisualUrl.cpp
42  utc-Dali-Text-Hyphen-Wrapping.cpp
43  utc-Dali-Text-Ellipsis.cpp
44  utc-Dali-Text-CharacterSpacing.cpp
45 )
46
47 IF(ELDBUS_AVAILABLE)
48   LIST(APPEND TC_SOURCES
49     utc-Dali-Accessibility-Accessible.cpp
50     utc-Dali-Accessibility-Controls.cpp
51     utc-Dali-Accessibility-Controls-BridgeUp.cpp
52     utc-Dali-Accessibility-Text.cpp
53     utc-Dali-Accessibility-Value.cpp
54     )
55 ENDIF()
56
57 # List of test harness files (Won't get parsed for test cases)
58 SET(TEST_HARNESS_SOURCES
59    ../dali-toolkit/dali-toolkit-test-utils/toolkit-adaptor.cpp
60    ../dali-toolkit/dali-toolkit-test-utils/toolkit-application.cpp
61    ../dali-toolkit/dali-toolkit-test-utils/toolkit-clipboard.cpp
62    ../dali-toolkit/dali-toolkit-test-utils/toolkit-clipboard-event-notifier.cpp
63    ../dali-toolkit/dali-toolkit-test-utils/toolkit-event-thread-callback.cpp
64    ../dali-toolkit/dali-toolkit-test-utils/toolkit-environment-variable.cpp
65    ../dali-toolkit/dali-toolkit-test-utils/toolkit-feedback-player.cpp
66    ../dali-toolkit/dali-toolkit-test-utils/toolkit-input-method-context.cpp
67    ../dali-toolkit/dali-toolkit-test-utils/toolkit-input-method-options.cpp
68    ../dali-toolkit/dali-toolkit-test-utils/toolkit-lifecycle-controller.cpp
69    ../dali-toolkit/dali-toolkit-test-utils/toolkit-orientation.cpp
70    ../dali-toolkit/dali-toolkit-test-utils/toolkit-physical-keyboard.cpp
71    ../dali-toolkit/dali-toolkit-test-utils/toolkit-style-monitor.cpp
72    ../dali-toolkit/dali-toolkit-test-utils/toolkit-test-application.cpp
73    ../dali-toolkit/dali-toolkit-test-utils/toolkit-timer.cpp
74    ../dali-toolkit/dali-toolkit-test-utils/toolkit-tts-player.cpp
75    ../dali-toolkit/dali-toolkit-test-utils/toolkit-vector-animation-renderer.cpp
76    ../dali-toolkit/dali-toolkit-test-utils/toolkit-vector-image-renderer.cpp
77    ../dali-toolkit/dali-toolkit-test-utils/toolkit-web-engine.cpp
78    ../dali-toolkit/dali-toolkit-test-utils/toolkit-window.cpp
79    ../dali-toolkit/dali-toolkit-test-utils/toolkit-scene-holder.cpp
80    ../dali-toolkit/dali-toolkit-test-utils/dali-test-suite-utils.cpp
81    ../dali-toolkit/dali-toolkit-test-utils/dali-toolkit-test-suite-utils.cpp
82    ../dali-toolkit/dali-toolkit-test-utils/dummy-control.cpp
83    ../dali-toolkit/dali-toolkit-test-utils/mesh-builder.cpp
84    ../dali-toolkit/dali-toolkit-test-utils/test-actor-utils.cpp
85    ../dali-toolkit/dali-toolkit-test-utils/test-animation-data.cpp
86    ../dali-toolkit/dali-toolkit-test-utils/test-application.cpp
87    ../dali-toolkit/dali-toolkit-test-utils/test-button.cpp
88    ../dali-toolkit/dali-toolkit-test-utils/test-encoded-image-buffer.cpp
89    ../dali-toolkit/dali-toolkit-test-utils/test-harness.cpp
90    ../dali-toolkit/dali-toolkit-test-utils/test-gl-abstraction.cpp
91    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-sync-impl.cpp
92    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-sync-object.cpp
93    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-buffer.cpp
94    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-command-buffer.cpp
95    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-controller.cpp
96    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-framebuffer.cpp
97    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-texture.cpp
98    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-program.cpp
99    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-pipeline.cpp
100    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-reflection.cpp
101    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-sampler.cpp
102    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-shader.cpp
103    ../dali-toolkit/dali-toolkit-test-utils/test-platform-abstraction.cpp
104    ../dali-toolkit/dali-toolkit-test-utils/test-render-controller.cpp
105    ../dali-toolkit/dali-toolkit-test-utils/test-trace-call-stack.cpp
106    ../dali-toolkit/dali-toolkit-test-utils/test-native-image.cpp
107    dali-toolkit-test-utils/toolkit-text-utils.cpp
108    dali-toolkit-test-utils/dummy-visual.cpp
109    dali-toolkit-test-utils/test-addon-manager.cpp
110 )
111
112 IF(ELDBUS_AVAILABLE)
113   LIST(APPEND TEST_HARNESS_SOURCES
114    dali-toolkit-test-utils/accessibility-test-utils.cpp
115    dali-toolkit-test-utils/dbus-wrapper.cpp
116     )
117 ENDIF()
118
119
120 PKG_CHECK_MODULES(${CAPI_LIB} REQUIRED
121     dali2-core
122     dali2-adaptor
123     dali2-toolkit
124     eldbus
125     ecore-input
126     eina
127 )
128
129 MESSAGE("Libraries to link with:>${${CAPI_LIB}_LIBRARIES}")
130
131 ADD_COMPILE_OPTIONS( -O0 -ggdb --coverage -Wall -Werror -DDEBUG_ENABLED -fPIC )
132 ADD_COMPILE_OPTIONS( ${${CAPI_LIB}_CFLAGS_OTHER} )
133
134 ADD_DEFINITIONS(-DTEST_RESOURCE_DIR=\"${CMAKE_CURRENT_SOURCE_DIR}/../../resources\" )
135 ADD_DEFINITIONS(-DDALI_ADDONS_PATH=\"${CMAKE_CURRENT_BINARY_DIR}\")
136
137 IF(ELDBUS_AVAILABLE)
138   ADD_COMPILE_OPTIONS(-Wno-error=attributes)
139   ADD_DEFINITIONS(-DELDBUS_ENABLED)
140 ENDIF()
141
142 FOREACH(directory ${${CAPI_LIB}_LIBRARY_DIRS})
143     SET(CMAKE_CXX_LINK_FLAGS "${CMAKE_CXX_LINK_FLAGS} -L${directory}")
144 ENDFOREACH(directory ${CAPI_LIB_LIBRARY_DIRS})
145
146 STRING(STRIP ${CMAKE_CXX_LINK_FLAGS} CMAKE_CXX_LINK_FLAGS)
147
148 INCLUDE_DIRECTORIES(
149   ../../../
150   ${${CAPI_LIB}_INCLUDE_DIRS}
151   ../dali-toolkit/dali-toolkit-test-utils
152   dali-toolkit-test-utils
153 )
154
155 ADD_CUSTOM_COMMAND(
156   COMMAND ../../scripts/tcheadgen.sh ${EXEC_NAME}.h ${TC_SOURCES}
157   WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
158   OUTPUT  ${EXEC_NAME}.h
159   COMMENT "Generating test tables"
160   )
161
162 # Add explicit dependency on auto-generated header.
163 ADD_EXECUTABLE(${EXEC_NAME} ${EXEC_NAME}.h ${EXEC_NAME}.cpp ${TC_SOURCES} ${TEST_HARNESS_SOURCES})
164 TARGET_LINK_LIBRARIES(${EXEC_NAME}
165     ${${CAPI_LIB}_LIBRARIES}
166     -lpthread --coverage -ldl -rdynamic
167 )
168
169 INSTALL(PROGRAMS ${EXEC_NAME}
170     DESTINATION ${BIN_DIR}/${EXEC_NAME}
171 )
172
173 # build addons
174 MESSAGE( STATUS "BINDIR: ${CMAKE_CURRENT_BINARY_DIR}")
175
176 FILE( GLOB FILES ${CMAKE_CURRENT_SOURCE_DIR}/addons/*.cmake )
177
178 FOREACH( INFILE IN ITEMS ${FILES} )
179
180     INCLUDE( ${INFILE} )
181     MESSAGE( STATUS "Building ${INFILE}" )
182
183     ADD_LIBRARY( ${ADDON_NAME} SHARED ${ADDON_SOURCES} )
184
185     TARGET_INCLUDE_DIRECTORIES( ${ADDON_NAME} PUBLIC
186             ../../../
187             ${${CAPI_LIB}_INCLUDE_DIRS}
188             ../dali-toolkit/dali-toolkit-test-utils
189             dali-toolkit-test-utils)
190
191     TARGET_LINK_LIBRARIES(${ADDON_NAME}
192             ${CMAKE_CXX_LINK_FLAGS}
193             ${${CAPI_LIB}_LIBRARIES}
194             -lpthread -ldl --coverage
195             )
196
197     INSTALL( TARGETS ${ADDON_NAME} DESTINATION ${BIN_DIR} )
198
199     SET( ADDON_LIST "lib${ADDON_NAME}.so
200 ${ADDON_LIST}")
201 ENDFOREACH()
202
203 # store AddOns list
204 FILE( WRITE ${CMAKE_CURRENT_BINARY_DIR}/addons.txt "${ADDON_LIST}" )