[gimp/wip/Jehan/gitlab-ci-win-32-bit: 4/7] gitlab-ci: add native Windows 32-bit build with MSYS2.




commit 15226f1aa430ed52af70073b0971e8c207206820
Author: Jehan <jehan girinstud io>
Date:   Sat May 8 15:05:35 2021 +0200

    gitlab-ci: add native Windows 32-bit build with MSYS2.

 .gitlab-ci.yml                              | 48 +++++++++++++++++++++++++++++
 build/windows/gitlab-ci/build-deps-msys2.sh | 12 ++++++--
 2 files changed, 58 insertions(+), 2 deletions(-)
---
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index c087d4719a..1bae9d05ca 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -242,6 +242,54 @@ gimp-win64-native:
     - _ccache/
   needs: ["deps-win64-native"]
 
+## WINDOWS 32-bit CI (native MSYS2) ##
+
+deps-win32-native:
+  rules:
+    - if: '$CI_COMMIT_TAG == null && $CI_PIPELINE_SOURCE != "schedule"'
+  stage: dependencies
+  variables:
+    MSYSTEM: "MINGW32"
+    CHERE_INVOKING: "yes"
+  tags:
+    - win32-ps
+  cache:
+    paths:
+    - _install/
+  script:
+    - C:\msys64\usr\bin\pacman --noconfirm -Syyuu
+    - C:\msys64\usr\bin\bash -lc "bash -x ./build/windows/gitlab-ci/build-deps-msys2.sh"
+  artifacts:
+    name: "${CI_JOB_NAME}-${CI_COMMIT_REF_SLUG}"
+    when: always
+    expire_in: 2 hours
+    paths:
+      - _install
+  needs: []
+
+gimp-win32-native:
+  rules:
+    - if: '$CI_COMMIT_TAG == null && $CI_PIPELINE_SOURCE != "schedule"'
+  stage: gimp
+  variables:
+    MSYSTEM: "MINGW32"
+    CHERE_INVOKING: "yes"
+  tags:
+    - win32-ps
+  script:
+    - C:\msys64\usr\bin\pacman --noconfirm -Syyuu
+    - C:\msys64\usr\bin\bash -lc "bash -x ./build/windows/gitlab-ci/build-gimp-msys2.sh"
+  artifacts:
+    name: "${CI_JOB_NAME}-${CI_COMMIT_REF_SLUG}"
+    when: always
+    expire_in: 1 day
+    paths:
+    - _install
+  cache:
+    paths:
+    - _ccache/
+  needs: ["deps-win32-native"]
+
 ## WINDOWS 64-bit CI (cross-build crossroad) ##
 
 deps-win64:
diff --git a/build/windows/gitlab-ci/build-deps-msys2.sh b/build/windows/gitlab-ci/build-deps-msys2.sh
index 31d400a956..a7f667ae3b 100644
--- a/build/windows/gitlab-ci/build-deps-msys2.sh
+++ b/build/windows/gitlab-ci/build-deps-msys2.sh
@@ -4,8 +4,14 @@ set -e
 
 if [[ "$MSYSTEM" == "MINGW32" ]]; then
     export MSYS2_ARCH="i686"
+    # vapi build fails on 32-bit, with no error output. Let's just drop
+    # it for this architecture.
+    export BABL_OPTIONS="-Denable-vapi=false"
+    export GEGL_OPTIONS="-Dvapigen=disabled"
 else
     export MSYS2_ARCH="x86_64"
+    export BABL_OPTIONS=""
+    export GEGL_OPTIONS=""
 fi
 
 # Why do we even have to remove these manually? The whole thing is
@@ -59,7 +65,8 @@ git clone --depth=${GIT_DEPTH} https://gitlab.gnome.org/GNOME/gegl.git _gegl
 
 mkdir _babl/_build
 cd _babl/_build
-meson -Dprefix="${GIMP_PREFIX}" -Dwith-docs=false ..
+meson -Dprefix="${GIMP_PREFIX}" -Dwith-docs=false \
+      ${BABL_OPTIONS} ..
 ninja
 ninja install
 
@@ -67,6 +74,7 @@ mkdir ../../_gegl/_build
 cd ../../_gegl/_build
 meson -Dprefix="${GIMP_PREFIX}" -Ddocs=false \
       -Dcairo=enabled -Dumfpack=enabled \
-      -Dopenexr=enabled -Dworkshop=true ..
+      -Dopenexr=enabled -Dworkshop=true \
+      ${GEGL_OPTIONS} ..
 ninja
 ninja install


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]