skullc-peripherals/CMakeLists.txt
2023-12-30 12:16:15 +02:00

53 lines
1.1 KiB
CMake

cmake_minimum_required(VERSION 3.8 FATAL_ERROR)
set(SKULLC_VERSION 0.1.0)
project(skullc
VERSION ${SKULLC_VERSION}
LANGUAGES
C
CXX
)
#list(APPEND CMAKE_MODULE_PATH ${CMAKE_BINARY_DIR})
list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake/)
option(SKULLC_WITH_TESTS "Enable unit testing." OFF)
option(SKULLC_WITH_HAL "Enable the compiling and deployment of the HAL dependent sections." OFF)
option(SKULLC_WITH_DOCS "Enable documentation building." OFF)
include(skullc-install)
add_subdirectory(Peripherals)
add_subdirectory(Utility)
add_subdirectory(Messaging)
if(SKULLC_WITH_TESTS)
enable_testing()
add_subdirectory(Tests)
endif()
if(SKULLC_WITH_DOCS)
add_subdirectory(Docs)
endif()
## Install
configure_file(skullc-config.cmake
"${CMAKE_BINARY_DIR}/skullc-config.cmake"
@ONLY
)
include(CMakePackageConfigHelpers)
write_basic_package_version_file(
"${CMAKE_BINARY_DIR}/skullc-config-version.cmake"
VERSION ${version}
COMPATIBILITY AnyNewerVersion
)
install(
FILES
"${CMAKE_BINARY_DIR}/skullc-config.cmake"
DESTINATION lib/cmake/skullc
)