Merge branch 'devel/master' into devel/graphics
[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-graphics-sync-impl.cpp
85    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-sync-object.cpp
86    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-buffer.cpp
87    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-command-buffer.cpp
88    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-controller.cpp
89    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-framebuffer.cpp
90    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-texture.cpp
91    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-program.cpp
92    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-pipeline.cpp
93    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-reflection.cpp
94    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-sampler.cpp
95    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-shader.cpp
96    ../dali-toolkit/dali-toolkit-test-utils/test-platform-abstraction.cpp
97    ../dali-toolkit/dali-toolkit-test-utils/test-render-controller.cpp
98    ../dali-toolkit/dali-toolkit-test-utils/test-trace-call-stack.cpp
99    ../dali-toolkit/dali-toolkit-test-utils/test-native-image.cpp
100    dali-toolkit-test-utils/toolkit-text-utils.cpp
101    dali-toolkit-test-utils/dummy-visual.cpp
102    dali-toolkit-test-utils/test-addon-manager.cpp
103 )
104
105 IF(ELDBUS_AVAILABLE)
106   LIST(APPEND TEST_HARNESS_SOURCES
107    dali-toolkit-test-utils/accessibility-test-utils.cpp
108    dali-toolkit-test-utils/dbus-wrapper.cpp
109     )
110 ENDIF()
111
112
113 PKG_CHECK_MODULES(${CAPI_LIB} REQUIRED
114     dali2-core
115     dali2-adaptor
116     dali2-toolkit
117     eldbus
118     ecore-input
119     eina
120 )
121
122 MESSAGE("Libraries to link with:>${${CAPI_LIB}_LIBRARIES}")
123
124 ADD_COMPILE_OPTIONS( -O0 -ggdb --coverage -Wall -Werror -DDEBUG_ENABLED -fPIC )
125 ADD_COMPILE_OPTIONS( ${${CAPI_LIB}_CFLAGS_OTHER} )
126
127 ADD_DEFINITIONS(-DTEST_RESOURCE_DIR=\"${CMAKE_CURRENT_SOURCE_DIR}/../../resources\" )
128 ADD_DEFINITIONS(-DDALI_ADDONS_PATH=\"${CMAKE_CURRENT_BINARY_DIR}\")
129
130 IF(ELDBUS_AVAILABLE)
131   ADD_COMPILE_OPTIONS(-Wno-error=attributes)
132   ADD_DEFINITIONS(-DELDBUS_ENABLED)
133 ENDIF()
134
135 FOREACH(directory ${${CAPI_LIB}_LIBRARY_DIRS})
136     SET(CMAKE_CXX_LINK_FLAGS "${CMAKE_CXX_LINK_FLAGS} -L${directory}")
137 ENDFOREACH(directory ${CAPI_LIB_LIBRARY_DIRS})
138
139 STRING(STRIP ${CMAKE_CXX_LINK_FLAGS} CMAKE_CXX_LINK_FLAGS)
140
141 INCLUDE_DIRECTORIES(
142   ../../../
143   ${${CAPI_LIB}_INCLUDE_DIRS}
144   ../dali-toolkit/dali-toolkit-test-utils
145   dali-toolkit-test-utils
146 )
147
148 ADD_CUSTOM_COMMAND(
149   COMMAND ../../scripts/tcheadgen.sh ${EXEC_NAME}.h ${TC_SOURCES}
150   WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
151   OUTPUT  ${EXEC_NAME}.h
152   COMMENT "Generating test tables"
153   )
154
155 # Add explicit dependency on auto-generated header.
156 ADD_EXECUTABLE(${EXEC_NAME} ${EXEC_NAME}.h ${EXEC_NAME}.cpp ${TC_SOURCES} ${TEST_HARNESS_SOURCES})
157 TARGET_LINK_LIBRARIES(${EXEC_NAME}
158     ${${CAPI_LIB}_LIBRARIES}
159     -lpthread --coverage -ldl -rdynamic
160 )
161
162 INSTALL(PROGRAMS ${EXEC_NAME}
163     DESTINATION ${BIN_DIR}/${EXEC_NAME}
164 )
165
166 # build addons
167 MESSAGE( STATUS "BINDIR: ${CMAKE_CURRENT_BINARY_DIR}")
168
169 FILE( GLOB FILES ${CMAKE_CURRENT_SOURCE_DIR}/addons/*.cmake )
170
171 FOREACH( INFILE IN ITEMS ${FILES} )
172
173     INCLUDE( ${INFILE} )
174     MESSAGE( STATUS "Building ${INFILE}" )
175
176     ADD_LIBRARY( ${ADDON_NAME} SHARED ${ADDON_SOURCES} )
177
178     TARGET_INCLUDE_DIRECTORIES( ${ADDON_NAME} PUBLIC
179             ../../../
180             ${${CAPI_LIB}_INCLUDE_DIRS}
181             ../dali-toolkit/dali-toolkit-test-utils
182             dali-toolkit-test-utils)
183
184     TARGET_LINK_LIBRARIES(${ADDON_NAME}
185             ${CMAKE_CXX_LINK_FLAGS}
186             ${${CAPI_LIB}_LIBRARIES}
187             -lpthread -ldl --coverage
188             )
189
190     INSTALL( TARGETS ${ADDON_NAME} DESTINATION ${BIN_DIR} )
191
192     SET( ADDON_LIST "lib${ADDON_NAME}.so
193 ${ADDON_LIST}")
194 ENDFOREACH()
195
196 # store AddOns list
197 FILE( WRITE ${CMAKE_CURRENT_BINARY_DIR}/addons.txt "${ADDON_LIST}" )