Skip to content

Commit

Permalink
build: adding CTest stage to CI, prepping CPM use
Browse files Browse the repository at this point in the history
  • Loading branch information
malachib committed Dec 7, 2024
1 parent e2f3318 commit be5677d
Show file tree
Hide file tree
Showing 3 changed files with 31 additions and 1 deletion.
5 changes: 4 additions & 1 deletion .github/workflows/cmake.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,10 @@ jobs:
submodules: recursive

- name: Build
uses: threeal/cmake-action@v2.0.0
uses: threeal/cmake-action@v2.1.0
with:
source-dir: ${{env.unit_test_dir}}

- name: Test
uses: threeal/ctest-action@v1.1.0

24 changes: 24 additions & 0 deletions tools/cmake/CPM.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# SPDX-License-Identifier: MIT
#
# SPDX-FileCopyrightText: Copyright (c) 2019-2023 Lars Melchior and contributors

set(CPM_DOWNLOAD_VERSION 0.40.2)
set(CPM_HASH_SUM "c8cdc32c03816538ce22781ed72964dc864b2a34a310d3b7104812a5ca2d835d")

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()

# Expand relative path. This is important if the provided path contains a tilde (~)
get_filename_component(CPM_DOWNLOAD_LOCATION ${CPM_DOWNLOAD_LOCATION} ABSOLUTE)

file(DOWNLOAD
https://github.com/cpm-cmake/CPM.cmake/releases/download/v${CPM_DOWNLOAD_VERSION}/CPM.cmake
${CPM_DOWNLOAD_LOCATION} EXPECTED_HASH SHA256=${CPM_HASH_SUM}
)

include(${CPM_DOWNLOAD_LOCATION})
3 changes: 3 additions & 0 deletions tools/cmake/setvars.cmake
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
include_guard()

get_filename_component(TOOLS_DIR ${CMAKE_CURRENT_LIST_DIR} ABSOLUTE)
get_filename_component(ROOT_DIR ${TOOLS_DIR}/../.. ABSOLUTE)
set(ESTD_DIR ${ROOT_DIR}/src)

include(${TOOLS_DIR}/CPM.cmake)
include(${TOOLS_DIR}/fetchcontent.cmake)
include(${TOOLS_DIR}/options.cmake)

0 comments on commit be5677d

Please sign in to comment.