ci: Fix fedora-mingw64 job
authorNirbheek Chauhan <nirbheek@centricular.com>
Sun, 18 Dec 2022 05:37:43 +0000 (11:07 +0530)
committerNirbheek Chauhan <nirbheek@centricular.com>
Sun, 18 Dec 2022 21:39:11 +0000 (03:09 +0530)
.gitlab-ci.yml

index 1f090b4748506982903f51979466255d972c122e..e6d5ca05e5fe5622f1fbab7eeaa5cef6bdd129c6 100644 (file)
@@ -141,9 +141,20 @@ fedora-mingw64:
     - export PATH="$HOME/.local/bin:$PATH"
     - pip3 install --user meson~=0.64
     - meson subprojects download
-    - mkdir _build && cd _build
-    - mingw64-meson -Dintrospection=disabled -Dgraphene:introspection=disabled
-    - ninja
+      # Test that mingw64-meson still fails. If it has stopped failing, the CI
+      # will fail and now you should remove the hack that follows this.
+    - FAILED=false
+    - mingw64-meson --version || FAILED=true
+    - test $FAILED = false && echo "mingw64-meson works now, remove the hack" && exit 1
+      # HACK: Running mingw64-meson directly fails on the CI with:
+      #  /usr/bin/mingw64-meson: line 92: fg: no job control
+      # Because rpm is not evaluating %__meson and it gets interpreted as a job
+      # specifier. So we fix that and run it ourselves.
+    - rpm --eval "%{mingw64_meson}" > mingw64-meson.sh
+    - sed -i -e 's/%__meson/meson/' mingw64-meson.sh
+    - chmod +x mingw64-meson.sh
+    - ./mingw64-meson.sh -Dintrospection=disabled -Dgraphene:introspection=disabled _build
+    - ninja -C _build
 
 installed-tests:
   extends: .build-fedora-default