A (mostly) POSIX-compatible make implemented in Rust. Not explicitly aiming for full support for every GNU make feature, but adding whichever features are strictly necessary to be compatible with existing GNUish makefiles.
LANG
/LC_ALL
/LC_CTYPE
/LC_MESSAGES
) not implementedTODO
for a list)MAKE
is defined as makers
.POSIX
special target doesn't opt out of extensions (but you can install with --no-default-features
to get only POSIX behavior)i haven't written unit tests for most of makers
, but there are integration tests that try to build various make-based projects with makers.
specific projects tested:
list of features that are needed for version 1.0:
%
-matching inference rules.PHONY
special target are now always assumed out-of-date until rebuilt, regardless of filesystem status--no-default-features
for pure-POSIX compatibilityif
, origin
, shell
(doesn't set .SHELLSTATUS
), eval
define
blocksfilter
, filter-out
, sort
, notdir
, basename
, addprefix
, wildcard
, foreach
, call
Released under the Indie Code Catalog Standard Deal, version 3.0.0 or later.
Commercial licenses are available for purchase through Indie Code Catalog.
Canonically pronounced /ˈmeɪ.kɹɪz/ (as though saying "make risotto" but giving up halfway through).