1
0
Fork
You've already forked shinobi-chld
0
forked from derivelinux/shinobi
makefile compiler forked by chld
  • Perl 77.2%
  • C 13.2%
  • Roff 7.3%
  • DIGITAL Command Language 1.5%
  • Shell 0.6%
  • Other 0.2%
2026年04月15日 10:26:52 +00:00
backends fix @ strpping, make dot reset when we see a / in basename (+6 test passes) 2026年04月13日 07:47:31 +00:00
cli fix -C -f and add -f to usage 2026年04月15日 10:26:52 +00:00
src handle words functions and inline rule 2026年04月13日 16:59:07 +00:00
tests make test printouts slighly prettier 2026年04月12日 12:41:53 +00:00
.clang-format initial 2026年04月07日 16:18:28 +00:00
.gitignore gitignore 2026年04月09日 01:11:37 +02:00
COPYING COPYING: tests are actually gplv2 2026年04月13日 09:49:32 +02:00
Makefile graphviz backend 2026年04月12日 16:17:59 +00:00
README revert ecea3e3f32 2026年04月13日 23:19:09 +02:00
TODO be less picky about rule lookup for targets, make sure default sufrules can be overridden, make instsufrule resolve the inferred source not the explicit 2026年04月12日 19:08:41 +00:00

shinobi
-------
shinobi is a compiler for makefiles. it parses, expands, and generates
build graphs. the graph can then be used to emit some backend. right
now there is two backends, ninja (for actually building stuff) and 
graphviz dot, for vizualisation.
the end goal is to be 99% compatible with both posix and gnu style
makefiles. right now this is not close to being true; only a subset 
of make grammar is supported, enough to parse very simple makefiles
(like this project's own makefile)
if you want to help out, there's lots to do. feel free to make a 
contibution.
it is implemented in C99. the perl in this repo is just the gnu make 
test suite.
this is public domain software