I'd like to build software on Windows using vcpkg, which keeps a per-node
repository of software up to date.
- job A requires foo:x86 and bar:x86 in the repo
- job B requires bar:x86 and bar:amd64 in the repo
- job C requires foo:amd64 and bar:amd64 in the repo
- no two vcpkg invocations at the same time
- no vcpkg invocation that modifies an item that is in use by a currently
- one vcpkg repository per node
Ideally, I'd like to have a declarative syntax that lets me list
dependencies, and these would be turned into reader/writer locks -- writer
locks for the vcpkg invocation, and reader locks for the actual build
process (multiple processes can share dependencies, but they should not be
modified during the build).
Is there something existing that already covers this use case?