checkmake(1)

NAME
checkmake – experimental linter for Makefiles

SYNOPSIS
checkmake [options] makefile ...

DESCRIPTION
checkmake is an experimental linter for Makefiles. It allows for a set of configurable rules being run against a Makefile or a set of \*.mk files.

OPTIONS

-h, –help
    Show a friendly help message.

–version
    Show version.

–debug
    Enable debug mode

–config=<configPath>
    Configuration file to read

–format=<format>
    Output format as a Golang text/template template

–list-rules
    List registered rules

CONFIGURATION
By default checkmake looks for a checkmake.ini file in the same folder it’s executed in. This can be overridden by passing the --config= argument pointing it to a different configuration file. With the configuration file the [default] section is for checkmake itself while sections named after the rule names are passed to the rules as their configuration. All keys/values are hereby treated as strings and passed to the rule in a string/string map.

The following configuration options for checkmake itself are supported within the default section:

default.format
    This enables the custom output formatter with the given template string as a format

EXIT STATUS
checkmake exits with the following status:

         0:   checkmake ran successfully and found 0 violations
        >1:   checkmake found the number of violations reflected by the exit status

In addition to checkmake having found 1 violation, exit status 1 is also used to denote an error in execution happening.

BUGS
Please file bugs against the issue tracker: https://github.com/mrtazz/checkmake/issues

SEE ALSO
make(1)

AUTHORS
Daniel Schauenberg <d@unwiredcouch.com>.