Check out my first novel, midnight's simulacra!

Makelint

From dankwiki
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

lint (static analysis) for GNU Make.

Checks

  • Tabs rather than spaces in target definitions
  • Unconditional definition of common variables (CC, CFLAGS, etc)
  • Unnecessary specification of tools (gcc, install, etc)
  • Use of hardcoded paths outside the tree
  • Failure to use .DELETE_ON_ERROR:
  • Incomplete use of PHONY
  • Use of undefined variables
  • Duplicate targets
  • Redefinition of variables (rather than aggregation)
  • Invalid use of automatic variables ($< with no deps, etc)