diff --git a/CHANGELOG.md b/CHANGELOG.md index 981ea2680c..e02cb57be0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -16,6 +16,7 @@ - static memory alternative for std::function[\#391](https://github.com/eclipse-iceoryx/iceoryx/issues/391) - Adding support for Helix QAC 2021.1[\#755](https://github.com/eclipse-iceoryx/iceoryx/issues/755) thanks to @toniglandy1 - Axivion analysis on CI[\#409](https://github.com/eclipse-iceoryx/iceoryx/issues/409) +- Cpptoml can be provided by an external source[\#951](https://github.com/eclipse-iceoryx/iceoryx/issues/) **Bugfixes:** diff --git a/iceoryx_meta/build_options.cmake b/iceoryx_meta/build_options.cmake index 3ace604bd7..6ce7dacedb 100644 --- a/iceoryx_meta/build_options.cmake +++ b/iceoryx_meta/build_options.cmake @@ -27,6 +27,7 @@ option(CCACHE "Use ccache when it's available" ON) option(CLANG_TIDY "Execute Clang-Tidy" OFF) option(COVERAGE "Build iceoryx with gcov flags" OFF) option(DDS_GATEWAY "Builds the iceoryx dds gateway - enables internode communication via dds" OFF) +option(DOWNLOAD_TOML_LIB "Download cpptoml via the CMake ExternalProject module" ON) option(EXAMPLES "Build all iceoryx examples" OFF) option(INTROSPECTION "Builds the introspection client which requires the ncurses library with an activated terminfo feature" OFF) option(ONE_TO_MANY_ONLY "Restricts communication to 1:n pattern" OFF) @@ -83,6 +84,7 @@ function(show_config_options) message(" CLANG_TIDY...........................: " ${CLANG_TIDY}) message(" COVERAGE.............................: " ${COVERAGE}) message(" DDS_GATEWAY..........................: " ${DDS_GATEWAY}) + message(" DOWNLOAD_TOML_LIB....................: " ${DOWNLOAD_TOML_LIB}) message(" EXAMPLES.............................: " ${EXAMPLES}) message(" INTROSPECTION........................: " ${INTROSPECTION}) message(" ONE_TO_MANY_ONLY ....................: " ${ONE_TO_MANY_ONLY}) diff --git a/iceoryx_posh/CMakeLists.txt b/iceoryx_posh/CMakeLists.txt index 0e10495f90..4e13b7e6cd 100644 --- a/iceoryx_posh/CMakeLists.txt +++ b/iceoryx_posh/CMakeLists.txt @@ -23,11 +23,14 @@ project(iceoryx_posh VERSION ${IOX_VERSION_STRING}) find_package(Threads REQUIRED) find_package(iceoryx_hoofs REQUIRED) +option(DOWNLOAD_TOML_LIB "Download cpptoml via the CMake ExternalProject module" ON) option(TOML_CONFIG "TOML support for RouDi with dynamic configuration" ON) option(ONE_TO_MANY_ONLY "Restricts communication to 1:n pattern" OFF) if(TOML_CONFIG) - add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/cmake/cpptoml/ ${CMAKE_BINARY_DIR}/dependencies/posh/cpptoml/prebuild) + if (DOWNLOAD_TOML_LIB) + add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/cmake/cpptoml/ ${CMAKE_BINARY_DIR}/dependencies/posh/cpptoml/prebuild) + endif() find_package(cpptoml REQUIRED) endif()