MyModernCppStarter/cmake/CPM.cmake
Claus Klein 2db60f2ccb
Feature/extend build dependency (#80)
* add build time dependency to static lib

the header only fmt lib is used to show this

* use add_test() and add a warning why

doctest_discover_tests() is only availabe if doctest is not imported with
find_packag()

* cmake-format file

* fix missed comment

* back to version 1.0

respect most review comments

* fix typo

* update used CMP package versions

* respect most review comments

no default cxx language settings
install fmt
link against fmt::fmt
export dependency too if not needed
...

* use generic expression as recommended

* Update CMakeLists.txt

Co-authored-by: Lars Melchior <TheLartians@users.noreply.github.com>

* changes acording review comments

update to current PackageProject version 1.5.0 too

* Update CMakeLists.txt

Co-authored-by: Lars Melchior <TheLartians@users.noreply.github.com>

* respect review comment

remove NOLINT comment

* back to begining

needs to use doctest cmake modules ...
it is not my idea!

Co-authored-by: Lars Melchior <TheLartians@users.noreply.github.com>
2021-02-19 09:46:11 +01:00

21 lines
845 B
CMake

set(CPM_DOWNLOAD_VERSION 0.28.4)
if(CPM_SOURCE_CACHE)
# Expand relative path. This is important if the provided path contains a tilde (~)
get_filename_component(CPM_SOURCE_CACHE ${CPM_SOURCE_CACHE} ABSOLUTE)
set(CPM_DOWNLOAD_LOCATION "${CPM_SOURCE_CACHE}/cpm/CPM_${CPM_DOWNLOAD_VERSION}.cmake")
elseif(DEFINED ENV{CPM_SOURCE_CACHE})
set(CPM_DOWNLOAD_LOCATION "$ENV{CPM_SOURCE_CACHE}/cpm/CPM_${CPM_DOWNLOAD_VERSION}.cmake")
else()
set(CPM_DOWNLOAD_LOCATION "${CMAKE_BINARY_DIR}/cmake/CPM_${CPM_DOWNLOAD_VERSION}.cmake")
endif()
if(NOT (EXISTS ${CPM_DOWNLOAD_LOCATION}))
message(STATUS "Downloading CPM.cmake to ${CPM_DOWNLOAD_LOCATION}")
file(DOWNLOAD
https://github.com/cpm-cmake/CPM.cmake/releases/download/v${CPM_DOWNLOAD_VERSION}/CPM.cmake
${CPM_DOWNLOAD_LOCATION}
)
endif()
include(${CPM_DOWNLOAD_LOCATION})