Skip to content

Commit d2b466a

Browse files
authored
Merge pull request #2552 from mavlink/jonas/fix-dockcross-build
Update dockcross and fix CMAKE_PREFIX_PATH in workflows
2 parents 7015261 + fcb7ce5 commit d2b466a

File tree

1 file changed

+28
-29
lines changed

1 file changed

+28
-29
lines changed

.github/workflows/main.yml

Lines changed: 28 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -32,11 +32,11 @@ jobs:
3232
key: ${{ github.job }}-${{ hashFiles('./third_party/**') }}
3333
- name: disable superbuild on cache hit
3434
if: steps.cache.outputs.cache-hit == 'true'
35-
run: echo "superbuild=-DSUPERBUILD=OFF" >> $GITHUB_ENV && echo "cmake_prefix_path=-DCMAKE_PREFIX_PATH=$(pwd)/build/third_party/install" >> $GITHUB_ENV
35+
run: echo "superbuild=-DSUPERBUILD=OFF" >> $GITHUB_ENV
3636
- name: Install dependencies
3737
run: sudo apt-get update && sudo apt-get install -y lcov python3-future
3838
- name: configure
39-
run: cmake $superbuild $cmake_prefix_path -DCMAKE_BUILD_TYPE=Coverage -DASAN=ON -DWERROR=ON -DENABLE_CPPTRACE=On -Bbuild -H.
39+
run: cmake $superbuild -DCMAKE_PREFIX_PATH=$(pwd)/build/third_party/install -DCMAKE_BUILD_TYPE=Coverage -DASAN=ON -DWERROR=ON -DENABLE_CPPTRACE=On -Bbuild -H.
4040
- name: build
4141
run: cmake --build build -j2
4242
- name: unit tests
@@ -118,15 +118,15 @@ jobs:
118118
id: cache
119119
with:
120120
path: ./build/release/third_party/install
121-
key: ${{ github.job }}-${{ matrix.ubuntu_image }}-${{ matrix.cc }}-${{ hashFiles('./third_party/**') }}-1
121+
key: ${{ github.job }}-${{ matrix.ubuntu_image }}-${{ matrix.cc }}-${{ hashFiles('./third_party/**') }}
122122
- name: disable superbuild on cache hit
123123
if: steps.cache.outputs.cache-hit == 'true'
124-
run: echo "superbuild=-DSUPERBUILD=OFF" >> $GITHUB_ENV && echo "cmake_prefix_path=-DCMAKE_PREFIX_PATH=$(pwd)/build/release/third_party/install" >> $GITHUB_ENV
124+
run: echo "superbuild=-DSUPERBUILD=OFF" >> $GITHUB_ENV
125125
- name: configure
126126
run: |
127127
echo "CC=${{ matrix.cc }}" >> $GITHUB_ENV
128128
echo "CXX=${{ matrix.cxx }}" >> $GITHUB_ENV
129-
cmake $superbuild $cmake_prefix_path -DCMAKE_BUILD_TYPE=RelWithDebInfo -DBUILD_MAVSDK_SERVER=ON -DWERROR=ON -DENABLE_CPPTRACE=On -DCMAKE_INSTALL_PREFIX=install -Bbuild/release -H.
129+
cmake $superbuild -DCMAKE_PREFIX_PATH=$(pwd)/build/release/third_party/install -DCMAKE_BUILD_TYPE=RelWithDebInfo -DBUILD_MAVSDK_SERVER=ON -DWERROR=ON -DENABLE_CPPTRACE=On -DCMAKE_INSTALL_PREFIX=install -Bbuild/release -H.
130130
- name: cleanup to save space
131131
run: |
132132
rm -rf ./build/release/third_party/absl
@@ -183,7 +183,7 @@ jobs:
183183
id: cache
184184
with:
185185
path: ~/.hunter
186-
key: ${{ github.job }}-${{ matrix.ubuntu_image }}-${{ hashFiles('~/.hunter/**') }}-2
186+
key: ${{ github.job }}-${{ matrix.ubuntu_image }}-${{ hashFiles('~/.hunter/**') }}
187187
- name: install mavlink on the system
188188
run: |
189189
cmake -Bthird_party/mavlink/build -Sthird_party/mavlink
@@ -213,9 +213,9 @@ jobs:
213213
key: ${{ github.job }}-${{ hashFiles('./third_party/**') }}
214214
- name: disable superbuild on cache hit
215215
if: steps.cache.outputs.cache-hit == 'true'
216-
run: echo "superbuild=-DSUPERBUILD=OFF" >> $GITHUB_ENV && echo "cmake_prefix_path=-DCMAKE_PREFIX_PATH=$(pwd)/build/default/third_party/install" >> $GITHUB_ENV
216+
run: echo "superbuild=-DSUPERBUILD=OFF" >> $GITHUB_ENV
217217
- name: build necessary protoc tooling
218-
run: cmake $superbuild $cmake_prefix_path -DCMAKE_BUILD_TYPE=Debug -DBUILD_MAVSDK_SERVER=ON -DENABLE_CPPTRACE=On -Bbuild/default -H.
218+
run: cmake $superbuild -DCMAKE_PREFIX_PATH=$(pwd)/build/default/third_party/install -DCMAKE_BUILD_TYPE=Debug -DBUILD_MAVSDK_SERVER=ON -DENABLE_CPPTRACE=On -Bbuild/default -H.
219219
- name: generate code from protos
220220
run: PATH="$PATH:$HOME/.local/bin" tools/generate_from_protos.sh
221221
- name: fix style
@@ -304,12 +304,12 @@ jobs:
304304
id: cache
305305
with:
306306
path: ./build/linux-${{ matrix.docker_name }}/third_party/install
307-
key: ${{ github.job }}-linux-${{ matrix.docker_name }}-${{ hashFiles('./third_party/**') }}-6
307+
key: ${{ github.job }}-linux-${{ matrix.docker_name }}-${{ hashFiles('./third_party/**') }}
308308
- name: disable superbuild on cache hit
309309
if: steps.cache.outputs.cache-hit == 'true'
310-
run: echo "superbuild=-DSUPERBUILD=OFF" >> $GITHUB_ENV && echo "cmake_prefix_path=-DCMAKE_PREFIX_PATH=/work/build/linux-${{ matrix.docker_name }}/third_party/install" >> $GITHUB_ENV
310+
run: echo "superbuild=-DSUPERBUILD=OFF" >> $GITHUB_ENV
311311
- name: configure
312-
run: ./dockcross-linux-${{ matrix.docker_name }}-custom /bin/bash -c "cmake $superbuild $cmake_prefix_path -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=build/linux-${{ matrix.docker_name }}/install -DBUILD_MAVSDK_SERVER=OFF -DBUILD_SHARED_LIBS=ON -DWERROR=ON -Bbuild/linux-${{ matrix.docker_name }} -H."
312+
run: ./dockcross-linux-${{ matrix.docker_name }}-custom /bin/bash -c "cmake $superbuild -DCMAKE_PREFIX_PATH=/work/build/linux-${{ matrix.docker_name }}/third_party/install -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=build/linux-${{ matrix.docker_name }}/install -DBUILD_MAVSDK_SERVER=OFF -DBUILD_SHARED_LIBS=ON -DWERROR=ON -Bbuild/linux-${{ matrix.docker_name }} -H."
313313
- name: build
314314
run: ./dockcross-linux-${{ matrix.docker_name }}-custom cmake --build build/linux-${{ matrix.docker_name }} -j2 --target install
315315
- name: create deb packages
@@ -347,12 +347,12 @@ jobs:
347347
id: cache
348348
with:
349349
path: ./build/release/third_party/install
350-
key: ${{ github.job }}-${{ hashFiles('./third_party/**') }}-1
350+
key: ${{ github.job }}-${{ hashFiles('./third_party/**') }}
351351
- name: disable superbuild on cache hit
352352
if: steps.cache.outputs.cache-hit == 'true'
353-
run: echo "superbuild=-DSUPERBUILD=OFF" >> $GITHUB_ENV && echo "cmake_prefix_path=-DCMAKE_PREFIX_PATH=$(pwd)/build/release/third_party/install" >> $GITHUB_ENV
353+
run: echo "superbuild=-DSUPERBUILD=OFF" >> $GITHUB_ENV
354354
- name: configure
355-
run: cmake $superbuild $cmake_prefix_path -DCMAKE_BUILD_TYPE=Release -DBUILD_MAVSDK_SERVER=ON -DBUILD_SHARED_LIBS=OFF -DBUILD_STATIC_MAVSDK_SERVER=ON -DCMAKE_INSTALL_PREFIX=install -DWERROR=ON -DENABLE_CPPTRACE=On -Bbuild/release -H.
355+
run: cmake $superbuild -DCMAKE_PREFIX_PATH=$(pwd)/build/release/third_party/install -DCMAKE_BUILD_TYPE=Release -DBUILD_MAVSDK_SERVER=ON -DBUILD_SHARED_LIBS=OFF -DBUILD_STATIC_MAVSDK_SERVER=ON -DCMAKE_INSTALL_PREFIX=install -DWERROR=ON -DENABLE_CPPTRACE=On -Bbuild/release -H.
356356
- name: build
357357
run: cmake --build build/release --target install -- -j2
358358
- name: unit tests
@@ -389,17 +389,17 @@ jobs:
389389
with:
390390
submodules: recursive
391391
- name: setup dockcross
392-
run: docker run --rm dockcross/${{ matrix.arch_name }}:20250109-7bf589c > ./dockcross-${{ matrix.arch_name }}; chmod +x ./dockcross-${{ matrix.arch_name }}
392+
run: docker run --rm dockcross/${{ matrix.arch_name }}:20250311-4bd0eec > ./dockcross-${{ matrix.arch_name }}; chmod +x ./dockcross-${{ matrix.arch_name }}
393393
- uses: actions/cache@v4
394394
id: cache
395395
with:
396396
path: ./build/${{ matrix.arch_name }}/third_party/install
397397
key: ${{ github.job }}-${{ matrix.arch_name }}-${{ hashFiles('./third_party/**') }}
398398
- name: disable superbuild on cache hit
399399
if: steps.cache.outputs.cache-hit == 'true'
400-
run: echo "superbuild=-DSUPERBUILD=OFF" >> $GITHUB_ENV && echo "cmake_prefix_path=-DCMAKE_PREFIX_PATH=/work/build/${{ matrix.arch_name }}/third_party/install" >> $GITHUB_ENV
400+
run: echo "superbuild=-DSUPERBUILD=OFF" >> $GITHUB_ENV
401401
- name: configure
402-
run: ./dockcross-${{ matrix.arch_name }} /bin/bash -c "cmake $superbuild $cmake_prefix_path -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=build/${{ matrix.arch_name }}/install -DBUILD_MAVSDK_SERVER=ON -DBUILD_SHARED_LIBS=OFF -DBUILD_STATIC_MAVSDK_SERVER=ON -DWERROR=ON -Bbuild/${{ matrix.arch_name }} -H."
402+
run: ./dockcross-${{ matrix.arch_name }} /bin/bash -c "cmake $superbuild -DCMAKE_PREFIX_PATH=/work/build/${{ matrix.arch_name }}/third_party/install -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=build/${{ matrix.arch_name }}/install -DBUILD_MAVSDK_SERVER=ON -DBUILD_SHARED_LIBS=OFF -DBUILD_STATIC_MAVSDK_SERVER=ON -DWERROR=ON -Bbuild/${{ matrix.arch_name }} -H."
403403
- name: build
404404
run: ./dockcross-${{ matrix.arch_name }} cmake --build build/${{ matrix.arch_name }} -j2 --target install
405405
- name: Publish artefacts
@@ -432,17 +432,17 @@ jobs:
432432
with:
433433
submodules: recursive
434434
- name: setup dockcross
435-
run: docker run --rm dockcross/${{ matrix.name }}:20250109-7bf589c > ./dockcross-${{ matrix.name }}; chmod +x ./dockcross-${{ matrix.name }}
435+
run: docker run --rm dockcross/${{ matrix.name }}:20250311-4bd0eec > ./dockcross-${{ matrix.name }}; chmod +x ./dockcross-${{ matrix.name }}
436436
- uses: actions/cache@v4
437437
id: cache
438438
with:
439439
path: ./build/${{ matrix.name }}/third_party/install
440440
key: ${{ github.job }}-${{ matrix.name }}-${{ hashFiles('./third_party/**') }}
441441
- name: disable superbuild on cache hit
442442
if: steps.cache.outputs.cache-hit == 'true'
443-
run: echo "superbuild=-DSUPERBUILD=OFF" >> $GITHUB_ENV && echo "cmake_prefix_path=-DCMAKE_PREFIX_PATH=/work/build/${{ matrix.name }}/third_party/install" >> $GITHUB_ENV
443+
run: echo "superbuild=-DSUPERBUILD=OFF" >> $GITHUB_ENV
444444
- name: configure
445-
run: ./dockcross-${{ matrix.name }} /bin/bash -c "cmake $superbuild $cmake_prefix_path -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=build/${{ matrix.name }}/install -DBUILD_MAVSDK_SERVER=ON -DBUILD_SHARED_LIBS=OFF -DWERROR=ON -Bbuild/${{ matrix.name }} -H."
445+
run: ./dockcross-${{ matrix.name }} /bin/bash -c "cmake $superbuild -DCMAKE_PREFIX_PATH=/work/build/${{ matrix.name }}/third_party/install -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=build/${{ matrix.name }}/install -DBUILD_MAVSDK_SERVER=ON -DBUILD_SHARED_LIBS=OFF -DWERROR=ON -Bbuild/${{ matrix.name }} -H."
446446
- name: build
447447
run: ./dockcross-${{ matrix.name }} cmake --build build/${{ matrix.name }} -j2 --target install
448448
- name: create tar with header and library
@@ -493,14 +493,14 @@ jobs:
493493
id: cache
494494
with:
495495
path: ./build/macos/third_party/install
496-
key: ${{ github.job }}-${{ matrix.name }}-${{ hashFiles('./third_party/**') }}-1
496+
key: ${{ github.job }}-${{ matrix.name }}-${{ hashFiles('./third_party/**') }}
497497
- name: disable superbuild on cache hit
498498
if: steps.cache.outputs.cache-hit == 'true'
499-
run: echo "superbuild=-DSUPERBUILD=OFF" >> $GITHUB_ENV && echo "cmake_prefix_path=-DCMAKE_PREFIX_PATH=$(pwd)/build/macos/third_party/install" >> $GITHUB_ENV
499+
run: echo "superbuild=-DSUPERBUILD=OFF" >> $GITHUB_ENV
500500
- name: set SDKROOT value
501501
run: echo "SDKROOT=$(xcrun --sdk macosx --show-sdk-path)" >> $GITHUB_ENV
502502
- name: configure
503-
run: cmake $superbuild $cmake_prefix_path -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=build/macos/install -DBUILD_MAVSDK_SERVER=ON -DBUILD_SHARED_LIBS=OFF -DMACOS_FRAMEWORK=${{ matrix.build-framework }} -DWERROR=ON -DENABLE_CPPTRACE=On -Bbuild/macos -H.
503+
run: cmake $superbuild -DCMAKE_PREFIX_PATH=$(pwd)/build/macos/third_party/install -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=build/macos/install -DBUILD_MAVSDK_SERVER=ON -DBUILD_SHARED_LIBS=OFF -DMACOS_FRAMEWORK=${{ matrix.build-framework }} -DWERROR=ON -DENABLE_CPPTRACE=On -Bbuild/macos -H.
504504
- name: build
505505
run: cmake --build build/macos -j2 --target install
506506
- name: unit tests
@@ -566,10 +566,10 @@ jobs:
566566
id: cache
567567
with:
568568
path: ./build/${{ matrix.name }}/third_party/install
569-
key: ${{ github.job }}-${{ matrix.name }}-${{ hashFiles('./third_party/**', './tools/ios.toolchain.cmake') }}-1
569+
key: ${{ github.job }}-${{ matrix.name }}-${{ hashFiles('./third_party/**', './tools/ios.toolchain.cmake') }}
570570
- name: disable superbuild on cache hit
571571
if: steps.cache.outputs.cache-hit == 'true'
572-
run: echo "superbuild=-DSUPERBUILD=OFF" >> $GITHUB_ENV && echo "cmake_prefix_path=-DCMAKE_PREFIX_PATH=$(pwd)/build/${{ matrix.name }}/third_party/install" >> $GITHUB_ENV
572+
run: echo "superbuild=-DSUPERBUILD=OFF" >> $GITHUB_ENV
573573
- name: set SDK-related environment variables (for non-cmake deps)
574574
run: |
575575
echo "SDKROOT=$(xcrun --sdk ${{ matrix.sdk }} --show-sdk-path)" >> $GITHUB_ENV
@@ -579,7 +579,7 @@ jobs:
579579
python3 -m pip install wheel
580580
python3 -m pip install future
581581
- name: configure
582-
run: cmake $superbuild $cmake_prefix_path -DENABLE_STRICT_TRY_COMPILE=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_TOOLCHAIN_FILE=$(pwd)/tools/ios.toolchain.cmake -DENABLE_BITCODE=Off -DPLATFORM=${{ matrix.platform }} -DDEPLOYMENT_TARGET=14.0 -DBUILD_MAVSDK_SERVER=ON -DBUILD_SHARED_LIBS=OFF -DWERROR=ON -Bbuild/${{ matrix.name }} -H.
582+
run: cmake $superbuild -DCMAKE_PREFIX_PATH=$(pwd)/build/${{ matrix.name }}/third_party/install -DENABLE_STRICT_TRY_COMPILE=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_TOOLCHAIN_FILE=$(pwd)/tools/ios.toolchain.cmake -DENABLE_BITCODE=Off -DPLATFORM=${{ matrix.platform }} -DDEPLOYMENT_TARGET=14.0 -DBUILD_MAVSDK_SERVER=ON -DBUILD_SHARED_LIBS=OFF -DWERROR=ON -Bbuild/${{ matrix.name }} -H.
583583
- name: build
584584
run: cmake --build build/${{ matrix.name }} -j$(nproc)
585585
- uses: actions/upload-artifact@v4
@@ -655,18 +655,17 @@ jobs:
655655
id: cache
656656
with:
657657
path: ./build/release/third_party/install
658-
key: ${{ github.job }}-${{ hashFiles('./third_party/**') }}-4
658+
key: ${{ github.job }}-${{ hashFiles('./third_party/**') }}
659659
- name: disable superbuild on cache hit
660660
if: steps.cache.outputs.cache-hit == 'true'
661661
run: |
662662
echo "superbuild=-DSUPERBUILD=OFF" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
663-
echo "cmake_prefix_path=-DCMAKE_PREFIX_PATH=$(pwd)/build/release/third_party/install" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
664663
- name: install packages
665664
run: |
666665
choco install nasm
667666
echo "C:\Program Files\NASM" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
668667
- name: configure
669-
run: cmake -G "Visual Studio 17 2022" $env:superbuild $env:cmake_prefix_path -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=build/release/install -DBUILD_MAVSDK_SERVER=ON -DBUILD_SHARED_LIBS=OFF -DWERROR=ON -Bbuild/release -S.
668+
run: cmake -G "Visual Studio 17 2022" $env:superbuild -DCMAKE_PREFIX_PATH="$PWD/build/release/third_party/install" -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=build/release/install -DBUILD_MAVSDK_SERVER=ON -DBUILD_SHARED_LIBS=OFF -DWERROR=ON -Bbuild/release -S.
670669
- name: build
671670
run: cmake --build build/release -j2 --config RelWithDebInfo --target install
672671
- name: Create zip file mavsdk libraries

0 commit comments

Comments
 (0)