From 7ff0339c15a97e12c6e9d978d4db1c2aa3dfe92c Mon Sep 17 00:00:00 2001 From: "Addisu Z. Taddese" Date: Fri, 30 Aug 2024 22:51:17 -0500 Subject: [PATCH 01/22] Add Github Action for Windows Signed-off-by: Addisu Z. Taddese --- .github/workflows/windows.yaml | 48 ++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 .github/workflows/windows.yaml diff --git a/.github/workflows/windows.yaml b/.github/workflows/windows.yaml new file mode 100644 index 000000000..e3ed647a9 --- /dev/null +++ b/.github/workflows/windows.yaml @@ -0,0 +1,48 @@ +name: Windows +on: + pull_request: + +jobs: + build: + name: Window CI + env: + PACKAGE: gz-rendering9 + runs-on: windows-latest + steps: + - name: setup-pixi + uses: prefix-dev/setup-pixi@v0.8.1 + with: + run-install: false + + - name: Install build tools + run: | + pixi init + pixi add vcstool colcon-common-extensions pkgconfig + - name: Setup pixi env variables + shell: bash + run: | + eval "$(pixi shell-hook)" + echo CMAKE_PREFIX_PATH=$CONDA_PREFIX/Library >> $GITHUB_ENV + - name: Install base dependencies + run: | + # List adapted from https://github.com/gazebo-tooling/release-tools/blob/f89ac8cafc646260598eb8eb6d94be8093bdc9f7/jenkins-scripts/lib/windows_env_vars.bat#L22 + pixi add assimp dlfcn-win32 eigen ffmpeg freeimage gdal gflags ogre ogre-next spdlog tinyxml2 + - name: Clone source dependencies + run: | + mkdir src + cd src + pixi run vcs import --input https://raw.githubusercontent.com/gazebo-tooling/gazebodistro/master/${env:PACKAGE}.yaml + + - uses: actions/checkout@v4 + with: + path: src/gz-rendering + + - name: Build Dependencies + run: | + pixi run colcon build --merge-install --cmake-args -G"Visual Studio 17 2022" -A x64 -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=OFF --event-handlers console_direct+ --packages-up-to ${env:PACKAGE} + + - name: Build Package + run: pixi run colcon build --merge-install --cmake-args -G"Visual Studio 17 2022" -A x64 -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=ON -DSKIP_ogre=ON --event-handlers console_direct+ --packages-select ${env:PACKAGE} + + - name: Test + run: pixi run colcon test --merge-install --event-handlers console_direct+ --packages-select ${env:PACKAGE} From 1a0babacbb6588221f2426b66b2d954ddb909214 Mon Sep 17 00:00:00 2001 From: "Addisu Z. Taddese" Date: Fri, 30 Aug 2024 23:39:16 -0500 Subject: [PATCH 02/22] Include GL/gl.h in windows Signed-off-by: Addisu Z. Taddese --- ogre2/src/Ogre2Scene.cc | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/ogre2/src/Ogre2Scene.cc b/ogre2/src/Ogre2Scene.cc index d7bc1ff91..2d164e235 100644 --- a/ogre2/src/Ogre2Scene.cc +++ b/ogre2/src/Ogre2Scene.cc @@ -20,10 +20,14 @@ #include #include #else -#ifndef _WIN32 + #ifdef _WIN32 + // windows.h has to be included *before* GL/gl.h + // to avoid redefinition errors. + #include + #endif + #include #endif -#endif #include From 1877c9b483073fed11500b1ffadff9ba7a45e6b5 Mon Sep 17 00:00:00 2001 From: "Addisu Z. Taddese" Date: Sat, 31 Aug 2024 00:01:30 -0500 Subject: [PATCH 03/22] Determine version number programmatically Signed-off-by: Addisu Z. Taddese --- .github/workflows/windows.yaml | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/.github/workflows/windows.yaml b/.github/workflows/windows.yaml index e3ed647a9..aa7c1d6dd 100644 --- a/.github/workflows/windows.yaml +++ b/.github/workflows/windows.yaml @@ -6,9 +6,18 @@ jobs: build: name: Window CI env: - PACKAGE: gz-rendering9 + LIBRARY_NAME: gz-rendering runs-on: windows-latest steps: + + - uses: actions/checkout@v4 + with: + path: tmp/gz-rendering + - name: Determine major version + shell: bash + run: | + curl -LO https://raw.githubusercontent.com/gazebo-tooling/release-tools/master/jenkins-scripts/tools/detect_cmake_major_version.py + echo PACKAGE="$LIBRARY_NAME$(python3 detect_cmake_major_version tmp/gz-rendering/CMakeLists.txt)"" >> $GITHUB_ENV - name: setup-pixi uses: prefix-dev/setup-pixi@v0.8.1 with: @@ -28,14 +37,14 @@ jobs: # List adapted from https://github.com/gazebo-tooling/release-tools/blob/f89ac8cafc646260598eb8eb6d94be8093bdc9f7/jenkins-scripts/lib/windows_env_vars.bat#L22 pixi add assimp dlfcn-win32 eigen ffmpeg freeimage gdal gflags ogre ogre-next spdlog tinyxml2 - name: Clone source dependencies + shell: bash run: | mkdir src cd src pixi run vcs import --input https://raw.githubusercontent.com/gazebo-tooling/gazebodistro/master/${env:PACKAGE}.yaml - - - uses: actions/checkout@v4 - with: - path: src/gz-rendering + rm -rf gz-rendering + # Move the gz-rendering we checkout earlier and replace the one cloned by vcs + mv ../tmp/gz-rendering . - name: Build Dependencies run: | From f29867e14d1c427d341c94d41fee2e70e1eee9df Mon Sep 17 00:00:00 2001 From: "Addisu Z. Taddese" Date: Sat, 31 Aug 2024 00:02:49 -0500 Subject: [PATCH 04/22] Fix typo Signed-off-by: Addisu Z. Taddese --- .github/workflows/windows.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/windows.yaml b/.github/workflows/windows.yaml index aa7c1d6dd..b804f7a56 100644 --- a/.github/workflows/windows.yaml +++ b/.github/workflows/windows.yaml @@ -17,7 +17,7 @@ jobs: shell: bash run: | curl -LO https://raw.githubusercontent.com/gazebo-tooling/release-tools/master/jenkins-scripts/tools/detect_cmake_major_version.py - echo PACKAGE="$LIBRARY_NAME$(python3 detect_cmake_major_version tmp/gz-rendering/CMakeLists.txt)"" >> $GITHUB_ENV + echo PACKAGE="$LIBRARY_NAME$(python3 detect_cmake_major_version tmp/gz-rendering/CMakeLists.txt)" >> $GITHUB_ENV - name: setup-pixi uses: prefix-dev/setup-pixi@v0.8.1 with: From 8bb92bd38ac05504835f410e3f2939028609d93a Mon Sep 17 00:00:00 2001 From: "Addisu Z. Taddese" Date: Sat, 31 Aug 2024 00:03:37 -0500 Subject: [PATCH 05/22] Fix typo Signed-off-by: Addisu Z. Taddese --- .github/workflows/windows.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/windows.yaml b/.github/workflows/windows.yaml index b804f7a56..6807aad8c 100644 --- a/.github/workflows/windows.yaml +++ b/.github/workflows/windows.yaml @@ -17,7 +17,7 @@ jobs: shell: bash run: | curl -LO https://raw.githubusercontent.com/gazebo-tooling/release-tools/master/jenkins-scripts/tools/detect_cmake_major_version.py - echo PACKAGE="$LIBRARY_NAME$(python3 detect_cmake_major_version tmp/gz-rendering/CMakeLists.txt)" >> $GITHUB_ENV + echo PACKAGE="$LIBRARY_NAME$(python3 detect_cmake_major_version.py tmp/gz-rendering/CMakeLists.txt)" >> $GITHUB_ENV - name: setup-pixi uses: prefix-dev/setup-pixi@v0.8.1 with: From 18af2a955aa0b3f1242ad7f75f954241207388b0 Mon Sep 17 00:00:00 2001 From: "Addisu Z. Taddese" Date: Sat, 31 Aug 2024 00:06:51 -0500 Subject: [PATCH 06/22] Fix Signed-off-by: Addisu Z. Taddese --- .github/workflows/windows.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/windows.yaml b/.github/workflows/windows.yaml index 6807aad8c..4980e72ba 100644 --- a/.github/workflows/windows.yaml +++ b/.github/workflows/windows.yaml @@ -31,7 +31,7 @@ jobs: shell: bash run: | eval "$(pixi shell-hook)" - echo CMAKE_PREFIX_PATH=$CONDA_PREFIX/Library >> $GITHUB_ENV + echo CMAKE_PREFIX_PATH=$CONDA_PREFIX\\Library >> $GITHUB_ENV - name: Install base dependencies run: | # List adapted from https://github.com/gazebo-tooling/release-tools/blob/f89ac8cafc646260598eb8eb6d94be8093bdc9f7/jenkins-scripts/lib/windows_env_vars.bat#L22 @@ -41,7 +41,7 @@ jobs: run: | mkdir src cd src - pixi run vcs import --input https://raw.githubusercontent.com/gazebo-tooling/gazebodistro/master/${env:PACKAGE}.yaml + pixi run vcs import --input https://raw.githubusercontent.com/gazebo-tooling/gazebodistro/master/$PACKAGE.yaml rm -rf gz-rendering # Move the gz-rendering we checkout earlier and replace the one cloned by vcs mv ../tmp/gz-rendering . From 2d49ddd8f65d9edd3bdb03f43ea75fd88c16e5fe Mon Sep 17 00:00:00 2001 From: "Addisu Z. Taddese" Date: Sat, 31 Aug 2024 00:11:03 -0500 Subject: [PATCH 07/22] Pin version Signed-off-by: Addisu Z. Taddese --- .github/workflows/windows.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/windows.yaml b/.github/workflows/windows.yaml index 4980e72ba..c489c0a6f 100644 --- a/.github/workflows/windows.yaml +++ b/.github/workflows/windows.yaml @@ -7,7 +7,7 @@ jobs: name: Window CI env: LIBRARY_NAME: gz-rendering - runs-on: windows-latest + runs-on: windows-2022 steps: - uses: actions/checkout@v4 From 7e4b3f98b52809bb0c1ce2af5a351929357ce8e4 Mon Sep 17 00:00:00 2001 From: "Addisu Z. Taddese" Date: Sat, 31 Aug 2024 00:31:19 -0500 Subject: [PATCH 08/22] Add path Signed-off-by: Addisu Z. Taddese --- .github/workflows/windows.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/windows.yaml b/.github/workflows/windows.yaml index c489c0a6f..b5f18a489 100644 --- a/.github/workflows/windows.yaml +++ b/.github/workflows/windows.yaml @@ -31,7 +31,8 @@ jobs: shell: bash run: | eval "$(pixi shell-hook)" - echo CMAKE_PREFIX_PATH=$CONDA_PREFIX\\Library >> $GITHUB_ENV + echo CMAKE_PREFIX_PATH="$CONDA_PREFIX\\Library" >> $GITHUB_ENV + echo PATH="$PATH" >> $GITHUB_ENV - name: Install base dependencies run: | # List adapted from https://github.com/gazebo-tooling/release-tools/blob/f89ac8cafc646260598eb8eb6d94be8093bdc9f7/jenkins-scripts/lib/windows_env_vars.bat#L22 From 3820abfa476c8858298404ba81d97ad2119e932e Mon Sep 17 00:00:00 2001 From: "Addisu Z. Taddese" Date: Sat, 31 Aug 2024 00:48:08 -0500 Subject: [PATCH 09/22] Env vars Signed-off-by: Addisu Z. Taddese --- .github/workflows/windows.yaml | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/.github/workflows/windows.yaml b/.github/workflows/windows.yaml index b5f18a489..22f2e6e50 100644 --- a/.github/workflows/windows.yaml +++ b/.github/workflows/windows.yaml @@ -27,12 +27,11 @@ jobs: run: | pixi init pixi add vcstool colcon-common-extensions pkgconfig - - name: Setup pixi env variables - shell: bash + - name: Set up environment variables run: | - eval "$(pixi shell-hook)" - echo CMAKE_PREFIX_PATH="$CONDA_PREFIX\\Library" >> $GITHUB_ENV - echo PATH="$PATH" >> $GITHUB_ENV + # Set environment variables globally + pixi shell-hook | Out-String | Invoke-Expression + ("CMAKE_PREFIX_PATH=${env:CONDA_PREFIX}\Library") >> $env:GITHUB_ENV - name: Install base dependencies run: | # List adapted from https://github.com/gazebo-tooling/release-tools/blob/f89ac8cafc646260598eb8eb6d94be8093bdc9f7/jenkins-scripts/lib/windows_env_vars.bat#L22 @@ -55,4 +54,7 @@ jobs: run: pixi run colcon build --merge-install --cmake-args -G"Visual Studio 17 2022" -A x64 -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=ON -DSKIP_ogre=ON --event-handlers console_direct+ --packages-select ${env:PACKAGE} - name: Test - run: pixi run colcon test --merge-install --event-handlers console_direct+ --packages-select ${env:PACKAGE} + run: | + + eval "$(pixi shell-hook)" + pixi run colcon test --merge-install --event-handlers console_direct+ --packages-select ${env:PACKAGE} From 4316c5504b09bdb27fd6952ba3793644bfc7c9f5 Mon Sep 17 00:00:00 2001 From: "Addisu Z. Taddese" Date: Sat, 31 Aug 2024 00:50:21 -0500 Subject: [PATCH 10/22] More env Signed-off-by: Addisu Z. Taddese --- .github/workflows/windows.yaml | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/.github/workflows/windows.yaml b/.github/workflows/windows.yaml index 22f2e6e50..bd9aae733 100644 --- a/.github/workflows/windows.yaml +++ b/.github/workflows/windows.yaml @@ -32,6 +32,7 @@ jobs: # Set environment variables globally pixi shell-hook | Out-String | Invoke-Expression ("CMAKE_PREFIX_PATH=${env:CONDA_PREFIX}\Library") >> $env:GITHUB_ENV + ("PATH=${env:PATH}") >> $env:GITHUB_ENV - name: Install base dependencies run: | # List adapted from https://github.com/gazebo-tooling/release-tools/blob/f89ac8cafc646260598eb8eb6d94be8093bdc9f7/jenkins-scripts/lib/windows_env_vars.bat#L22 @@ -47,14 +48,10 @@ jobs: mv ../tmp/gz-rendering . - name: Build Dependencies - run: | - pixi run colcon build --merge-install --cmake-args -G"Visual Studio 17 2022" -A x64 -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=OFF --event-handlers console_direct+ --packages-up-to ${env:PACKAGE} + run: pixi run colcon build --merge-install --cmake-args -G"Visual Studio 17 2022" -A x64 -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=OFF --event-handlers console_direct+ --packages-up-to ${env:PACKAGE} - name: Build Package run: pixi run colcon build --merge-install --cmake-args -G"Visual Studio 17 2022" -A x64 -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=ON -DSKIP_ogre=ON --event-handlers console_direct+ --packages-select ${env:PACKAGE} - name: Test - run: | - - eval "$(pixi shell-hook)" - pixi run colcon test --merge-install --event-handlers console_direct+ --packages-select ${env:PACKAGE} + run: pixi run colcon test --merge-install --event-handlers console_direct+ --packages-select ${env:PACKAGE} From 1f912908ea2a0dad7790f3fef91375f05fdb8bcf Mon Sep 17 00:00:00 2001 From: "Addisu Z. Taddese" Date: Sat, 31 Aug 2024 00:55:46 -0500 Subject: [PATCH 11/22] Skip non test build Signed-off-by: Addisu Z. Taddese --- .github/workflows/windows.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/windows.yaml b/.github/workflows/windows.yaml index bd9aae733..283909760 100644 --- a/.github/workflows/windows.yaml +++ b/.github/workflows/windows.yaml @@ -48,7 +48,7 @@ jobs: mv ../tmp/gz-rendering . - name: Build Dependencies - run: pixi run colcon build --merge-install --cmake-args -G"Visual Studio 17 2022" -A x64 -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=OFF --event-handlers console_direct+ --packages-up-to ${env:PACKAGE} + run: pixi run colcon build --merge-install --cmake-args -G"Visual Studio 17 2022" -A x64 -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=OFF --event-handlers console_direct+ --packages-skip ${env:PACKAGE} - name: Build Package run: pixi run colcon build --merge-install --cmake-args -G"Visual Studio 17 2022" -A x64 -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=ON -DSKIP_ogre=ON --event-handlers console_direct+ --packages-select ${env:PACKAGE} From dcea2c3cdf74b858d3661ea28b2d9ecb8918a314 Mon Sep 17 00:00:00 2001 From: "Addisu Z. Taddese" Date: Sat, 31 Aug 2024 01:07:07 -0500 Subject: [PATCH 12/22] Add install path Signed-off-by: Addisu Z. Taddese --- .github/workflows/windows.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/windows.yaml b/.github/workflows/windows.yaml index 283909760..44b4fc7bb 100644 --- a/.github/workflows/windows.yaml +++ b/.github/workflows/windows.yaml @@ -54,4 +54,6 @@ jobs: run: pixi run colcon build --merge-install --cmake-args -G"Visual Studio 17 2022" -A x64 -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=ON -DSKIP_ogre=ON --event-handlers console_direct+ --packages-select ${env:PACKAGE} - name: Test - run: pixi run colcon test --merge-install --event-handlers console_direct+ --packages-select ${env:PACKAGE} + run: + $env:PATH=${env:GITHUB_WORKSPACE}\install\bin;$env:PATH + pixi run colcon test --merge-install --event-handlers console_direct+ --packages-select ${env:PACKAGE} From 233711f1753a22dd93d43a37d32a1a693e8977da Mon Sep 17 00:00:00 2001 From: "Addisu Z. Taddese" Date: Sat, 31 Aug 2024 01:17:18 -0500 Subject: [PATCH 13/22] Add sscache Signed-off-by: Addisu Z. Taddese --- .github/workflows/windows.yaml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/.github/workflows/windows.yaml b/.github/workflows/windows.yaml index 44b4fc7bb..648b62d31 100644 --- a/.github/workflows/windows.yaml +++ b/.github/workflows/windows.yaml @@ -46,6 +46,13 @@ jobs: rm -rf gz-rendering # Move the gz-rendering we checkout earlier and replace the one cloned by vcs mv ../tmp/gz-rendering . + - name: Run sccache-cache + uses: mozilla-actions/sccache-action@v0.0.5 + - name: sscache environment + shell: bash + run: | + echo CMAKE_C_COMPILER_LAUNCHER="$SCCACHE_PATH" >> $GITHUB_ENV + echo CMAKE_CXX_COMPILER_LAUNCHER="$SCCACHE_PATH" >> $GITHUB_ENV - name: Build Dependencies run: pixi run colcon build --merge-install --cmake-args -G"Visual Studio 17 2022" -A x64 -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=OFF --event-handlers console_direct+ --packages-skip ${env:PACKAGE} From 00d3b5811a9902b2ee2f5d5ac9255b8aca838655 Mon Sep 17 00:00:00 2001 From: "Addisu Z. Taddese" Date: Sat, 31 Aug 2024 01:21:23 -0500 Subject: [PATCH 14/22] quotes Signed-off-by: Addisu Z. Taddese --- .github/workflows/windows.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/windows.yaml b/.github/workflows/windows.yaml index 648b62d31..67e05240e 100644 --- a/.github/workflows/windows.yaml +++ b/.github/workflows/windows.yaml @@ -62,5 +62,5 @@ jobs: - name: Test run: - $env:PATH=${env:GITHUB_WORKSPACE}\install\bin;$env:PATH + $env:PATH="${env:GITHUB_WORKSPACE}\install\bin";$env:PATH pixi run colcon test --merge-install --event-handlers console_direct+ --packages-select ${env:PACKAGE} From 929c3d58321c82c0157f957dbe4a5bb2da5400cc Mon Sep 17 00:00:00 2001 From: "Addisu Z. Taddese" Date: Sat, 31 Aug 2024 01:37:10 -0500 Subject: [PATCH 15/22] fix syntax Signed-off-by: Addisu Z. Taddese --- .github/workflows/windows.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/windows.yaml b/.github/workflows/windows.yaml index 67e05240e..c2d29786f 100644 --- a/.github/workflows/windows.yaml +++ b/.github/workflows/windows.yaml @@ -61,6 +61,6 @@ jobs: run: pixi run colcon build --merge-install --cmake-args -G"Visual Studio 17 2022" -A x64 -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=ON -DSKIP_ogre=ON --event-handlers console_direct+ --packages-select ${env:PACKAGE} - name: Test - run: - $env:PATH="${env:GITHUB_WORKSPACE}\install\bin";$env:PATH + run: | + $env:PATH += "${env:GITHUB_WORKSPACE}\install\bin" pixi run colcon test --merge-install --event-handlers console_direct+ --packages-select ${env:PACKAGE} From f82c430c741c05ee7476de7e107ac8a1316c5f82 Mon Sep 17 00:00:00 2001 From: "Addisu Z. Taddese" Date: Sat, 31 Aug 2024 01:51:20 -0500 Subject: [PATCH 16/22] Cleanup Signed-off-by: Addisu Z. Taddese --- .github/workflows/windows.yaml | 27 +++++++++++---------------- 1 file changed, 11 insertions(+), 16 deletions(-) diff --git a/.github/workflows/windows.yaml b/.github/workflows/windows.yaml index c2d29786f..16e83ac69 100644 --- a/.github/workflows/windows.yaml +++ b/.github/workflows/windows.yaml @@ -7,17 +7,18 @@ jobs: name: Window CI env: LIBRARY_NAME: gz-rendering + COLCON_BUILD_CMD: 'colcon build --merge-install --event-handlers console_direct+ --cmake-args -G"Visual Studio 17 2022" -A x64 -DCMAKE_BUILD_TYPE=Release' runs-on: windows-2022 steps: - uses: actions/checkout@v4 with: - path: tmp/gz-rendering + path: src/gz-rendering - name: Determine major version shell: bash run: | curl -LO https://raw.githubusercontent.com/gazebo-tooling/release-tools/master/jenkins-scripts/tools/detect_cmake_major_version.py - echo PACKAGE="$LIBRARY_NAME$(python3 detect_cmake_major_version.py tmp/gz-rendering/CMakeLists.txt)" >> $GITHUB_ENV + echo PACKAGE="$LIBRARY_NAME$(python3 detect_cmake_major_version.py src/gz-rendering/CMakeLists.txt)" >> $GITHUB_ENV - name: setup-pixi uses: prefix-dev/setup-pixi@v0.8.1 with: @@ -34,18 +35,9 @@ jobs: ("CMAKE_PREFIX_PATH=${env:CONDA_PREFIX}\Library") >> $env:GITHUB_ENV ("PATH=${env:PATH}") >> $env:GITHUB_ENV - name: Install base dependencies - run: | - # List adapted from https://github.com/gazebo-tooling/release-tools/blob/f89ac8cafc646260598eb8eb6d94be8093bdc9f7/jenkins-scripts/lib/windows_env_vars.bat#L22 - pixi add assimp dlfcn-win32 eigen ffmpeg freeimage gdal gflags ogre ogre-next spdlog tinyxml2 - - name: Clone source dependencies - shell: bash - run: | - mkdir src - cd src - pixi run vcs import --input https://raw.githubusercontent.com/gazebo-tooling/gazebodistro/master/$PACKAGE.yaml - rm -rf gz-rendering - # Move the gz-rendering we checkout earlier and replace the one cloned by vcs - mv ../tmp/gz-rendering . + # List adapted from https://github.com/gazebo-tooling/release-tools/blob/f89ac8cafc646260598eb8eb6d94be8093bdc9f7/jenkins-scripts/lib/windows_env_vars.bat#L22 + run: pixi add assimp dlfcn-win32 eigen ffmpeg freeimage gdal gflags ogre ogre-next spdlog tinyxml2 + - name: Run sccache-cache uses: mozilla-actions/sccache-action@v0.0.5 - name: sscache environment @@ -54,11 +46,14 @@ jobs: echo CMAKE_C_COMPILER_LAUNCHER="$SCCACHE_PATH" >> $GITHUB_ENV echo CMAKE_CXX_COMPILER_LAUNCHER="$SCCACHE_PATH" >> $GITHUB_ENV + - name: Clone source dependencies + run: pixi run vcs import src --input https://raw.githubusercontent.com/gazebo-tooling/gazebodistro/master/$PACKAGE.yaml --skip-existing --repos + - name: Build Dependencies - run: pixi run colcon build --merge-install --cmake-args -G"Visual Studio 17 2022" -A x64 -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=OFF --event-handlers console_direct+ --packages-skip ${env:PACKAGE} + run: pixi run ${env:COLCON_BUILD_CMD} -DBUILD_TESTING=OFF --packages-skip ${env:PACKAGE} - name: Build Package - run: pixi run colcon build --merge-install --cmake-args -G"Visual Studio 17 2022" -A x64 -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=ON -DSKIP_ogre=ON --event-handlers console_direct+ --packages-select ${env:PACKAGE} + run: pixi run ${env:COLCON_BUILD_CMD} -DBUILD_TESTING=ON -DSKIP_ogre=ON --packages-select ${env:PACKAGE} - name: Test run: | From a21e814d0b849cc56a50624147c7bc1d4ddf5a83 Mon Sep 17 00:00:00 2001 From: "Addisu Z. Taddese" Date: Sat, 31 Aug 2024 01:54:01 -0500 Subject: [PATCH 17/22] Path tweaks Signed-off-by: Addisu Z. Taddese --- .github/workflows/windows.yaml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/workflows/windows.yaml b/.github/workflows/windows.yaml index 16e83ac69..7fda433d9 100644 --- a/.github/workflows/windows.yaml +++ b/.github/workflows/windows.yaml @@ -33,7 +33,7 @@ jobs: # Set environment variables globally pixi shell-hook | Out-String | Invoke-Expression ("CMAKE_PREFIX_PATH=${env:CONDA_PREFIX}\Library") >> $env:GITHUB_ENV - ("PATH=${env:PATH}") >> $env:GITHUB_ENV + ("PATH=${env:PATH};${env:GITHUB_WORKSPACE}\install\bin") >> $env:GITHUB_ENV - name: Install base dependencies # List adapted from https://github.com/gazebo-tooling/release-tools/blob/f89ac8cafc646260598eb8eb6d94be8093bdc9f7/jenkins-scripts/lib/windows_env_vars.bat#L22 run: pixi add assimp dlfcn-win32 eigen ffmpeg freeimage gdal gflags ogre ogre-next spdlog tinyxml2 @@ -56,6 +56,4 @@ jobs: run: pixi run ${env:COLCON_BUILD_CMD} -DBUILD_TESTING=ON -DSKIP_ogre=ON --packages-select ${env:PACKAGE} - name: Test - run: | - $env:PATH += "${env:GITHUB_WORKSPACE}\install\bin" - pixi run colcon test --merge-install --event-handlers console_direct+ --packages-select ${env:PACKAGE} + run: pixi run colcon test --merge-install --event-handlers console_direct+ --packages-select ${env:PACKAGE} From 709e8e94a77900e4b31de7ea4cba13f8c2b659f9 Mon Sep 17 00:00:00 2001 From: "Addisu Z. Taddese" Date: Sat, 31 Aug 2024 01:54:48 -0500 Subject: [PATCH 18/22] Fix vcs Signed-off-by: Addisu Z. Taddese --- .github/workflows/windows.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/windows.yaml b/.github/workflows/windows.yaml index 7fda433d9..5e71e23ad 100644 --- a/.github/workflows/windows.yaml +++ b/.github/workflows/windows.yaml @@ -47,7 +47,7 @@ jobs: echo CMAKE_CXX_COMPILER_LAUNCHER="$SCCACHE_PATH" >> $GITHUB_ENV - name: Clone source dependencies - run: pixi run vcs import src --input https://raw.githubusercontent.com/gazebo-tooling/gazebodistro/master/$PACKAGE.yaml --skip-existing --repos + run: pixi run vcs import --input https://raw.githubusercontent.com/gazebo-tooling/gazebodistro/master/$PACKAGE.yaml --skip-existing --repos src - name: Build Dependencies run: pixi run ${env:COLCON_BUILD_CMD} -DBUILD_TESTING=OFF --packages-skip ${env:PACKAGE} From f60999295fe773feded022cfa0bfa9f8bcd7c7bf Mon Sep 17 00:00:00 2001 From: "Addisu Z. Taddese" Date: Sat, 31 Aug 2024 01:59:45 -0500 Subject: [PATCH 19/22] Fix vcs Signed-off-by: Addisu Z. Taddese --- .github/workflows/windows.yaml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/windows.yaml b/.github/workflows/windows.yaml index 5e71e23ad..216190170 100644 --- a/.github/workflows/windows.yaml +++ b/.github/workflows/windows.yaml @@ -47,7 +47,7 @@ jobs: echo CMAKE_CXX_COMPILER_LAUNCHER="$SCCACHE_PATH" >> $GITHUB_ENV - name: Clone source dependencies - run: pixi run vcs import --input https://raw.githubusercontent.com/gazebo-tooling/gazebodistro/master/$PACKAGE.yaml --skip-existing --repos src + run: pixi run vcs import --input https://raw.githubusercontent.com/gazebo-tooling/gazebodistro/master/${env:PACKAGE}.yaml --skip-existing --repos src - name: Build Dependencies run: pixi run ${env:COLCON_BUILD_CMD} -DBUILD_TESTING=OFF --packages-skip ${env:PACKAGE} @@ -56,4 +56,6 @@ jobs: run: pixi run ${env:COLCON_BUILD_CMD} -DBUILD_TESTING=ON -DSKIP_ogre=ON --packages-select ${env:PACKAGE} - name: Test - run: pixi run colcon test --merge-install --event-handlers console_direct+ --packages-select ${env:PACKAGE} + run: | + . install\setup.ps1 + pixi run colcon test --merge-install --event-handlers console_direct+ --packages-select ${env:PACKAGE} From 472e96d9255206922ceff301ed5446b6d0c8c1a9 Mon Sep 17 00:00:00 2001 From: "Addisu Z. Taddese" Date: Sat, 31 Aug 2024 02:10:29 -0500 Subject: [PATCH 20/22] More cleanup Signed-off-by: Addisu Z. Taddese --- .github/workflows/windows.yaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/windows.yaml b/.github/workflows/windows.yaml index 216190170..dd9cb5b44 100644 --- a/.github/workflows/windows.yaml +++ b/.github/workflows/windows.yaml @@ -47,15 +47,15 @@ jobs: echo CMAKE_CXX_COMPILER_LAUNCHER="$SCCACHE_PATH" >> $GITHUB_ENV - name: Clone source dependencies - run: pixi run vcs import --input https://raw.githubusercontent.com/gazebo-tooling/gazebodistro/master/${env:PACKAGE}.yaml --skip-existing --repos src + run: vcs import --input https://raw.githubusercontent.com/gazebo-tooling/gazebodistro/master/${env:PACKAGE}.yaml --skip-existing --repos src - name: Build Dependencies - run: pixi run ${env:COLCON_BUILD_CMD} -DBUILD_TESTING=OFF --packages-skip ${env:PACKAGE} + run: ${env:COLCON_BUILD_CMD} -DBUILD_TESTING=OFF --packages-skip ${env:PACKAGE} - name: Build Package - run: pixi run ${env:COLCON_BUILD_CMD} -DBUILD_TESTING=ON -DSKIP_ogre=ON --packages-select ${env:PACKAGE} + run: ${env:COLCON_BUILD_CMD} -DBUILD_TESTING=ON -DSKIP_ogre=ON --packages-select ${env:PACKAGE} - name: Test run: | . install\setup.ps1 - pixi run colcon test --merge-install --event-handlers console_direct+ --packages-select ${env:PACKAGE} + colcon test --merge-install --event-handlers console_direct+ --packages-select ${env:PACKAGE} From f07994ea1608e57a1147a60f468afb9c0b23a329 Mon Sep 17 00:00:00 2001 From: "Addisu Z. Taddese" Date: Sat, 31 Aug 2024 02:26:46 -0500 Subject: [PATCH 21/22] Debug msg Signed-off-by: Addisu Z. Taddese --- src/RenderEngineManager.cc | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/RenderEngineManager.cc b/src/RenderEngineManager.cc index 8e3a6f0f4..611c1de2d 100644 --- a/src/RenderEngineManager.cc +++ b/src/RenderEngineManager.cc @@ -473,6 +473,11 @@ bool RenderEngineManagerPrivate::LoadEnginePlugin( { gzerr << "Failed to load plugin [" << _filename << "] : couldn't find shared library." << std::endl; + gzdbg << "Searched in:\n"; + for (const auto &path: systemPaths.FilePaths()){ + gzdbg << path << "\n"; + } + return false; } From b30e42d1b92d69ee71a3b3bbd4b843ac12ec0cb2 Mon Sep 17 00:00:00 2001 From: "Addisu Z. Taddese" Date: Sat, 31 Aug 2024 02:27:30 -0500 Subject: [PATCH 22/22] Fix Signed-off-by: Addisu Z. Taddese --- .github/workflows/windows.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/windows.yaml b/.github/workflows/windows.yaml index dd9cb5b44..cf7e649fa 100644 --- a/.github/workflows/windows.yaml +++ b/.github/workflows/windows.yaml @@ -50,10 +50,10 @@ jobs: run: vcs import --input https://raw.githubusercontent.com/gazebo-tooling/gazebodistro/master/${env:PACKAGE}.yaml --skip-existing --repos src - name: Build Dependencies - run: ${env:COLCON_BUILD_CMD} -DBUILD_TESTING=OFF --packages-skip ${env:PACKAGE} + run: pixi run ${env:COLCON_BUILD_CMD} -DBUILD_TESTING=OFF --packages-skip ${env:PACKAGE} - name: Build Package - run: ${env:COLCON_BUILD_CMD} -DBUILD_TESTING=ON -DSKIP_ogre=ON --packages-select ${env:PACKAGE} + run: pixi run ${env:COLCON_BUILD_CMD} -DBUILD_TESTING=ON -DSKIP_ogre=ON --packages-select ${env:PACKAGE} - name: Test run: |