Comments (1)
I had a few emails from people who didn't want to use the options/flags I had used originally, and wanted to have more control via options within their own projects. Thus in 23.09, the tools.cmake items were reworked:
Rework of tools.cmake items. The options of CLANG_TIDY, IWYU and CPPCHECK have been removed. Instead, it is up to the including project on when/how to enable these tools. The ability to 'reset' the tools, to disable them for certain scopes has been accommodated via the use of reset_* macros.
Quite simply, you should be able to add options and put the macro calls of include_what_you_use
and cppcheck
in an if statement.
To remake the exact behaviour from before for tools.cmake, you can change something like this:
clang_tidy(...)
include_what_you_use(...)
cppcheck(...)
to
option(CLANG_TIDY "Turns on clang-tidy processing if it is found." OFF)
if(CLANG_TIDY)
clang_tidy(...)
endif()
option(IWYU "Turns on include-what-you-use processing if it is found." OFF)
if(IWYU)
include_what_you_use(...)
endif()
option(CPPCHECK "Turns on cppcheck processing if it is found." OFF)
if(CPPCHECK)
cppcheck(...)
endif()
from cmake-scripts.
Related Issues (20)
- Support for Interfaces HOT 1
- Broken macros in tools.cmake HOT 1
- Incompatibility with FindMPI HOT 1
- `ccov-clean` not compatible on Windows HOT 4
- `ccov-all*` not compatible on Windows HOT 2
- Excluding dependencies in code coverage reports HOT 11
- Build fails with `lcov` HOT 2
- Question: Why doesn't the `link-time-optimization.cmake` script work with GCC? HOT 1
- Question: code coverage on all targets HOT 1
- [bug] the codecov showed the wrong cov range HOT 2
- Error when run llvm-cov in hithub ubuntu-latest HOT 1
- Suggestion: Merge with cmake-compiler-flags
- Cross-compilation support HOT 4
- Support for custom code coverage analysis tools
- ccov-all-export on Windows HOT 1
- Support for C in tools.cmake HOT 3
- Main page readme reports functionalities not available in latest release HOT 1
- Question: Long Link Time when using coverage HOT 3
- Sanitizer compilation test fails with Xcode generator.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cmake-scripts.