Files
cariflex/tools/EVerest-main/lib/everest/iso15118/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

94 lines
2.8 KiB
CMake
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
cmake_minimum_required(VERSION 3.14)
project(iso15118
VERSION 0.9.1
DESCRIPTION "iso15118 library suite"
LANGUAGES CXX C
)
find_package(everest-cmake 0.5
PATHS ../everest-cmake
NO_DEFAULT_PATH
)
find_package(everest-cmake 0.5)
find_package(OpenSSL 3 REQUIRED)
if (NOT everest-cmake_FOUND)
message(STATUS "Retrieving everest-cmake using FetchContent")
include(FetchContent)
FetchContent_Declare(
everest-cmake
GIT_REPOSITORY https://github.com/EVerest/everest-cmake.git
GIT_TAG v0.5.3
)
FetchContent_MakeAvailable(everest-cmake)
set(everest-cmake_DIR "${everest-cmake_SOURCE_DIR}")
include("${everest-cmake_SOURCE_DIR}/everest-cmake-config.cmake")
endif()
# 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(OPT_AUTODOWNLOAD_ISO20_SCHEMAS "\
Automatically download ISO15118-20 schemas. Note: by setting this option to \
true and hence downloading the schema files, YOU accept the ISO Customer \
Licence Agreement (“Licence Agreement”), clauses 1. ISOs Copyright, \
7. Termination, 8. Limitations, and 9. Governing Law." OFF)
option(ISO15118_INSTALL "Enable install target" ${EVC_MAIN_PROJECT})
option(DISABLE_ISO15118_LOCAL_DEPENDENCIES "Disable local dependency lookup for libiso15118" OFF)
option(ISO15118_USE_EXPORTED_BUILD "Use (experimental) exported build of libiso15118" OFF)
option(${PROJECT_NAME}_USE_PYTHON_VENV "Use python venv for pip install targets" ON)
if(${CMAKE_PROJECT_NAME} STREQUAL ${PROJECT_NAME})
if(ISO15118_USE_EXPORTED_BUILD)
include(cmake/exported-build.cmake)
else()
include(cmake/local-build.cmake)
endif()
endif()
# list of compile options
set(ISO15118_COMPILE_OPTIONS_WARNING "-Wall;-Wextra;-Wno-unused-function;-Werror" CACHE STRING "A list of compile options used")
message(STATUS "Building libiso15118 with the following compile options: ${ISO15118_COMPILE_OPTIONS_WARNING}")
if((${CMAKE_PROJECT_NAME} STREQUAL ${PROJECT_NAME} OR ${PROJECT_NAME}_BUILD_TESTING) AND BUILD_TESTING)
set(ISO15118_BUILD_TESTING ON)
endif()
# dependencies
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(ISO15118_INSTALL OFF)
endif()
add_subdirectory(input)
add_subdirectory(src)
if (ISO15118_BUILD_TESTING)
include(CTest)
add_subdirectory(test)
endif()
if (ISO15118_INSTALL)
install(
TARGETS
iso15118
EXPORT iso15118-targets
)
install(
DIRECTORY include/
TYPE INCLUDE
PATTERN "detail" EXCLUDE
)
evc_setup_package(
NAME iso15118
EXPORT iso15118-targets
NAMESPACE iso15118
)
endif()