Antimake is my attempt to fix "no good build system" problem - GNU Make library, but instead inventing custom conventions, it implements Automake syntax.
Example: bin_PROGRAMS = hello hello_SOURCES = hello.c include antimake.mk After writing such Makefile, you can run 'make' immediately, no need for ./configure or Makefile rebuild. Links ----- Doc: http://libusual.github.com/mk/antimake.html Demos: http://libusual.github.com/mk/ Source: https://github.com/libusual/libusual/blob/master/mk/antimake.mk GIT: git://github.com/libusual/libusual.git Basic ideas ----------- It examines $(.VARIABLES) for known name patterns and generates rules based on them. Core logic is implemented with GNU Make functions, it has minimal amount of shell in main rules (true,echo,printf,mkdir -p). Use of autoconf is optional - it has reasonable defaults for all variables. It can use libtool without autoconf - LIBTOOL simply defaults for 'libtool' in PATH with is likely already configured for current system. Non-Automake feature: It supports non-recursive subdirs by moving target variables away, then simply includes subdir makefile and rewrites (and moves) newly appeared target variables. Conclusions ----------- Seems good fit for small or perhaps even big but consistent projects. Internally, it's seems to be on the borderline what can be done with plain GNU Make and still have something maintainable. OTOH, the resulting Makefiles are really clean so perhaps it balances itself out. Currently it lives in libusual repository, if there is enough interest it can be put into independent repository. It is quite independent from other stuff in libusual. Although, by being there it has non-trivial code to test with. Comments, flames? -- marko