I guess you can commit the generated makefile into your repo so that those who want to build your project from sources don't need your custom build tool installed, only make...
I guess you can commit the generated makefile into your repo so that those who want to build your project from sources don't need your custom build tool installed, only make...
# $FreeBSD$
PACKAGE=runtime PROG= setfacl SRCS= file.c mask.c merge.c remove.c setfacl.c util.c
.include <bsd.prog.mk>
So, yeah, at least for code in C you can have something maintainable in make(1), it’s just you need to structure your project in a sensible way.
2. It doesn’t, it’s programmers job to make an effort to append a file name to a single line in a single file.
3. It’s portable in the same way autotools are portable, which means you can make it work with relative ease.
You can certainly do everything in one system. In practice this seems to lead to a build process that is much slower than it needs to be, see for instance Scons.