summaryrefslogtreecommitdiffstats
path: root/Source/cmMakefileTargetGenerator.cxx
diff options
context:
space:
mode:
authorJamie Snape <jamie.snape@kitware.com>2017-01-23 19:47:13 (GMT)
committerJamie Snape <jamie.snape@kitware.com>2017-01-23 19:47:13 (GMT)
commit0618ddf6b1da3a886f12b6ad2b19da49b2f87e28 (patch)
treeadb7c502f13bd571ff192e644de923f195b8fc81 /Source/cmMakefileTargetGenerator.cxx
parent7b4514fb33cf256ef165b2b28ba4affd1930a957 (diff)
downloadCMake-0618ddf6b1da3a886f12b6ad2b19da49b2f87e28.zip
CMake-0618ddf6b1da3a886f12b6ad2b19da49b2f87e28.tar.gz
CMake-0618ddf6b1da3a886f12b6ad2b19da49b2f87e28.tar.bz2
Add properties to run the cpplint style checker with the compiler
Create a `<LANG>_CPPLINT` target property (initialized by a `CMAKE_<LANG>_CPPLINT` variable) to specify a `cpplint` style checker command line to be run along with the compiler.
Diffstat (limited to 'Source/cmMakefileTargetGenerator.cxx')
-rw-r--r--Source/cmMakefileTargetGenerator.cxx10
1 files changed, 9 insertions, 1 deletions
diff --git a/Source/cmMakefileTargetGenerator.cxx b/Source/cmMakefileTargetGenerator.cxx
index 379ae16..866c132 100644
--- a/Source/cmMakefileTargetGenerator.cxx
+++ b/Source/cmMakefileTargetGenerator.cxx
@@ -631,7 +631,9 @@ void cmMakefileTargetGenerator::WriteObjectBuildFile(
const char* iwyu = this->GeneratorTarget->GetProperty(iwyu_prop);
std::string const tidy_prop = lang + "_CLANG_TIDY";
const char* tidy = this->GeneratorTarget->GetProperty(tidy_prop);
- if ((iwyu && *iwyu) || (tidy && *tidy)) {
+ std::string const cpplint_prop = lang + "_CPPLINT";
+ const char* cpplint = this->GeneratorTarget->GetProperty(cpplint_prop);
+ if ((iwyu && *iwyu) || (tidy && *tidy) || (cpplint && *cpplint)) {
std::string run_iwyu = "$(CMAKE_COMMAND) -E __run_iwyu";
if (iwyu && *iwyu) {
run_iwyu += " --iwyu=";
@@ -640,6 +642,12 @@ void cmMakefileTargetGenerator::WriteObjectBuildFile(
if (tidy && *tidy) {
run_iwyu += " --tidy=";
run_iwyu += this->LocalGenerator->EscapeForShell(tidy);
+ }
+ if (cpplint && *cpplint) {
+ run_iwyu += " --cpplint=";
+ run_iwyu += this->LocalGenerator->EscapeForShell(cpplint);
+ }
+ if ((tidy && *tidy) || (cpplint && *cpplint)) {
run_iwyu += " --source=";
run_iwyu += sourceFile;
}