Expand CPM_SOURCE_CACHE path provided as a configure argument #186
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Long story:
If one relies on
get_cpm.cmake
instead of a manual copy of CPM.cmake, and configures with-DCPM_SOURCE_CACHE=~/some/path
(with a tilde which they expect to be expanded to $HOME), this CMake issue hits and thus theEXISTS
check always fails, andfile(DOWNLOAD
always fails (one would expect that it would create the directory\~
(literal tilde) but it doesn't... anyway)Further when CPM.cmake gets included
CPM_SOURCE_CACHE
is cached asCACHE PATH
which does the expansion and subsequent code is not affected by the tilde. That's why nothing special needs to be done for the actual CPM.cmake code. It works even if used by a manual copy and not through get_cpm.