Skip to content

Commit 8700f88

Browse files
committed
CI: Fix FreeBSD hang
Although it did work at some point, I think that FreeBSD's locking over NFS is a bit unreliable, so we end up with Qt's automoc/autorcc just hanging indefinitely. (some sort of deadlock?) Fix this by building in /tmp inside the VM, and then copying it back to the NFS-synced workspace when we are done.
1 parent bf3fa96 commit 8700f88

1 file changed

Lines changed: 5 additions & 8 deletions

File tree

.github/workflows/build-bsd.yml

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,6 @@ jobs:
2525
include:
2626
- os: freebsd
2727
os_name: FreeBSD
28-
# CMake's autorcc for Qt tries to lock files, so we need to
29-
# start lockd for NFS, otherwise the build will fail.
30-
prepare_vm: service lockd onestart
3128
install_deps: >
3229
pkg install -y cmake kf6-extra-cmake-modules pkgconf ninja
3330
qt6-base qt6-multimedia qt6-svg sdl2 libarchive zstd enet
@@ -91,14 +88,14 @@ jobs:
9188
run: ${{ matrix.install_deps }}
9289

9390
- name: Configure
94-
run: |
95-
cd $GITHUB_WORKSPACE
96-
cmake -B build -G Ninja -DMELONDS_EMBED_BUILD_INFO=ON
91+
run: >
92+
cmake -S $GITHUB_WORKSPACE -B /tmp/build -G Ninja
93+
-DMELONDS_EMBED_BUILD_INFO=ON
9794
9895
- name: Build
9996
run: |
100-
cd $GITHUB_WORKSPACE
101-
cmake --build build
97+
cmake --build /tmp/build
98+
cp -ar /tmp/build $GITHUB_WORKSPACE/build
10299
103100
- name: Upload binary
104101
uses: actions/upload-artifact@v7

0 commit comments

Comments
 (0)