diff options
author | Brad King <brad.king@kitware.com> | 2017-10-27 12:31:34 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2017-10-27 13:26:50 (GMT) |
commit | 992962c76dd472fa9d122231c89d8d11aedd3288 (patch) | |
tree | de761b94f411e05bba39e27f188f4a9087e13da2 /Tests/RunCMake/MultiLint/RunCMakeTest.cmake | |
parent | a5197eeac7a28046729c40067ee02cd7e3e8e01b (diff) | |
download | CMake-992962c76dd472fa9d122231c89d8d11aedd3288.zip CMake-992962c76dd472fa9d122231c89d8d11aedd3288.tar.gz CMake-992962c76dd472fa9d122231c89d8d11aedd3288.tar.bz2 |
cmcmd: Restore support for running multiple lint tools
Refactoring in commit v3.10.0-rc1~115^2 (Clean up iwyu code to not be
one big if statement, 2017-08-28) incorrectly changed the logic to run
only one lint tool at a time. Restore support for running all tools
specified on the command-line.
Diffstat (limited to 'Tests/RunCMake/MultiLint/RunCMakeTest.cmake')
-rw-r--r-- | Tests/RunCMake/MultiLint/RunCMakeTest.cmake | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/Tests/RunCMake/MultiLint/RunCMakeTest.cmake b/Tests/RunCMake/MultiLint/RunCMakeTest.cmake new file mode 100644 index 0000000..afd98fd --- /dev/null +++ b/Tests/RunCMake/MultiLint/RunCMakeTest.cmake @@ -0,0 +1,27 @@ +include(RunCMake) + +set(RunCMake_TEST_OPTIONS + "-DPSEUDO_CPPCHECK=${PSEUDO_CPPCHECK}" + "-DPSEUDO_CPPLINT=${PSEUDO_CPPLINT}" + "-DPSEUDO_IWYU=${PSEUDO_IWYU}" + "-DPSEUDO_TIDY=${PSEUDO_TIDY}" + ) + +function(run_multilint lang) + # Use a single build tree for tests without cleaning. + set(RunCMake_TEST_BINARY_DIR "${RunCMake_BINARY_DIR}/${lang}-build") + set(RunCMake_TEST_NO_CLEAN 1) + file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}") + file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}") + run_cmake(${lang}) + set(RunCMake_TEST_OUTPUT_MERGE 1) + run_cmake_command(${lang}-Build ${CMAKE_COMMAND} --build .) +endfunction() + +run_multilint(C) +run_multilint(CXX) + +if(NOT RunCMake_GENERATOR STREQUAL "Watcom WMake") + run_multilint(C-launch) + run_multilint(CXX-launch) +endif() |