mcandre / rez

C/C++ task runner
Other
3 stars 1 forks source link

Execute #3

Closed mcandre closed 3 years ago

mcandre commented 3 years ago

The first pass will defer task the tree evaluation algorithm and task registration entirely to the user rez.cpp source file.

In terms of interface, the rez task runner system merely expects the user's rez.cpp main function to handle:

rez may intercept and discard a smell set of canned flags before handing the rest to the user's rez.cpp program. These are essentially documented in rez's usage output.

This way has several advantages:

This enables a dramatically simple rez.cpp setup. rez does not require any complex build tool configuration required for the user's rez.cpp. The convention is for rez.cpp to build as a standalone, with few dependencies outside of stdlibc++ / POSIX.

Any third party dependencies can be managed by an external vendoring process. Unknown if conan, for example supports distinguishing between project runtime dependencies versus project buildtime dependencies.

Of course, if the user deeply desires to manage their rez.cpp file itself as part of an integrated cmake/make/autotools/etc. build system, that is up to them.