Makefile: Fix <LANG>_INCLUDE_WHAT_YOU_USE with CTEST_USE_LAUNCHERS

The 'ctest --launch' command must be placed before the IWYU launcher on
the compiler command line.  Extend the RunCMake.IncludeWhatYouUse test
to cover this case.  The Ninja generator already does it correctly.
This commit is contained in:
Brad King committed 2015-05-22 08:44:46 -04:00
1 parent ada5ffce7b
commit b3475ba57b
6 files changed
+25 -7

No files matched your search

+7 -7
View File
@@ -761,13 +761,6 @@ cmMakefileTargetGenerator
source.GetFullPath(), workingDirectory, compileCommand);
}
// Expand placeholders in the commands.
for(std::vector<std::string>::iterator i = compileCommands.begin();
i != compileCommands.end(); ++i)
{
this->LocalGenerator->ExpandRuleVariables(*i, vars);
}
// Maybe insert an include-what-you-use runner.
if (!compileCommands.empty() && (lang == "C" || lang == "CXX"))
{
@@ -782,6 +775,13 @@ cmMakefileTargetGenerator
}
}
// Expand placeholders in the commands.
for(std::vector<std::string>::iterator i = compileCommands.begin();
i != compileCommands.end(); ++i)
{
this->LocalGenerator->ExpandRuleVariables(*i, vars);
}
// Change the command working directory to the local build tree.
this->LocalGenerator->CreateCDCommand
(compileCommands,
@@ -0,0 +1,4 @@
Warning: include-what-you-use reported diagnostics:
should add these lines:
*
#include <\.\.\.>
@@ -0,0 +1,3 @@
set(CTEST_USE_LAUNCHERS 1)
include(CTestUseLaunchers)
include(C.cmake)
@@ -0,0 +1,4 @@
Warning: include-what-you-use reported diagnostics:
should add these lines:
*
#include <\.\.\.>
@@ -0,0 +1,3 @@
set(CTEST_USE_LAUNCHERS 1)
include(CTestUseLaunchers)
include(CXX.cmake)
@@ -16,3 +16,7 @@ endfunction()
run_iwyu(C)
run_iwyu(CXX)
if (NOT RunCMake_GENERATOR STREQUAL "Watcom WMake")
run_iwyu(C-launch)
run_iwyu(CXX-launch)
endif()