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