diff options
-rw-r--r-- | CMakePresets.json | 41 | ||||
-rw-r--r-- | CONTRIBUTING.md | 5 | ||||
-rw-r--r-- | Makefile | 3 |
3 files changed, 25 insertions, 24 deletions
diff --git a/CMakePresets.json b/CMakePresets.json index 76e38111ea..62abb2697f 100644 --- a/CMakePresets.json +++ b/CMakePresets.json @@ -1,5 +1,5 @@ { - "version": 3, + "version": 6, "configurePresets": [ { "name": "base", @@ -14,9 +14,7 @@ "cacheVariables": { "CMAKE_BUILD_TYPE": "RelWithDebInfo" }, - "inherits": [ - "base" - ] + "inherits": ["base"] }, { "name": "debug", @@ -25,9 +23,7 @@ "cacheVariables": { "CMAKE_BUILD_TYPE": "Debug" }, - "inherits": [ - "base" - ] + "inherits": ["base"] }, { "name": "release", @@ -36,9 +32,7 @@ "cacheVariables": { "CMAKE_BUILD_TYPE": "Release" }, - "inherits": [ - "base" - ] + "inherits": ["base"] }, { "name": "windows-default", @@ -54,9 +48,7 @@ }, "vendor": { "microsoft.com/VisualStudioSettings/CMake/1.0": { - "hostOS": [ - "Windows" - ] + "hostOS": ["Windows"] } }, "condition": { @@ -64,9 +56,7 @@ "lhs": "${hostSystemName}", "rhs": "Windows" }, - "inherits": [ - "base" - ] + "inherits": ["base"] }, { "name": "iwyu", @@ -75,9 +65,7 @@ "cacheVariables": { "ENABLE_IWYU": "ON" }, - "inherits": [ - "base" - ] + "inherits": ["base"] } ], "buildPresets": [ @@ -106,5 +94,20 @@ "name": "iwyu", "configurePreset": "iwyu" } + ], + "workflowPresets": [ + { + "name": "iwyu", + "steps": [ + { + "type": "configure", + "name": "iwyu" + }, + { + "type": "build", + "name": "iwyu" + } + ] + } ] } diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index d0af90d679..ce0f2ace05 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -246,10 +246,9 @@ You can lint a single file (but this will _not_ exclude legacy errors): For managing includes in C files, use [include-what-you-use]. - [Install include-what-you-use][include-what-you-use-install] -- To see which includes needs fixing just use the cmake preset `iwyu`: +- To see which includes needs fixing use the cmake preset `iwyu`: ``` - cmake --preset iwyu - cmake --build --preset iwyu + cmake --workflow --preset iwyu ``` - There's also a make target that automatically fixes the suggestions from IWYU: @@ -136,8 +136,7 @@ lintlua lintsh lintc check-single-includes generated-sources lintcommit lint for test: functionaltest unittest iwyu: build/.ran-cmake - cmake --preset iwyu - cmake --build --preset iwyu > build/iwyu.log + cmake --workflow --fresh --preset iwyu > build/iwyu.log iwyu-fix-includes --only_re="src/nvim" --ignore_re="src/nvim/(auto|map.h|eval/encode.c)" --safe_headers < build/iwyu.log cmake -B build -U ENABLE_IWYU |