34 lines
1.5 KiB
CMake
34 lines
1.5 KiB
CMake
# =============================================================================
|
|
# CMakeLists.txt -- the project's entry point
|
|
#
|
|
# Deliberately tiny, and the project's: nothing in it changes when the template
|
|
# does. Two directories hold everything else:
|
|
#
|
|
# project/ this project's settings -- its name, version, languages, C++
|
|
# standard, output layout (project/Configuration.cmake)
|
|
# breeze/ the template: the build system, toolchains, scripts and docs.
|
|
# Replace it wholesale to update the template.
|
|
#
|
|
# source/ (modules), vendor/ (vendored code) and out/ (everything generated)
|
|
# stay at the root, as does c-api/ if you use it.
|
|
# =============================================================================
|
|
|
|
cmake_minimum_required(VERSION 3.25)
|
|
|
|
# project() takes its arguments from the settings, so they are read first. The
|
|
# file holds settings only (no compiler needed), which is what lets the scripts
|
|
# read the same file without a configure.
|
|
include("${CMAKE_CURRENT_SOURCE_DIR}/project/Configuration.cmake")
|
|
|
|
project(
|
|
${PROJECT_TITLE}
|
|
VERSION ${PROJECT_VERSION_NUMBER}
|
|
DESCRIPTION "${PROJECT_SUMMARY}"
|
|
LANGUAGES ${PROJECT_LANGUAGES}
|
|
)
|
|
|
|
# Everything else -- target selection, output paths, module discovery, install
|
|
# rules -- is the template's. Add project-wide CMake of your own below this line
|
|
# (or above it, if it has to come before the template's), not in breeze/.
|
|
include("${CMAKE_CURRENT_SOURCE_DIR}/breeze/cmake/Breeze.cmake")
|