Make is a part of UNIX, which ensures it is extremely stable and is available on all UNIX systems. You don't get that from justfiles. You get syntactic sugar, but all the best parts of Make are thrown out of the window.
Make is a part of UNIX, which ensures it is extremely stable and is available on all UNIX systems. You don't get that from justfiles. You get syntactic sugar, but all the best parts of Make are thrown out of the window.
For my uses, make offers nothing of value over just. I don't need any of the clever build dependency resolution stuff when I'm working in Python, and cargo handles everything better when I'm using Rust. Which isn't to say that make isn't enormously powerful and useful for other people, only that its extra power causes more work than reward for the ways I personally want to use it. For me, just is everything about make that I actually use, minus all the complicating features that get in my way.
If you really feel that way then you will have to ask the OpenGroup people to fix the UNIX Shell and Utilities part, because they seem to have included a specification of make.
https://pubs.opengroup.org/onlinepubs/009695299/utilities/ma...
> For starters, which make?
The interface specified in the standard.
> GNU and BSD are common variants, and aren't 100% compatible.
Irrelevant. UNIX specifies an interface. It matters nothing if some implementation added their extensions.
> For my uses, make offers nothing of value (...)
That's perfectly fine. Just install just in your machines and work on your personal projects as you see fit.
If on the other hand you intend to distribute something you work on, using make ensures that those using specific target platforms don't need to install extra software because it already ships preinstalled.
What does make have that just is missing? I have only dipped my toe into just, but it seems like a more-or-less superset of functionality. Plus, all sorts of niceties: built-in functions (path manipulation!), ability to declare scripting languages, self-documenting through `--list`, etc. Quite a lot of natural feature evolution if make was not forever frozen in time by the POSIX standard.
Make is a part of UNIX, so it's ubiquitous, stable, and time-proof.