feat: added woodpecker config

Reviewed-on: #1
Co-authored-by: Tobias Schmidl <tobias@schmidl.dev>
Co-committed-by: Tobias Schmidl <tobias@schmidl.dev>
This commit is contained in:
Tobias Schmidl 2023-10-06 07:10:26 +02:00
parent 70dcc822fd
commit 2c822ce773
15 changed files with 129 additions and 129 deletions

View file

@ -8,18 +8,11 @@ include(cmake/version-from-git.cmake)
# ---- Project ----
project(
Glimpses
VERSION ${VERSION_STRING}
LANGUAGES CXX
)
project(Glimpses VERSION ${VERSION_STRING} LANGUAGES CXX)
# ---- Include guards ----
if(PROJECT_SOURCE_DIR STREQUAL PROJECT_BINARY_DIR)
message(
FATAL_ERROR
"In-source builds not allowed. Please make a new directory (called a build directory) and run CMake from there."
)
message(FATAL_ERROR "In-source builds not allowed. Please make a new directory (called a build directory) and run CMake from there.")
endif()
# ---- Add dependencies via CPM ----
@ -30,22 +23,11 @@ include(cmake/CPM.cmake)
# PackageProject.cmake will be used to make our target installable
CPMAddPackage("gh:TheLartians/PackageProject.cmake@1.8.0")
# CPMAddPackage( NAME fmt GIT_TAG 9.1.0 GITHUB_REPOSITORY fmtlib/fmt OPTIONS "FMT_INSTALL YES" # create an installable
# target )
# CPMAddPackage( NAME fmt GIT_TAG 9.1.0 GITHUB_REPOSITORY fmtlib/fmt OPTIONS "FMT_INSTALL YES" # create an installable target )
# ---- Add source files ----
file(
GLOB_RECURSE
headers
CONFIGURE_DEPENDS
"${CMAKE_CURRENT_SOURCE_DIR}/include/*.h"
)
file(
GLOB_RECURSE
sources
CONFIGURE_DEPENDS
"${CMAKE_CURRENT_SOURCE_DIR}/source/*.cpp"
)
file(GLOB_RECURSE headers CONFIGURE_DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/include/*.h")
file(GLOB_RECURSE sources CONFIGURE_DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/source/*.cpp")
# ---- Create library ----
@ -60,8 +42,7 @@ target_link_libraries(${PROJECT_NAME} PRIVATE # fmt::fmt
)
target_include_directories(
${PROJECT_NAME} PUBLIC $<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/include>
$<INSTALL_INTERFACE:include/${PROJECT_NAME}-${PROJECT_VERSION}>
${PROJECT_NAME} PUBLIC $<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/include> $<INSTALL_INTERFACE:include/${PROJECT_NAME}-${PROJECT_VERSION}>
)
# the location where the project's version header will be placed should match the project's regular header paths