2017-01-25 18:59:44 -07:00
|
|
|
set(LIBS core gtest_main)
|
2015-01-03 05:17:57 -07:00
|
|
|
if(APPLE)
|
2017-03-01 05:43:43 -07:00
|
|
|
list(APPEND LIBS ${FOUNDATION_LIBRARY} ${CORESERV_LIBRARY})
|
2014-10-28 22:01:41 -06:00
|
|
|
endif()
|
2015-02-18 15:24:30 -07:00
|
|
|
if(ANDROID)
|
2017-03-01 05:43:43 -07:00
|
|
|
set(LIBS ${LIBS} android log)
|
2015-02-18 15:24:30 -07:00
|
|
|
endif()
|
2016-06-08 11:49:46 -06:00
|
|
|
file(MAKE_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/Tests)
|
2014-08-02 00:23:52 -06:00
|
|
|
macro(add_dolphin_test target srcs)
|
2017-03-01 05:43:43 -07:00
|
|
|
# Since this is a Core dependency, it can't be linked as a library and has
|
|
|
|
# to be linked as an object file. Otherwise CMake inserts the library after
|
|
|
|
# core, but before other core dependencies like videocommon which also use
|
|
|
|
# Host_ functions.
|
2017-03-25 06:46:21 -06:00
|
|
|
set(srcs2 ${srcs} ${CMAKE_SOURCE_DIR}/Source/UnitTests/TestUtils/StubHost.cpp ${ARGN})
|
2017-03-01 05:43:43 -07:00
|
|
|
add_executable(Test_${target} EXCLUDE_FROM_ALL ${srcs2})
|
|
|
|
set_target_properties(Test_${target} PROPERTIES
|
|
|
|
OUTPUT_NAME Tests/${target}
|
|
|
|
FOLDER Tests
|
|
|
|
)
|
|
|
|
target_link_libraries(Test_${target} ${LIBS})
|
|
|
|
add_dependencies(unittests Test_${target})
|
|
|
|
add_test(NAME ${target} COMMAND ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/Tests/${target})
|
2017-01-24 22:29:30 -07:00
|
|
|
endmacro()
|
2014-03-01 20:44:56 -07:00
|
|
|
|
2014-08-02 00:23:52 -06:00
|
|
|
add_subdirectory(TestUtils)
|
|
|
|
|
2014-03-09 07:27:04 -06:00
|
|
|
add_subdirectory(Common)
|
2014-03-01 20:44:56 -07:00
|
|
|
add_subdirectory(Core)
|
2014-08-02 00:42:36 -06:00
|
|
|
add_subdirectory(VideoCommon)
|