2017-01-26 02:59:44 +01:00
|
|
|
set(LIBS core gtest_main)
|
2015-01-03 13:17:57 +01:00
|
|
|
if(APPLE)
|
2017-03-01 13:43:43 +01:00
|
|
|
list(APPEND LIBS ${FOUNDATION_LIBRARY} ${CORESERV_LIBRARY})
|
2014-10-29 05:01:41 +01:00
|
|
|
endif()
|
2015-02-18 23:24:30 +01:00
|
|
|
if(ANDROID)
|
2017-03-01 13:43:43 +01:00
|
|
|
set(LIBS ${LIBS} android log)
|
2015-02-18 23:24:30 +01:00
|
|
|
endif()
|
2016-06-08 19:49:46 +02:00
|
|
|
file(MAKE_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/Tests)
|
2017-05-22 08:56:35 +02:00
|
|
|
|
|
|
|
# Since this is a Core dependency, it can't be linked as a normal library.
|
|
|
|
# Otherwise CMake inserts the library after core, but before other core
|
|
|
|
# dependencies like videocommon which also use Host_ functions, which makes the
|
|
|
|
# GNU linker complain.
|
|
|
|
add_library(unittests_stubhost OBJECT TestUtils/StubHost.cpp)
|
|
|
|
|
2014-08-02 08:23:52 +02:00
|
|
|
macro(add_dolphin_test target srcs)
|
2017-05-22 08:56:35 +02:00
|
|
|
|
|
|
|
set(srcs2 ${srcs} $<TARGET_OBJECTS:unittests_stubhost> ${ARGN})
|
2017-05-21 01:00:55 +02:00
|
|
|
add_executable(${target} EXCLUDE_FROM_ALL ${srcs2})
|
|
|
|
set_target_properties(${target} PROPERTIES
|
2017-03-01 13:43:43 +01:00
|
|
|
OUTPUT_NAME Tests/${target}
|
|
|
|
FOLDER Tests
|
|
|
|
)
|
2017-05-21 01:00:55 +02:00
|
|
|
target_link_libraries(${target} ${LIBS})
|
|
|
|
add_dependencies(unittests ${target})
|
2017-05-21 01:01:59 +02:00
|
|
|
add_test(NAME ${target} COMMAND ${target})
|
2017-01-25 06:29:30 +01:00
|
|
|
endmacro()
|
2014-03-02 04:44:56 +01:00
|
|
|
|
2014-08-02 08:23:52 +02:00
|
|
|
add_subdirectory(TestUtils)
|
|
|
|
|
2014-03-09 14:27:04 +01:00
|
|
|
add_subdirectory(Common)
|
2014-03-02 04:44:56 +01:00
|
|
|
add_subdirectory(Core)
|
2014-08-02 08:42:36 +02:00
|
|
|
add_subdirectory(VideoCommon)
|