There. I finally cracked. While trying to get CMake to play ball with Tracy I had to devise the next
bespoke solution for adding a dependency. Now, we are just using CPM https://github.com/cpm-cmake/CPM.cmake
which makes things significantly less painful, if not painless, it's still CMake after all.
This means:
No more submodules. Everything is pulled in via CPM.
No more toggling between system packages and submodules. System is preferred, if compatible.
No more ten ways of adding a dependency. It's two now. (I'd prefer one, but what can we do?)
There. I finally cracked. While trying to get CMake to play ball with Tracy I had to devise the next bespoke solution for adding a dependency. Now, we are just using CPM https://github.com/cpm-cmake/CPM.cmake which makes things significantly less painful, if not painless, it's still CMake after all.
This means: