diff --git a/.woodpecker/workflow.yaml b/.woodpecker/workflow.yaml index dcabe9e..e6c9424 100644 --- a/.woodpecker/workflow.yaml +++ b/.woodpecker/workflow.yaml @@ -6,12 +6,12 @@ steps: - name: build image: gcc:latest commands: # we probably shouldn't install cmake every time - - apt update && apt install -y cmake + - apt update && apt install -y cmake catch2 - mkdir -p build/ && cd build - cmake .. --toolchain ../toolchain/sanitize.cmake - make - name: test - image: ubuntu + image: gcc:latest commands: # Automated tests, this should not fail - ./build/test diff --git a/CMakeLists.txt b/CMakeLists.txt index 2471e3b..fda821c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,20 +1,13 @@ cmake_minimum_required(VERSION 3.16) project(lispy_stuff) +# we'll use catch2 as testing library. +# Catch2 version 3 or above needs to be installed on your system. +find_package(Catch2 3 REQUIRED) # we'll use a recent c++ standard. set(CMAKE_CXX_STANDARD 23) set(CMAKE_CXX_STANDARD_REQUIRED ON) -# we'll use catch2 as testing library. -include(FetchContent) -FetchContent_Declare( - Catch2 - GIT_REPOSITORY https://github.com/catchorg/Catch2.git - GIT_TAG v3.8.1 -) -FetchContent_MakeAvailable(Catch2) -list(APPEND CMAKE_MODULE_PATH ${catch2_SOURCE_DIR}/extras) -include(Catch) set(HEADER_FILES src/include/lex.hpp) set(SOURCE_FILES src/lex.cpp)