CMake expanduser tilde ~
To have the most reliable path operations in CMake, it’s typically best to resolve paths to the full expanded path. Note: there are a few CMake functions that desire relative paths, but those are clearly spelled out in the docs.
We have created expanduser.cmake:
Related: CMake file separator