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