summaryrefslogtreecommitdiffstats
path: root/tests/auto/cmake/CMakeLists.txt
diff options
context:
space:
mode:
authorStephen Kelly <steveire@gmail.com>2016-02-23 01:13:47 +0100
committerStephen Kelly <steveire@gmail.com>2016-03-19 13:44:21 +0000
commit6ec89bec0a2f06365dc18bda6e95b6c253c19227 (patch)
treed226941365ebb7d7e653f1ea0ea2c8533cf5e992 /tests/auto/cmake/CMakeLists.txt
parenta1d4e4c97efaa14d58cc2c01ceceb396ebd6d18c (diff)
Fix QFINDTESTDATA when using cmake ninja generator
The Qt CI does not have ninja, but the autotest can be used for manual regression finding. cd qtbase/tests/auto/cmake qmake make check cd build cmake . -DHAVE_NINJA=ON ctest -R FINDTESTDATA Change-Id: Ic3f3748f6ab04e37fa5287c59486e5cd46dcabb4 Reviewed-by: Stephen Kelly <steveire@gmail.com>
Diffstat (limited to 'tests/auto/cmake/CMakeLists.txt')
-rw-r--r--tests/auto/cmake/CMakeLists.txt18
1 files changed, 18 insertions, 0 deletions
diff --git a/tests/auto/cmake/CMakeLists.txt b/tests/auto/cmake/CMakeLists.txt
index 5248f75a84..1abbef0d68 100644
--- a/tests/auto/cmake/CMakeLists.txt
+++ b/tests/auto/cmake/CMakeLists.txt
@@ -68,6 +68,24 @@ expect_fail(test_wrap_cpp_options)
expect_pass(test_platform_defs_include)
expect_pass(test_qtmainwin_library)
+if (HAVE_NINJA)
+ make_directory("${CMAKE_CURRENT_SOURCE_DIR}/test_QFINDTESTDATA/build")
+ add_test(test_QFINDTESTDATA ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMAKE_CURRENT_SOURCE_DIR}/test_QFINDTESTDATA"
+ # Build in a subdir of the source dir.
+ # This causes Ninja to use relative paths.
+ "${CMAKE_CURRENT_SOURCE_DIR}/test_QFINDTESTDATA/build"
+ --build-generator Ninja
+ --build-options "-DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH}"
+ )
+ add_test(NAME run_test_QFINDTESTDATA COMMAND sh -c "cd \"${CMAKE_SOURCE_DIR}/test_QFINDTESTDATA/build/tests\" && ./test_QFINDTESTDATA -v2")
+
+ set_property(TEST run_test_QFINDTESTDATA
+ PROPERTY DEPENDS test_QFINDTESTDATA
+ )
+endif()
+
if (NOT NO_DBUS)
expect_pass(test_dbus_module)
endif()