Check out my first novel, midnight's simulacra!
Makelint
From dankwiki
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)