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

58 lines
2.1 KiB
CMake

# download everest-core (source of util and libcbv2g)
include(ExternalProject)
ExternalProject_Add(
everest-core-src
DOWNLOAD_DIR "everest-core/src"
GIT_REPOSITORY "https://github.com/EVerest/everest-core.git"
GIT_TAG "61e97863fd2fc9f429f9cd2e4b689139e7d46981"
TIMEOUT 30
LOG_DOWNLOAD ON
CONFIGURE_COMMAND ""
BUILD_COMMAND ""
INSTALL_COMMAND ""
)
# util is header-only
ExternalProject_Get_Property(everest-core-src SOURCE_DIR)
set(UTIL_INCLUDE_DIR "${SOURCE_DIR}/lib/everest/util/include")
# workaround for https://gitlab.kitware.com/cmake/cmake/-/issues/15052
file(MAKE_DIRECTORY ${UTIL_INCLUDE_DIR})
add_library(everest_util INTERFACE IMPORTED GLOBAL)
add_library(everest::util ALIAS everest_util)
set_property(TARGET everest_util PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${UTIL_INCLUDE_DIR})
add_dependencies(everest_util everest-core-src)
# build everest-core/lib/everest/cbv2g
ExternalProject_Add(
cbv2g-src
DOWNLOAD_COMMAND ""
SOURCE_DIR "everest-core-src-prefix/src/everest-core-src/lib/everest/cbv2g"
PREFIX "everest-core"
INSTALL_COMMAND ""
LOG_CONFIGURE ON
LOG_BUILD ON
DEPENDS everest-core-src
)
ExternalProject_Get_Property(cbv2g-src SOURCE_DIR)
ExternalProject_Get_Property(cbv2g-src BINARY_DIR)
set(CBV2G_INCLUDE_DIR "${SOURCE_DIR}/include")
set(CBV2G_LIB_DIR "${BINARY_DIR}/lib/cbv2g")
# workaround for https://gitlab.kitware.com/cmake/cmake/-/issues/15052
# create CBV2G_INCLUDE_DIR since it will not exist in configure step
file(MAKE_DIRECTORY ${CBV2G_INCLUDE_DIR})
add_library(cbv2g_tp STATIC IMPORTED)
add_library(cbv2g::tp ALIAS cbv2g_tp)
set_property(TARGET cbv2g_tp PROPERTY IMPORTED_LOCATION ${CBV2G_LIB_DIR}/libcbv2g_tp.a)
set_property(TARGET cbv2g_tp PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${CBV2G_INCLUDE_DIR})
add_dependencies(cbv2g_tp cbv2g-src)
add_library(cbv2g_iso20 STATIC IMPORTED)
add_library(cbv2g::iso20 ALIAS cbv2g_iso20)
set_property(TARGET cbv2g_iso20 PROPERTY IMPORTED_LOCATION ${CBV2G_LIB_DIR}/libcbv2g_iso20.a)
set_property(TARGET cbv2g_iso20 PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${CBV2G_INCLUDE_DIR})
add_dependencies(cbv2g_iso20 cbv2g-src)