From 769485930c034b6d0051aafe04713bece62cb54b Mon Sep 17 00:00:00 2001 From: Ken Zangelin Date: Wed, 11 Sep 2024 09:28:09 +0200 Subject: [PATCH 01/13] Updated the build script for DDS --- docker/build-ubi/04.install-fastdds.sh | 53 ++++++++++++++++++++++---- 1 file changed, 45 insertions(+), 8 deletions(-) diff --git a/docker/build-ubi/04.install-fastdds.sh b/docker/build-ubi/04.install-fastdds.sh index 4f733dff14..fe38b61ad5 100755 --- a/docker/build-ubi/04.install-fastdds.sh +++ b/docker/build-ubi/04.install-fastdds.sh @@ -34,7 +34,7 @@ cd /opt/Fast-DDS git clone https://github.com/eProsima/foonathan_memory_vendor.git mkdir foonathan_memory_vendor/build cd foonathan_memory_vendor -git checkout v1.3.1 +git checkout master cd build cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local/ -DBUILD_SHARED_LIBS=ON @@ -47,7 +47,7 @@ cd /opt/Fast-DDS git clone https://github.com/eProsima/Fast-CDR.git mkdir Fast-CDR/build cd Fast-CDR -git checkout v2.1.3 +git checkout master cd build cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local/ -DBUILD_SHARED_LIBS=ON cmake --build . --target install @@ -58,14 +58,51 @@ cmake --build . --target install cd /opt/Fast-DDS git clone https://github.com/eProsima/Fast-DDS.git cd Fast-DDS -git checkout v2.13.3 +git checkout master mkdir build ## Prevent glibc bug: https://stackoverflow.com/questions/30680550/c-gettid-was-not-declared-in-this-scope -file_bug="/opt/Fast-DDS/Fast-DDS/src/cpp/utils/threading/threading_pthread.ipp" -nl=$(grep -n "namespace eprosima" $file_bug | awk -F':' '{print $1 ; exit 0}') -sed -i "${nl}i #include \n#include \n#define gettid() syscall(SYS_gettid)\n" $file_bug +# Seems to be fixed already manually by eProsima +# file_bug="/opt/Fast-DDS/Fast-DDS/src/cpp/utils/threading/threading_pthread.ipp" +# nl=$(grep -n "namespace eprosima" $file_bug | awk -F':' '{print $1 ; exit 0}') +# sed -i "${nl}i #include \n#include \n#define gettid() syscall(SYS_gettid)\n" $file_bug -cd build -cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local/ -DBUILD_SHARED_LIBS=ON +cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local/ -DBUILD_SHARED_LIBS=ON +cmake --build . --target install + +# +# DDS Dev Utils +# +cd /opt/Fast-DDS +git clone https://github.com/eProsima/dev-utils.git +cd dev-utils +git checkout main +mkdir build +cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local/ -DBUILD_SHARED_LIBS=ON +cmake --build . --target install + +# +# DDS Pipe +# +cd /opt/Fast-DDS +git clone https://github.com/eProsima/ddspipe_core.git +git clone https://github.com/eProsima/ddspipe_participants.git +git clone https://github.com/eProsima/ddspipe_yaml.git + +cd ddspipe_core +git checkout main +mkdir build +cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local/ -DBUILD_SHARED_LIBS=ON +cmake --build . --target install + +cd ddspipe_participants +git checkout main +mkdir build +cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local/ -DBUILD_SHARED_LIBS=ON +cmake --build . --target install + +cd ddspipe_yaml +git checkout main +mkdir build +cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local/ -DBUILD_SHARED_LIBS=ON cmake --build . --target install From 52c8bc8f3e5637a09ed266919c217ecc4a2f2dc3 Mon Sep 17 00:00:00 2001 From: Ken Zangelin Date: Wed, 11 Sep 2024 10:15:17 +0200 Subject: [PATCH 02/13] actions/upload-artifact v2 -> v4 --- .github/workflows/functional.yml | 2 +- docker/build-ubi/04.install-fastdds.sh | 21 +++++++++++++-------- 2 files changed, 14 insertions(+), 9 deletions(-) diff --git a/.github/workflows/functional.yml b/.github/workflows/functional.yml index 179a15a5aa..f12dfe7d7d 100644 --- a/.github/workflows/functional.yml +++ b/.github/workflows/functional.yml @@ -32,7 +32,7 @@ jobs: outputs: type=docker,dest=/tmp/test-image.tar - name: Upload artifact - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 with: name: test-image path: /tmp/test-image.tar diff --git a/docker/build-ubi/04.install-fastdds.sh b/docker/build-ubi/04.install-fastdds.sh index fe38b61ad5..9e253ad24e 100755 --- a/docker/build-ubi/04.install-fastdds.sh +++ b/docker/build-ubi/04.install-fastdds.sh @@ -28,6 +28,7 @@ yum -y --nogpgcheck install https://dl.fedoraproject.org/pub/fedora/linux/releas mkdir /opt/Fast-DDS cd /opt/Fast-DDS + # # foonathan_memory_vendor # @@ -37,9 +38,10 @@ cd foonathan_memory_vendor git checkout master cd build -cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local/ -DBUILD_SHARED_LIBS=ON +cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local -DBUILD_SHARED_LIBS=ON cmake --build . --target install + # # CDR # @@ -49,9 +51,10 @@ mkdir Fast-CDR/build cd Fast-CDR git checkout master cd build -cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local/ -DBUILD_SHARED_LIBS=ON +cmake .. cmake --build . --target install + # # RTPS # @@ -67,9 +70,10 @@ mkdir build # nl=$(grep -n "namespace eprosima" $file_bug | awk -F':' '{print $1 ; exit 0}') # sed -i "${nl}i #include \n#include \n#define gettid() syscall(SYS_gettid)\n" $file_bug -cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local/ -DBUILD_SHARED_LIBS=ON +cmake .. cmake --build . --target install + # # DDS Dev Utils # @@ -78,11 +82,12 @@ git clone https://github.com/eProsima/dev-utils.git cd dev-utils git checkout main mkdir build -cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local/ -DBUILD_SHARED_LIBS=ON +cmake .. cmake --build . --target install + # -# DDS Pipe +# DDS Pipe (3 packages) # cd /opt/Fast-DDS git clone https://github.com/eProsima/ddspipe_core.git @@ -92,17 +97,17 @@ git clone https://github.com/eProsima/ddspipe_yaml.git cd ddspipe_core git checkout main mkdir build -cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local/ -DBUILD_SHARED_LIBS=ON +cmake .. cmake --build . --target install cd ddspipe_participants git checkout main mkdir build -cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local/ -DBUILD_SHARED_LIBS=ON +cmake .. cmake --build . --target install cd ddspipe_yaml git checkout main mkdir build -cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local/ -DBUILD_SHARED_LIBS=ON +cmake .. cmake --build . --target install From 9b0067e062c6567f3958bc6c1907b9bc01119e6b Mon Sep 17 00:00:00 2001 From: Ken Zangelin Date: Wed, 11 Sep 2024 10:28:06 +0200 Subject: [PATCH 03/13] A few 'cd's were missing --- docker/build-ubi/04.install-fastdds.sh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/docker/build-ubi/04.install-fastdds.sh b/docker/build-ubi/04.install-fastdds.sh index 9e253ad24e..afaa8c2fe2 100755 --- a/docker/build-ubi/04.install-fastdds.sh +++ b/docker/build-ubi/04.install-fastdds.sh @@ -63,6 +63,7 @@ git clone https://github.com/eProsima/Fast-DDS.git cd Fast-DDS git checkout master mkdir build +cd build ## Prevent glibc bug: https://stackoverflow.com/questions/30680550/c-gettid-was-not-declared-in-this-scope # Seems to be fixed already manually by eProsima @@ -82,6 +83,7 @@ git clone https://github.com/eProsima/dev-utils.git cd dev-utils git checkout main mkdir build +cd build cmake .. cmake --build . --target install @@ -97,17 +99,20 @@ git clone https://github.com/eProsima/ddspipe_yaml.git cd ddspipe_core git checkout main mkdir build +cd build cmake .. cmake --build . --target install cd ddspipe_participants git checkout main mkdir build +cd build cmake .. cmake --build . --target install cd ddspipe_yaml git checkout main mkdir build +cd build cmake .. cmake --build . --target install From 578f58cd15a1c7596cb27cc2dbd41d4de953cee2 Mon Sep 17 00:00:00 2001 From: Ken Zangelin Date: Wed, 11 Sep 2024 16:13:59 +0200 Subject: [PATCH 04/13] Fixes in build-ubi/04.install-fastdds.sh --- docker/build-ubi/04.install-fastdds.sh | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/docker/build-ubi/04.install-fastdds.sh b/docker/build-ubi/04.install-fastdds.sh index afaa8c2fe2..d9ae352d2a 100755 --- a/docker/build-ubi/04.install-fastdds.sh +++ b/docker/build-ubi/04.install-fastdds.sh @@ -25,19 +25,20 @@ dnf config-manager --set-enabled powertools yum -y install tinyxml2-devel boost-devel yum -y --nogpgcheck install https://dl.fedoraproject.org/pub/fedora/linux/releases/39/Everything/x86_64/os/Packages/a/asio-devel-1.28.1-2.fc39.x86_64.rpm + +# Fast-DDS mkdir /opt/Fast-DDS -cd /opt/Fast-DDS # # foonathan_memory_vendor # +cd /opt/Fast-DDS git clone https://github.com/eProsima/foonathan_memory_vendor.git -mkdir foonathan_memory_vendor/build cd foonathan_memory_vendor git checkout master +mkdir build cd build - cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local -DBUILD_SHARED_LIBS=ON cmake --build . --target install @@ -47,9 +48,9 @@ cmake --build . --target install # cd /opt/Fast-DDS git clone https://github.com/eProsima/Fast-CDR.git -mkdir Fast-CDR/build cd Fast-CDR git checkout master +mkdir build cd build cmake .. cmake --build . --target install From 3919b60044c99b25091c310f32239b3c2a7d7f14 Mon Sep 17 00:00:00 2001 From: Ken Zangelin Date: Wed, 11 Sep 2024 16:21:36 +0200 Subject: [PATCH 05/13] actions/downloadload-artifact v2 -> v4 --- .github/workflows/functional.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/functional.yml b/.github/workflows/functional.yml index f12dfe7d7d..54e23a39f3 100644 --- a/.github/workflows/functional.yml +++ b/.github/workflows/functional.yml @@ -78,7 +78,7 @@ jobs: uses: docker/setup-qemu-action@v1 - name: Download artifact - uses: actions/download-artifact@v2 + uses: actions/download-artifact@v4 with: name: test-image path: /tmp From 1918df65b331e12577f50d19651e9361dfb0620b Mon Sep 17 00:00:00 2001 From: Ken Zangelin Date: Wed, 11 Sep 2024 16:46:33 +0200 Subject: [PATCH 06/13] dev_utils => cmake_utils + cpp_utils --- docker/build-ubi/04.install-fastdds.sh | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/docker/build-ubi/04.install-fastdds.sh b/docker/build-ubi/04.install-fastdds.sh index d9ae352d2a..2ce794bf7b 100755 --- a/docker/build-ubi/04.install-fastdds.sh +++ b/docker/build-ubi/04.install-fastdds.sh @@ -80,11 +80,18 @@ cmake --build . --target install # DDS Dev Utils # cd /opt/Fast-DDS -git clone https://github.com/eProsima/dev-utils.git -cd dev-utils +git clone https://github.com/eProsima/dev_utils.git +cd dev_utils git checkout main -mkdir build -cd build + +mkdir -p build/cmake_utils +cd build/cmake_utils +cmake .. +cmake --build . --target install + +cd - +mkdir -p build/cpp_utils +cd build/cpp_utils cmake .. cmake --build . --target install From b3ef829bfe4421cbc6c76f995abe0f410308741e Mon Sep 17 00:00:00 2001 From: Ken Zangelin Date: Wed, 11 Sep 2024 17:41:19 +0200 Subject: [PATCH 07/13] typo --- docker/build-ubi/04.install-fastdds.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docker/build-ubi/04.install-fastdds.sh b/docker/build-ubi/04.install-fastdds.sh index 2ce794bf7b..6ca3a49a67 100755 --- a/docker/build-ubi/04.install-fastdds.sh +++ b/docker/build-ubi/04.install-fastdds.sh @@ -80,8 +80,8 @@ cmake --build . --target install # DDS Dev Utils # cd /opt/Fast-DDS -git clone https://github.com/eProsima/dev_utils.git -cd dev_utils +git clone https://github.com/eProsima/dev-utils.git +cd dev-utils git checkout main mkdir -p build/cmake_utils From 9ddb1f1ecccf0a17e479b5f0ca25373092e55613 Mon Sep 17 00:00:00 2001 From: Ken Zangelin Date: Thu, 12 Sep 2024 11:40:16 +0200 Subject: [PATCH 08/13] Updated the build script for DDS --- docker/build-ubi/04.install-fastdds.sh | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/docker/build-ubi/04.install-fastdds.sh b/docker/build-ubi/04.install-fastdds.sh index 6ca3a49a67..fcc7026b6b 100755 --- a/docker/build-ubi/04.install-fastdds.sh +++ b/docker/build-ubi/04.install-fastdds.sh @@ -77,7 +77,7 @@ cmake --build . --target install # -# DDS Dev Utils +# DDS Dev Utils (2 packages in one) # cd /opt/Fast-DDS git clone https://github.com/eProsima/dev-utils.git @@ -86,40 +86,38 @@ git checkout main mkdir -p build/cmake_utils cd build/cmake_utils -cmake .. +cmake ../../cmake_utils cmake --build . --target install cd - mkdir -p build/cpp_utils cd build/cpp_utils -cmake .. +cmake ../../cmake_utils cmake --build . --target install # -# DDS Pipe (3 packages) +# DDS Pipe (3 packages in one) # cd /opt/Fast-DDS -git clone https://github.com/eProsima/ddspipe_core.git -git clone https://github.com/eProsima/ddspipe_participants.git -git clone https://github.com/eProsima/ddspipe_yaml.git +git clone https://github.com/eProsima/DDS-Pipe.git +cd DDS-Pipe +git checkout main + cd ddspipe_core -git checkout main mkdir build cd build cmake .. cmake --build . --target install -cd ddspipe_participants -git checkout main +cd ../../ddspipe_participants mkdir build cd build cmake .. cmake --build . --target install -cd ddspipe_yaml -git checkout main +cd ../../ddspipe_yaml mkdir build cd build cmake .. From a8f25ce7f56c9ccf555b5734c8c0abe91098059c Mon Sep 17 00:00:00 2001 From: Ken Zangelin Date: Thu, 12 Sep 2024 12:55:16 +0200 Subject: [PATCH 09/13] Bug in install file --- docker/build-ubi/04.install-fastdds.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker/build-ubi/04.install-fastdds.sh b/docker/build-ubi/04.install-fastdds.sh index fcc7026b6b..dca166b7e0 100755 --- a/docker/build-ubi/04.install-fastdds.sh +++ b/docker/build-ubi/04.install-fastdds.sh @@ -92,7 +92,7 @@ cmake --build . --target install cd - mkdir -p build/cpp_utils cd build/cpp_utils -cmake ../../cmake_utils +cmake ../../cpp_utils cmake --build . --target install From 4f9374467a9ac383f8fae68c333a703c9801b8a8 Mon Sep 17 00:00:00 2001 From: Ken Zangelin Date: Thu, 12 Sep 2024 15:13:15 +0200 Subject: [PATCH 10/13] Updated the build script for DDS --- docker/build-ubi/04.install-fastdds.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docker/build-ubi/04.install-fastdds.sh b/docker/build-ubi/04.install-fastdds.sh index dca166b7e0..23e95b6567 100755 --- a/docker/build-ubi/04.install-fastdds.sh +++ b/docker/build-ubi/04.install-fastdds.sh @@ -44,7 +44,7 @@ cmake --build . --target install # -# CDR +# Fast-CDR # cd /opt/Fast-DDS git clone https://github.com/eProsima/Fast-CDR.git @@ -57,7 +57,7 @@ cmake --build . --target install # -# RTPS +# Fast-DDS # cd /opt/Fast-DDS git clone https://github.com/eProsima/Fast-DDS.git From 044c2229618ada1e238486370550a99e188b9db3 Mon Sep 17 00:00:00 2001 From: Ken Zangelin Date: Thu, 12 Sep 2024 15:37:33 +0200 Subject: [PATCH 11/13] yaml-cpp for DDS --- docker/build-ubi/04.install-fastdds.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker/build-ubi/04.install-fastdds.sh b/docker/build-ubi/04.install-fastdds.sh index 23e95b6567..450b75ffc8 100755 --- a/docker/build-ubi/04.install-fastdds.sh +++ b/docker/build-ubi/04.install-fastdds.sh @@ -22,7 +22,7 @@ dnf config-manager --set-enabled powertools -yum -y install tinyxml2-devel boost-devel +yum -y install tinyxml2-devel boost-devel yaml-cpp yum -y --nogpgcheck install https://dl.fedoraproject.org/pub/fedora/linux/releases/39/Everything/x86_64/os/Packages/a/asio-devel-1.28.1-2.fc39.x86_64.rpm From 96267dadea2bb4fff7bfaae4a72577fac19db87e Mon Sep 17 00:00:00 2001 From: Ken Zangelin Date: Thu, 12 Sep 2024 16:43:03 +0200 Subject: [PATCH 12/13] libyaml-cpp-devel for DDS --- docker/build-ubi/04.install-fastdds.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker/build-ubi/04.install-fastdds.sh b/docker/build-ubi/04.install-fastdds.sh index 450b75ffc8..b9a2199496 100755 --- a/docker/build-ubi/04.install-fastdds.sh +++ b/docker/build-ubi/04.install-fastdds.sh @@ -22,7 +22,7 @@ dnf config-manager --set-enabled powertools -yum -y install tinyxml2-devel boost-devel yaml-cpp +yum -y install tinyxml2-devel boost-devel yaml-cpp libyaml-cpp-devel yum -y --nogpgcheck install https://dl.fedoraproject.org/pub/fedora/linux/releases/39/Everything/x86_64/os/Packages/a/asio-devel-1.28.1-2.fc39.x86_64.rpm From 2ddbf354aa325ff7db6779f8792e08127802178c Mon Sep 17 00:00:00 2001 From: Ken Zangelin Date: Thu, 12 Sep 2024 16:56:23 +0200 Subject: [PATCH 13/13] yaml-cpp-devel for DDS --- docker/build-ubi/04.install-fastdds.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker/build-ubi/04.install-fastdds.sh b/docker/build-ubi/04.install-fastdds.sh index b9a2199496..896bfdbbec 100755 --- a/docker/build-ubi/04.install-fastdds.sh +++ b/docker/build-ubi/04.install-fastdds.sh @@ -22,7 +22,7 @@ dnf config-manager --set-enabled powertools -yum -y install tinyxml2-devel boost-devel yaml-cpp libyaml-cpp-devel +yum -y install tinyxml2-devel boost-devel yaml-cpp yaml-cpp-devel yum -y --nogpgcheck install https://dl.fedoraproject.org/pub/fedora/linux/releases/39/Everything/x86_64/os/Packages/a/asio-devel-1.28.1-2.fc39.x86_64.rpm