This is in preparation for native builds of DXVK, but it also allows
users to choose to use an older version if that is more compatible with
their hardware.
- Move the synchronization primitive changes to their own patch, so it
can be applied conditionally on Darwin. Also, document why this change
is needed; and
- Refactor how `src` is handled to support allowing Darwin and Linux to
diverge in case the Darwin patches do not apply to the latest version.
This should address some post-merger concerns that were raised about
Darwin’s blocking updates for Linux.