Skip to content
This repository has been archived by the owner on Mar 21, 2022. It is now read-only.

richq/cmake-lint

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
bin
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

cmakelint parses CMake files and reports style issues.

cmakelint requires Python.

Installation

sudo pip install cmakelint

Usage

Syntax: cmakelint [--config=file] [--filter=-x,+y] <file> [file] ...
filter=-x,+y,...
  Specify a comma separated list of filters to apply

config=file
  Use the given file for configuration. By default the file
  $HOME/.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.

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

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

Changes

1.4

  • Add --quiet flag to suppress "Total Errors: 0"
  • Add --linelength=N flag to allow longer default lines (default remains 80)

1.3.4

  • fix false positives in indented blocks

1.3.3

  • fix crash on invalid # lint_cmake: pragma line
  • fix deprecation warning with Python 3.4
  • fix false positive warnings related to non-CMake quoted chunks (Issue #2)

1.3.2

  • return error code 0, 1, 32 on error

1.3.1

  • fix version number

1.3

  • individual CMake files can control filters with # lint_cmake: pragma comment
  • improved SetFilters function to allow spaces around the commas
  • use ${XDG_CONFIG_HOME} for the cmakelintrc file, with backwards compatible check for ~/.cmakelintrc

1.2.01

  • Published on pypi

1.2

  • Moved to github

About

Check for coding style issues in CMake files

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages