Most build systems have their own syntax to write build scripts with the twist that functions are only run if their output could differ from the last call.
I turned this upside-down thing on its feet again, providing a Python library to run functions only if needed.
So your build script is just a Python script, but still does not run functions unnecessarily.
https://codeberg.org/harald/pythonbuilder
#pythonbuilder #buildtool #cmake #gradle #ant #buildautomation
