You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
mj-xmr da9aa1f7f8
Copyright: Update to 2022
2 years ago
..
build-scripts Copyright: Update to 2022 2 years ago
README.md utils/health: separate Clang Tidy tests for C & C++ 3 years ago
clang-build-time-analyzer-run.sh Copyright: Update to 2022 2 years ago
clang-include-what-you-use-run.sh Copyright: Update to 2022 2 years ago
clang-tidy-run-cc.sh Copyright: Update to 2022 2 years ago
clang-tidy-run-common.sh Copyright: Update to 2022 2 years ago
clang-tidy-run-cpp.sh Copyright: Update to 2022 2 years ago
valgrind-tests.sh Copyright: Update to 2022 2 years ago

README.md

Intro

This directory contains tools, which can be used for checking the health of the project, like build/run time analyzers, lints, etc.

Usage

Unless it's stated differently, these scripts should be called from a given source directory, where you want the checks to be performed, for instance:

og@ghetto:~/dev/monero$ utils/health/clang-build-time-analyzer-run.sh

ClangBuildAnalyzer

utils/health/clang-build-time-analyzer-run.sh The CBA helps in finding culprints of slow compilation. On the first run, the script will complain about the missing ClangBuildAnalyzer binary and will point you to another script, which is able to clone and build the required binary.

clang-tidy

utils/health/clang-tidy-run-cc.sh utils/health/clang-tidy-run-cpp.sh Performs Lint checks on the source code and stores the result in the build directory. More information on the home page.

include-what-you-use

utils/health/clang-include-what-you-use-run.sh Analyses the header file hierarchy and delivers hints on how to reduce their complexity. More information on the home page.

Valgrind checks

utils/health/valgrind-tests.sh This script is able to run valgrind's callgrind, cachegrind and memcheck for a given set of executables. It expects ONE PARAMETER, which points to a file with paths to executables and their arguments, written line by line. For example:

ls -l -h
build/tests/unit_tests/unit_tests

The *.out results can be interpreted with the kcachegrind tool. The memcheck output is just a readable text file with a summary at the end.

Footer

Responsible: mj-xmr