Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add build support for clang-tidy and clang build metrics #3150

Merged
merged 3 commits into from Apr 29, 2020

Conversation

brtal
Copy link
Contributor

@brtal brtal commented Apr 28, 2020

clang-tidy support enables the llvm extras linter to catch a wide array of problems and improve the build. It is off by default. Currently all rules are enabled, but this will fail the build. We will need to turn these rules on one by one.

Usage:
install llvm from homebrew, and make sure clang-tidy is in your path
./configure --with-clang-tidy

Clang build metrics enables a new features in Clang 9.0 which generates chrome://tracing (and similar tools) compatible json files for every compiled object that details where time was spent for that particular target. There are additional tools (such as ClangBuildAnalyzer) that will combine these files to give an overall high-level view of where time is spent in the build. I will share the detailed output from this internally.

Usage:
./configure --with-clang-metrics

configure Outdated Show resolved Hide resolved
configure Outdated Show resolved Hide resolved
CMakeLists.txt Show resolved Hide resolved
@brtal brtal merged commit ba4fa56 into apple:master Apr 29, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants