The build system is meant to require Makefile-like files, but providing sane way to call filesystem functions (no moar $(shell) hell), to get current architecture/OS, to access command line switches and allow users to write `if-else` blocks in it. I want something like this:
Code: Select all
if (linux and -rose) // we are cross-compiling on Linux for ReaverOS
// command line: build -rose .
{
CXX = /usr/reaver/cross/bin/clang++ // or: load_preset(/usr/reaver/cross) or something like that
}
if (linux and -exclude includes builder)
// command line: build -exclude=builder ., but also build -exclude=builder,kernel,utilities
{
// ...
}
So: how would your "ideal" Makefile-ish file format look like?
---------
Edit: I know Brendan will say something like "In my perfect world, you don't need build scripts"; yet I'm asking about opinions of us, non-perfect-worlders