From c058b0d47a195ddaacf822f7bdd986caff9252b1 Mon Sep 17 00:00:00 2001 From: Wanru Xia Date: Tue, 21 Nov 2023 12:15:47 +0100 Subject: [PATCH 1/5] prevent setting CONNEXTDDS_ARCH when a more proper one exists --- .../cmake/rti_build_helper.cmake | 32 +++++++++++-------- 1 file changed, 18 insertions(+), 14 deletions(-) diff --git a/rti_connext_dds_cmake_module/cmake/rti_build_helper.cmake b/rti_connext_dds_cmake_module/cmake/rti_build_helper.cmake index 71e763b3..f2a91531 100644 --- a/rti_connext_dds_cmake_module/cmake/rti_build_helper.cmake +++ b/rti_connext_dds_cmake_module/cmake/rti_build_helper.cmake @@ -476,6 +476,7 @@ function(rti_guess_connextdds_arch) message(STATUS "Pick first from ${CONNEXTDDS_DIR}/lib/[${architectures_installed}]") + set(architecture_candidates "") foreach(architecture_name ${architectures_installed}) # Because the lib folder contains both target libraries and # Java JAR files, here we exclude the "java" in our algorithm @@ -516,11 +517,7 @@ function(rti_guess_connextdds_arch) endif() endif() if(NOT CONNEXTDDS_ARCH) - message(STATUS - "unsupported CMAKE_HOST_SYSTEM_NAME (${CMAKE_HOST_SYSTEM_NAME}) " - "or CMAKE_HOST_SYSTEM_PROCESSOR (${CMAKE_HOST_SYSTEM_PROCESSOR}). " - "Using architecture ${architecture_name} anyway.") - set(CONNEXTDDS_ARCH "${architecture_name}") + list(APPEND architecture_candidates ${architecture_name}) endif() else() message(STATUS "ignored foreign architecture: ${architecture_name}") @@ -529,18 +526,25 @@ function(rti_guess_connextdds_arch) if(CONNEXTDDS_ARCH) break() endif() + endforeach() - endif() - if(NOT CONNEXTDDS_ARCH) - message(WARNING - "CONNEXTDDS_ARCH not specified. Please set " - "-DCONNEXTDDS_ARCH= to specify your RTI Connext DDS " - " architecture") - else() - message(STATUS "Selected CONNEXTDDS_ARCH: ${CONNEXTDDS_ARCH}") - endif() + if(NOT CONNEXTDDS_ARCH) + list(GET architecture_candidates 0 CONNEXTDDS_ARCH) + if(CONNEXTDDS_ARCH) + message(STATUS + "unsupported CMAKE_HOST_SYSTEM_NAME (${CMAKE_HOST_SYSTEM_NAME}) " + "or CMAKE_HOST_SYSTEM_PROCESSOR (${CMAKE_HOST_SYSTEM_PROCESSOR}). " + "Using architecture ${CONNEXTDDS_ARCH} anyway.") + else() + message(WARNING + "CONNEXTDDS_ARCH not specified. Please set " + "-DCONNEXTDDS_ARCH= to specify your RTI Connext DDS " + " architecture") + endif() + endif() + endif() set(CONNEXTDDS_ARCH "${CONNEXTDDS_ARCH}" PARENT_SCOPE) endfunction() From fc6eb52c3c775c4fc2c078e9064e30a44c3b9025 Mon Sep 17 00:00:00 2001 From: Wanru <48364194+WanruXX@users.noreply.github.com> Date: Tue, 28 Nov 2023 09:42:13 +0100 Subject: [PATCH 2/5] Update rti_connext_dds_cmake_module/cmake/rti_build_helper.cmake Co-authored-by: Tomoya Fujita Signed-off-by: Wanru <48364194+WanruXX@users.noreply.github.com> --- rti_connext_dds_cmake_module/cmake/rti_build_helper.cmake | 2 ++ 1 file changed, 2 insertions(+) diff --git a/rti_connext_dds_cmake_module/cmake/rti_build_helper.cmake b/rti_connext_dds_cmake_module/cmake/rti_build_helper.cmake index f2a91531..aa425d8e 100644 --- a/rti_connext_dds_cmake_module/cmake/rti_build_helper.cmake +++ b/rti_connext_dds_cmake_module/cmake/rti_build_helper.cmake @@ -542,6 +542,8 @@ function(rti_guess_connextdds_arch) "-DCONNEXTDDS_ARCH= to specify your RTI Connext DDS " " architecture") endif() + else() + message(STATUS "Selected CONNEXTDDS_ARCH: ${CONNEXTDDS_ARCH}") endif() endif() From 609f3ef699757b2305ea129b236b318415b41689 Mon Sep 17 00:00:00 2001 From: Wanru <48364194+WanruXX@users.noreply.github.com> Date: Tue, 28 Nov 2023 09:42:42 +0100 Subject: [PATCH 3/5] Update rti_connext_dds_cmake_module/cmake/rti_build_helper.cmake Co-authored-by: Tomoya Fujita Signed-off-by: Wanru <48364194+WanruXX@users.noreply.github.com> --- rti_connext_dds_cmake_module/cmake/rti_build_helper.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rti_connext_dds_cmake_module/cmake/rti_build_helper.cmake b/rti_connext_dds_cmake_module/cmake/rti_build_helper.cmake index aa425d8e..c5997c30 100644 --- a/rti_connext_dds_cmake_module/cmake/rti_build_helper.cmake +++ b/rti_connext_dds_cmake_module/cmake/rti_build_helper.cmake @@ -474,7 +474,7 @@ function(rti_guess_connextdds_arch) message(STATUS "Guessed CONNEXTDDS_ARCH ('${guessed_architecture}') not available.") message(STATUS - "Pick first from ${CONNEXTDDS_DIR}/lib/[${architectures_installed}]") + "Try to search from ${CONNEXTDDS_DIR}/lib/[${architectures_installed}]") set(architecture_candidates "") foreach(architecture_name ${architectures_installed}) From 01d704f61322aab5a96323a9e394f6a8b8829994 Mon Sep 17 00:00:00 2001 From: Wanru Xia Date: Wed, 29 Nov 2023 14:59:42 +0100 Subject: [PATCH 4/5] update message when the guessed architecture exists --- rti_connext_dds_cmake_module/cmake/rti_build_helper.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rti_connext_dds_cmake_module/cmake/rti_build_helper.cmake b/rti_connext_dds_cmake_module/cmake/rti_build_helper.cmake index c5997c30..b1dcdaa9 100644 --- a/rti_connext_dds_cmake_module/cmake/rti_build_helper.cmake +++ b/rti_connext_dds_cmake_module/cmake/rti_build_helper.cmake @@ -462,7 +462,7 @@ function(rti_guess_connextdds_arch) if(EXISTS "${CONNEXTDDS_DIR}/lib/${guessed_architecture}") set(CONNEXTDDS_ARCH "${guessed_architecture}") message(STATUS - "Guessed ${CONNEXTDDS_DIR}/lib/${guessed_architecture} exists") + "Guessed ${CONNEXTDDS_DIR}/lib/${guessed_architecture} exists and is selected") else() # If CONNEXTDDS_ARCH is unspecified, the module tries uses the first # architecture installed by looking under $CONNEXTDDS_DIR/lib that matches From 455302d1d8b612e84abd5d2983f879cae6afcceb Mon Sep 17 00:00:00 2001 From: Wanru Xia Date: Thu, 30 Nov 2023 12:30:51 +0100 Subject: [PATCH 5/5] check if architecture_candidates is empty if no proper architecture is found --- .../cmake/rti_build_helper.cmake | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/rti_connext_dds_cmake_module/cmake/rti_build_helper.cmake b/rti_connext_dds_cmake_module/cmake/rti_build_helper.cmake index b1dcdaa9..4654e691 100644 --- a/rti_connext_dds_cmake_module/cmake/rti_build_helper.cmake +++ b/rti_connext_dds_cmake_module/cmake/rti_build_helper.cmake @@ -529,9 +529,11 @@ function(rti_guess_connextdds_arch) endforeach() - if(NOT CONNEXTDDS_ARCH) - list(GET architecture_candidates 0 CONNEXTDDS_ARCH) - if(CONNEXTDDS_ARCH) + if(CONNEXTDDS_ARCH) + message(STATUS "Selected CONNEXTDDS_ARCH: ${CONNEXTDDS_ARCH}") + else() + if(architecture_candidates) + list(GET architecture_candidates 0 CONNEXTDDS_ARCH) message(STATUS "unsupported CMAKE_HOST_SYSTEM_NAME (${CMAKE_HOST_SYSTEM_NAME}) " "or CMAKE_HOST_SYSTEM_PROCESSOR (${CMAKE_HOST_SYSTEM_PROCESSOR}). " @@ -541,9 +543,7 @@ function(rti_guess_connextdds_arch) "CONNEXTDDS_ARCH not specified. Please set " "-DCONNEXTDDS_ARCH= to specify your RTI Connext DDS " " architecture") - endif() - else() - message(STATUS "Selected CONNEXTDDS_ARCH: ${CONNEXTDDS_ARCH}") + endif() endif() endif()