llvm-capstone/libc
Paula Toth 741d3c2016 [libc] Add cmake target for linting libc.
Summary:
This patch implements running linting on llvm-libc using build rule targets.

1) adds a new target per entrypoint for linting with the naming convention `<qualified_target_name>.__lint__` e.g `libc.src.string.strlen.__lint__`.
2) makes the build target for each entrypoint depend on the linting targets so that they run along with compilation of each entrypoint.
3) adds a lint all target named `lint-libc`.  `check-libc` now depends on this new target.
4) linting creates a lot of additional targets from clang and clang-tidy that need to be built so an opt out flag can be passed to cmake: `LLVM_LIBC_ENABLE_LINTING`.

Reviewers: sivachandra, abrachet

Reviewed By: sivachandra

Subscribers: abrachet, mgorny, tschuett, libc-commits

Tags: #libc-project

Differential Revision: https://reviews.llvm.org/D77861
2020-04-16 17:41:03 -07:00
..
AOR_v20.02 [libc] Move implementations of cosf, sinf, sincosf to src/math directory. 2020-04-16 08:46:10 -07:00
cmake/modules [libc] Add cmake target for linting libc. 2020-04-16 17:41:03 -07:00
config [libc] Move implementations of cosf, sinf, sincosf to src/math directory. 2020-04-16 08:46:10 -07:00
docs [libc] NFC: Fix trivial typo in comments, documents, and messages 2020-04-06 16:19:34 +09:00
fuzzing [libc] Add fully-qualified target names. 2020-04-10 18:01:52 -07:00
include [libc] Add very basic stdio FILE and fwrite 2020-04-14 04:02:27 -04:00
lib [libc] Move implementations of cosf, sinf, sincosf to src/math directory. 2020-04-16 08:46:10 -07:00
loader [libc] Add fully-qualified target names. 2020-04-10 18:01:52 -07:00
spec [libc] Add very basic stdio FILE and fwrite 2020-04-14 04:02:27 -04:00
src [libc] Move implementations of cosf, sinf, sincosf to src/math directory. 2020-04-16 08:46:10 -07:00
test [libc] Move implementations of cosf, sinf, sincosf to src/math directory. 2020-04-16 08:46:10 -07:00
utils [libc] Move implementations of cosf, sinf, sincosf to src/math directory. 2020-04-16 08:46:10 -07:00
CMakeLists.txt [libc] Add cmake target for linting libc. 2020-04-16 17:41:03 -07:00
LICENSE.txt
README.txt

LLVM libc
=========

This directory and its subdirectories contain source code for llvm-libc,
a retargetable implementation of the C standard library.

LLVM is open source software. You may freely distribute it under the terms of
the license agreement found in LICENSE.txt.