From 9967fea35c3df9e34002e3ad230112641443a9f4 Mon Sep 17 00:00:00 2001 From: Lars Melchior Date: Thu, 20 Aug 2020 09:22:17 +0200 Subject: [PATCH] add on-demand download script to release --- .github/workflows/publish.yaml | 9 ++++++--- cmake/get_cpm.cmake | 19 +++++++++++++++++++ 2 files changed, 25 insertions(+), 3 deletions(-) create mode 100644 cmake/get_cpm.cmake diff --git a/.github/workflows/publish.yaml b/.github/workflows/publish.yaml index e6da736..3d02ad6 100644 --- a/.github/workflows/publish.yaml +++ b/.github/workflows/publish.yaml @@ -13,13 +13,16 @@ jobs: - uses: actions/checkout@v1 - name: Set CPM version by tag - run: sed "s/0.27.2-development-version/${GITHUB_REF/refs\/tags\/v}/g" cmake/CPM.cmake > CPM.cmake + run: | + mkdir dist + sed "s/0.27.2-development-version/${GITHUB_REF/refs\/tags\/v}/g" cmake/CPM.cmake > dist/CPM.cmake + sed "s/0.27.2-development-version/${GITHUB_REF/refs\/tags\/v}/g" cmake/get_cpm.cmake > dist/get_cpm.cmake - name: Upload CPM.cmake to release uses: svenstaro/upload-release-action@v1-release with: repo_token: ${{ secrets.GITHUB_TOKEN }} - file: CPM.cmake - asset_name: CPM.cmake tag: ${{ github.ref }} + file: dist/*.cmake + file_glob: true overwrite: true diff --git a/cmake/get_cpm.cmake b/cmake/get_cpm.cmake new file mode 100644 index 0000000..d97d954 --- /dev/null +++ b/cmake/get_cpm.cmake @@ -0,0 +1,19 @@ +set(CPM_DOWNLOAD_VERSION 0.27.2-development-version) + +if(CPM_SOURCE_CACHE) + 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/TheLartians/CPM.cmake/releases/download/v${CPM_DOWNLOAD_VERSION}/CPM.cmake + ${CPM_DOWNLOAD_LOCATION} + ) +endif() + +include(${CPM_DOWNLOAD_LOCATION})