[dali_2.0.28] Merge branch 'devel/master'
[platform/core/uifw/dali-toolkit.git] / automated-tests / src / dali-toolkit-third-party / CMakeLists.txt
1 SET(PKG_NAME "dali-toolkit-third-party")
2
3 SET(EXEC_NAME "tct-${PKG_NAME}-core")
4 SET(RPM_NAME "core-${PKG_NAME}-tests")
5
6 SET(CAPI_LIB "dali-toolkit-third-party")
7
8 # List of test case sources (Only these get parsed for test cases)
9 SET(TC_SOURCES
10  utc-Dali-Flexbox-Layout.cpp
11 )
12
13 # List of test harness files (Won't get parsed for test cases)
14 SET(TEST_HARNESS_SOURCES
15    ../dali-toolkit/dali-toolkit-test-utils/toolkit-application.cpp
16    ../dali-toolkit/dali-toolkit-test-utils/toolkit-clipboard.cpp
17    ../dali-toolkit/dali-toolkit-test-utils/toolkit-clipboard-event-notifier.cpp
18    ../dali-toolkit/dali-toolkit-test-utils/toolkit-event-thread-callback.cpp
19    ../dali-toolkit/dali-toolkit-test-utils/toolkit-environment-variable.cpp
20    ../dali-toolkit/dali-toolkit-test-utils/toolkit-input-method-context.cpp
21    ../dali-toolkit/dali-toolkit-test-utils/toolkit-orientation.cpp
22    ../dali-toolkit/dali-toolkit-test-utils/toolkit-physical-keyboard.cpp
23    ../dali-toolkit/dali-toolkit-test-utils/toolkit-style-monitor.cpp
24    ../dali-toolkit/dali-toolkit-test-utils/toolkit-timer.cpp
25    ../dali-toolkit/dali-toolkit-test-utils/toolkit-tts-player.cpp
26    ../dali-toolkit/dali-toolkit-test-utils/dali-test-suite-utils.cpp
27    ../dali-toolkit/dali-toolkit-test-utils/mesh-builder.cpp
28    ../dali-toolkit/dali-toolkit-test-utils/test-actor-utils.cpp
29    ../dali-toolkit/dali-toolkit-test-utils/test-animation-data.cpp
30    ../dali-toolkit/dali-toolkit-test-utils/test-application.cpp
31    ../dali-toolkit/dali-toolkit-test-utils/test-button.cpp
32    ../dali-toolkit/dali-toolkit-test-utils/test-harness.cpp
33    ../dali-toolkit/dali-toolkit-test-utils/test-gl-abstraction.cpp
34    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-sync-impl.cpp
35    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-sync-object.cpp
36    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-buffer.cpp
37    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-command-buffer.cpp
38    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-controller.cpp
39    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-framebuffer.cpp
40    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-texture.cpp
41    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-sampler.cpp
42    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-pipeline.cpp
43    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-program.cpp
44    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-shader.cpp
45    ../dali-toolkit/dali-toolkit-test-utils/test-graphics-reflection.cpp
46    ../dali-toolkit/dali-toolkit-test-utils/test-platform-abstraction.cpp
47    ../dali-toolkit/dali-toolkit-test-utils/test-render-controller.cpp
48    ../dali-toolkit/dali-toolkit-test-utils/test-trace-call-stack.cpp
49    ../dali-toolkit/dali-toolkit-test-utils/test-native-image.cpp
50 )
51
52
53 PKG_CHECK_MODULES(${CAPI_LIB} REQUIRED
54     dali2-core
55     dali2-adaptor
56     dali2-toolkit
57 )
58
59 # Locate GTest
60 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
61 FIND_PACKAGE(GTest REQUIRED)
62
63 #ADD_COMPILE_OPTIONS( -O0 -ggdb --coverage -Wall -Werror )
64 # ADD_COMPILE_OPTIONS( ${${CAPI_LIB}_CFLAGS_OTHER} )
65 # This works for a homogenous C++ project, but not for mixed C++/C project
66 # On CMake >= 3.3, could use
67 # ADD_COMPILE_OPTIONS( "$<$<COMPILE_LANGUAGE:CXX>:${${CAPI_LIB}_CFLAGS_OTHER}>" )
68 # However, we need to support CMake 2.8, so instead, fall back to setting the CXX_FLAGS directly:
69 SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O0 -ggdb --coverage -Wall -Werror" )
70 SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${${CAPI_LIB}_CFLAGS_OTHER}" )
71
72 FOREACH(directory ${${CAPI_LIB}_LIBRARY_DIRS})
73     SET(CMAKE_CXX_LINK_FLAGS "${CMAKE_CXX_LINK_FLAGS} -L${directory}")
74 ENDFOREACH(directory ${CAPI_LIB_LIBRARY_DIRS})
75
76 INCLUDE_DIRECTORIES(
77     ../../../
78     ../../../dali-toolkit/third-party
79     ${${CAPI_LIB}_INCLUDE_DIRS}
80     ../dali-toolkit/dali-toolkit-test-utils
81     ${GTEST_INCLUDE_DIRS}
82 )
83
84 ADD_CUSTOM_COMMAND(
85   COMMAND ../../scripts/tcheadgen.sh ${EXEC_NAME}.h ${TC_SOURCES}
86   WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
87   OUTPUT  ${EXEC_NAME}.h
88   COMMENT "Generating test tables"
89   )
90
91 ADD_EXECUTABLE(${EXEC_NAME} ${EXEC_NAME}.h ${EXEC_NAME}.cpp ${TC_SOURCES} ${TEST_HARNESS_SOURCES})
92 TARGET_LINK_LIBRARIES(${EXEC_NAME}
93     ${${CAPI_LIB}_LIBRARIES}
94     -lpthread --coverage
95     ${GTEST_LIBRARIES}
96 )
97
98 INSTALL(PROGRAMS ${EXEC_NAME}
99     DESTINATION ${BIN_DIR}/${EXEC_NAME}
100 )