Has anyone attempted that approach? simply put a JSON wrapper around make?
Has anyone attempted that approach? simply put a JSON wrapper around make?
Regarding JSON, it is more verbose than Make. You need to use quote around strings, commands, everything. Compare:
foo.o: foo.c gcc -c foo.c
with
{ 'foo.o' => ['foo.c'; 'gcc -c foo.c'] }
I think if you want a simple serialization format to replace Make's syntax, s-expressions would be a better fit.
XML is definitely not better than JSON IMO. Are you hinting at either S-expression, or something like YAML?
(For any other "custom syntax" we're better off sticking to make syntax itself)
However, in my opinion, from your list only s-expressions make a reasonable syntax that a human would write an maintain.
And, if you want that, well :) https://www.gnu.org/software/make/manual/html_node/Guile-Int...
It was originally written for Chrome, but has been adopted as an output format for CMake and is used for many other projects as well.