Files
cariflex/tools/EVerest-main/lib/everest/timer/CMakeLists.txt
Eric F d398a6ced2 Add extracted tools: CitrineOS, OpenOCPP, ShapeShifter
- CitrineOS core extracted (CSMS OCPP 2.0.1)
- OpenOCPP extracted (firmware OCPP 1.6J/2.0.1)
- ShapeShifter library installed (pip install -e)
- ShapeShifter specification extracted
- EVerest extracted

TODO updated with progress
2026-06-08 00:38:27 -04:00

78 lines
1.8 KiB
CMake

cmake_minimum_required(VERSION 3.16)
project(everest-timer
VERSION 0.1.4
DESCRIPTION "EVerest timer library"
LANGUAGES CXX C
)
find_package(everest-cmake 0.1 REQUIRED
PATHS ../everest-cmake
)
# options
option(${PROJECT_NAME}_BUILD_TESTING "Build unit tests, used if included as dependency" OFF)
option(BUILD_TESTING "Build unit tests, used if standalone project" OFF)
option(BUILD_EXAMPLES "Build examples" OFF)
option(TIMER_INSTALL "Install the library (shared data might be installed anyway)" ${EVC_MAIN_PROJECT})
option(CMAKE_RUN_CLANG_TIDY "Run clang-tidy" OFF)
if((${CMAKE_PROJECT_NAME} STREQUAL ${PROJECT_NAME} OR ${PROJECT_NAME}_BUILD_TESTING) AND BUILD_TESTING)
set(LIBTIMER_BUILD_TESTING ON)
include(CTest)
add_subdirectory(tests)
endif()
# this policy allows us to continue using the removed FindBoost module for now
if(POLICY CMP0167)
cmake_policy(SET CMP0167 OLD)
endif()
# dependencies
find_package(Boost)
if(Boost_VERSION_STRING VERSION_LESS "1.69.0")
find_package(Boost
COMPONENTS
system
REQUIRED
)
endif()
if (NOT DISABLE_EDM)
evc_setup_edm()
# In EDM mode, we can't install exports (because the dependencies usually do not install their exports)
set(TIMER_INSTALL OFF)
else()
find_package(date REQUIRED)
endif()
# logging library
add_subdirectory(lib)
if(BUILD_EXAMPLES)
add_subdirectory(examples)
endif()
# packaging
if (TIMER_INSTALL)
install(
TARGETS timer
EXPORT timer-targets
)
install(
DIRECTORY include/
TYPE INCLUDE
)
evc_setup_package(
NAME everest-timer
EXPORT timer-targets
NAMESPACE everest
ADDITIONAL_CONTENT
"find_dependency(Boost COMPONENTS system)"
)
endif()