tomlplusplus/CMakeLists.txt
Mark Gillard ca76e5d571 project-wide refactoring
- moved implementation-only headers to `/impl`
- replaced `[[nodiscard]]` with `TOML_NODISCARD`
- added `.clang-format` + applied to all files

also:
- added support for Unicode 14.0
- fixed minor documentation issues
- version bump (pre-emptive for next release)
2021-10-23 18:20:49 +03:00

45 lines
1.0 KiB
CMake

cmake_minimum_required(VERSION 3.14)
project(
tomlplusplus
VERSION 2.6.0
DESCRIPTION "Header-only TOML config file parser and serializer for C++17 (and later!)"
HOMEPAGE_URL "https://marzer.github.io/tomlplusplus/"
LANGUAGES CXX
)
include(cmake/project-is-top-level.cmake)
include(cmake/variables.cmake)
# ---- Declare library ----
add_library(tomlplusplus_tomlplusplus INTERFACE)
add_library(tomlplusplus::tomlplusplus ALIAS tomlplusplus_tomlplusplus)
set_property(
TARGET tomlplusplus_tomlplusplus PROPERTY
EXPORT_NAME tomlplusplus
)
target_include_directories(
tomlplusplus_tomlplusplus
${tomlplusplus_warning_guard} # unquoted for list expansion
INTERFACE
"$<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/include>"
)
target_compile_features(tomlplusplus_tomlplusplus INTERFACE cxx_std_17)
# ---- Install rules ----
include(cmake/install-rules.cmake)
# ---- Examples ----
if(PROJECT_IS_TOP_LEVEL)
option(BUILD_EXAMPLES "Build examples tree." OFF)
if(BUILD_EXAMPLES)
add_subdirectory(examples)
endif()
endif()