summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEduard Braun <eduard.braun2@gmx.de>2017-07-14 17:55:07 +0000
committerEduard Braun <eduard.braun2@gmx.de>2017-07-14 20:51:21 +0000
commit8beca6ec5ec135d9547dfbf104439cfd42029910 (patch)
treeb8d6783f81e272872cb7a0c88e002998304712d6
parentcmake: fix targets to actually depend on inkscape-version.cpp (diff)
downloadinkscape-8beca6ec5ec135d9547dfbf104439cfd42029910.tar.gz
inkscape-8beca6ec5ec135d9547dfbf104439cfd42029910.zip
cmake: Add build target 'tests' which builds all tests (but does not execute them)
- the recommended 'check' target depends on 'tests' (so "make check" will automatically build and run tests) - the pre-defined 'test' target does not automatically build tests, so make sure to run "make tests" before running "make test" (if you want to use it)
-rw-r--r--CMakeLists.txt4
-rw-r--r--testfiles/CMakeLists.txt5
2 files changed, 6 insertions, 3 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 43f7d8846..5cced40e5 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -245,11 +245,11 @@ add_custom_target(clean-all
#-----------------------------------------------------------------------------
if(GMOCK_PRESENT)
+ enable_testing()
set(CMAKE_CTEST_COMMAND ctest -V)
set(CMAKE_CTEST_ENV INKSCAPE_DATADIR=${CMAKE_CURRENT_SOURCE_DIR}/share)
- enable_testing()
- add_custom_target(check COMMAND ${CMAKE_COMMAND} -E env ${CMAKE_CTEST_ENV} ${CMAKE_CTEST_COMMAND})
add_subdirectory(testfiles EXCLUDE_FROM_ALL)
+ add_custom_target(check COMMAND ${CMAKE_CTEST_COMMAND} DEPENDS tests)
endif()
# Canonicalize the flags to speed up recompilation using ccache/etc.
diff --git a/testfiles/CMakeLists.txt b/testfiles/CMakeLists.txt
index b1d68b1fb..388a04b11 100644
--- a/testfiles/CMakeLists.txt
+++ b/testfiles/CMakeLists.txt
@@ -20,9 +20,12 @@ set(TEST_LIBS
gmock_main
inkscape_base)
+
+add_custom_target(tests)
foreach(source ${TEST_SOURCES})
add_executable(${source} src/${source}.cpp unittest.cpp doc-per-case-test.cpp)
target_link_libraries(${source} ${TEST_LIBS})
add_test(NAME ${source} COMMAND ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${source})
- add_dependencies(check ${source})
+ set_tests_properties(${source} PROPERTIES ENVIRONMENT ${CMAKE_CTEST_ENV})
+ add_dependencies(tests ${source})
endforeach() \ No newline at end of file