diff --git a/cmake/cyclonedds/CMakeLists.txt b/cmake/cyclonedds/CMakeLists.txt index c44e47fc56..e8e03f3f9e 100644 --- a/cmake/cyclonedds/CMakeLists.txt +++ b/cmake/cyclonedds/CMakeLists.txt @@ -1,5 +1,5 @@ # Copyright (c) 2020 by Robert Bosch GmbH. All rights reserved. -# Copyright (c) 2021 by Apex.AI Inc. All rights reserved. +# Copyright (c) 2021 - 2022 by Apex.AI Inc. All rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -28,15 +28,15 @@ if(NOT N EQUAL 0) endif() endif() -if(DEFINED CMAKE_TOOLCHAIN_FILE) - set(TOOLCHAIN_FILE "-DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}") -endif() - set(EXTRA_CMAKE_ARGS) if(DEFINED CMAKE_CXX_FLAGS) list(APPEND EXTRA_CMAKE_ARGS -DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS}) endif() +if(DEFINED CMAKE_TOOLCHAIN_FILE) + list(APPEND EXTRA_CMAKE_ARGS "-DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}") +endif() + # ===== Helpers function(fetch_and_install name) set(DOWNLOAD_CONFIG_DIR ${CMAKE_BINARY_DIR}/dependencies/${name}/download) @@ -46,7 +46,7 @@ function(fetch_and_install name) # Fetch source configure_file(${name}.cmake.in ${DOWNLOAD_CONFIG_DIR}/CMakeLists.txt) - execute_process(COMMAND ${CMAKE_COMMAND} -G "${CMAKE_GENERATOR}" "${TOOLCHAIN_FILE}" "${DOWNLOAD_CONFIG_DIR}" + execute_process(COMMAND ${CMAKE_COMMAND} -G "${CMAKE_GENERATOR}" "${DOWNLOAD_CONFIG_DIR}" "${EXTRA_CMAKE_ARGS}" RESULT_VARIABLE result WORKING_DIRECTORY ${DOWNLOAD_CONFIG_DIR} ) if(result) @@ -70,7 +70,13 @@ function(fetch_and_install name) endforeach() string( REPLACE ";" " " ADDITIONAL_CMAKE_FLAGS "${ADDITIONAL_CMAKE_FLAGS}") - execute_process(COMMAND ${CMAKE_COMMAND} -G "${CMAKE_GENERATOR}" "-DCMAKE_INSTALL_PREFIX=${INSTALL_DIR}" "${ADDITIONAL_CMAKE_FLAGS}" "${TOOLCHAIN_FILE}" "${EXTRA_CMAKE_ARGS}" "${SOURCE_DIR}" + set(CYCLONE_BUILD_ARGS "-DCMAKE_INSTALL_PREFIX=${INSTALL_DIR}" "${EXTRA_CMAKE_ARGS}" "${SOURCE_DIR}") + + if(NOT ADDITIONAL_CMAKE_FLAGS STREQUAL "") + list(APPEND CYCLONE_BUILD_ARGS ${ADDITIONAL_CMAKE_FLAGS}) + endif() + + execute_process(COMMAND ${CMAKE_COMMAND} -G "${CMAKE_GENERATOR}" ${CYCLONE_BUILD_ARGS} RESULT_VARIABLE result WORKING_DIRECTORY ${BUILD_DIR} ) if(result)