Skip to main content

A fork of cmake-lint for PaddlePaddle

Project description

CMakeLint

PyPI - Python Version pypi PyPI - Downloads LICENSE ruff Gitmoji

cmakelint parses CMake files and reports style issues.

cmakelint requires Python.

Installation

To install cmakelint from PyPI, run:

pip install cmake-lint-paddle

Usage

cmakelint --help
usage: cmakelint [-h] [-v] [--filter -X,+Y] [--config CONFIG] [--spaces SPACES] [--linelength LINELENGTH] [--quiet] [files ...]

cmakelint

positional arguments:
  files                 files to lint

options:
  -h, --help            show this help message and exit
  -v, --version         show program's version number and exit
  --filter -X,+Y        Specify a comma separated list of filters to apply
  --config CONFIG       Use the given file for configuration. By default the file $PWD/.cmakelintrc, ~/.config/cmakelintrc,
                        $XDG_CONFIG_DIR/cmakelintrc or ~/.cmakelintrc is used if it exists. Use the value "None" to use no configuration file
                        (./None for a file called literally None) Only the option "filter=" is currently supported in this file.
  --spaces SPACES       Indentation should be a multiple of N spaces
  --linelength LINELENGTH
                        This is the allowed line length for the project. The default value is 80 characters.
  --quiet               makes output quiet unless errors occurs Mainly used by automation tools when parsing huge amount of files. In those
                        cases actual error might get lost in the pile of other stats prints. This argument is also handy for build system
                        integration, so it's possible to add automated lint target to a project and invoke it via build system and have no
                        pollution of terminals or IDE.

Run the --filter= option with no filter to see available options. Currently these are:

convention/filename
linelength
package/consistency
readability/logic
readability/mixedcase
readability/wonkycase
syntax
whitespace/eol
whitespace/extra
whitespace/indent
whitespace/mismatch
whitespace/newline
whitespace/tabs

An example .cmakelintrc file would be as follows:

filter=-whitespace/indent

With this file in your home directory, running these commands would have the same effect:

cmakelint.py CMakeLists.txt
cmakelint.py --filter=-whitespace/indent CMakeLists.txt

Filters can optionally be directly enabled/disabled from within a CMake file, overriding the configuration from file or CLI argument:

# lint_cmake: <+ or -><filter name>
# e.g.:
# lint_cmake: -readability/wonkycase
# add multiple filters as list:
# lint_cmake: <+/-><filter1>, <+/-><filter2>

cmakelint can also be run with pre-commit. Add the following configuration block to your .pre-commit-config.yaml:

- repo: https://github.com/PFCCLab/cmake-lint-paddle
  rev: v1.5.1
  hooks:
     - id: cmakelint

Output status codes

The program should exit with the following status codes:

  • 0 if everything went fine
  • 1 if an error message was issued
  • 32 on usage error

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cmake-lint-paddle-1.5.1.tar.gz (13.4 kB view details)

Uploaded Source

Built Distribution

cmake_lint_paddle-1.5.1-py3-none-any.whl (18.1 kB view details)

Uploaded Python 3

File details

Details for the file cmake-lint-paddle-1.5.1.tar.gz.

File metadata

  • Download URL: cmake-lint-paddle-1.5.1.tar.gz
  • Upload date:
  • Size: 13.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for cmake-lint-paddle-1.5.1.tar.gz
Algorithm Hash digest
SHA256 64d8554bc047948b331aa20f1caf5d7bc520a01707f11fca4f17e09e1c145b24
MD5 29479c572d121946c394b810bd9c0f94
BLAKE2b-256 918df7cfa0b5613af8d3e4bb98c4ccbc42be702852007cce9e63f9ef66d4bfe3

See more details on using hashes here.

File details

Details for the file cmake_lint_paddle-1.5.1-py3-none-any.whl.

File metadata

File hashes

Hashes for cmake_lint_paddle-1.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 966c858a381ad6172981fef55eeab6003f4712f628351b1bcb3127ec62004bba
MD5 8b3e48349644ca7d901508f374e303a0
BLAKE2b-256 8e1d64d2dbdc72e760d007a07487ec9bdc280716084fdfda4e2bfe107a116c8c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page