[dia/zbrown/msys-ci] ci: add msys job



commit c127b7278fa0d9d93e8f64a14bd20d211d219b09
Author: Zander Brown <zbrown gnome org>
Date:   Tue Sep 17 17:21:56 2019 +0100

    ci: add msys job
    
    Cargo culted from gtk

 .gitlab-ci.yml     | 21 +++++++++++++++++++++
 .gitlab-ci/msys.sh | 44 ++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 65 insertions(+)
---
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index db1bc911..55897abd 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,5 +1,9 @@
 include: 'https://gitlab.gnome.org/GNOME/citemplates/raw/master/flatpak/flatpak_ci_initiative.yml'
 
+.cache-paths: &cache-paths
+  paths:
+    - _ccache/
+
 variables:
     BUNDLE: "dia-dev.flatpak"
     GIT_SUBMODULE_STRATEGY: recursive
@@ -23,3 +27,20 @@ review:
 stop_review:
     stage: deploy
     extends: '.stop_review'
+
+.mingw-defaults: &mingw-defaults
+    stage: build
+    tags:
+        - win32
+    script:
+        - C:\msys64\usr\bin\pacman --noconfirm -Syyuu
+        - C:\msys64\usr\bin\bash -lc "bash -x ./.gitlab-ci/msys2.sh"
+    cache:
+        key: "%CI_JOB_NAME%"
+        <<: *cache-paths
+
+msys2-mingw32:
+    variables:
+        MSYSTEM: "MINGW32"
+        CHERE_INVOKING: "yes"
+    <<: *mingw-defaults
diff --git a/.gitlab-ci/msys.sh b/.gitlab-ci/msys.sh
new file mode 100644
index 00000000..ebcd092e
--- /dev/null
+++ b/.gitlab-ci/msys.sh
@@ -0,0 +1,44 @@
+#!/bin/bash
+
+set -e
+
+if [[ "$MSYSTEM" == "MINGW32" ]]; then
+    export MSYS2_ARCH="i686"
+else
+    export MSYS2_ARCH="x86_64"
+fi
+
+# Update everything
+pacman --noconfirm -Suy
+
+# Install the required packages
+pacman --noconfirm -S --needed \
+    base-devel \
+    git \
+    mingw-w64-$MSYS2_ARCH-toolchain \
+    mingw-w64-$MSYS2_ARCH-ccache \
+    mingw-w64-$MSYS2_ARCH-pkg-config \
+    mingw-w64-$MSYS2_ARCH-gobject-introspection \
+    mingw-w64-$MSYS2_ARCH-meson \
+    mingw-w64-$MSYS2_ARCH-adwaita-icon-theme \
+    mingw-w64-$MSYS2_ARCH-atk \
+    mingw-w64-$MSYS2_ARCH-cairo \
+    mingw-w64-$MSYS2_ARCH-gdk-pixbuf2 \
+    mingw-w64-$MSYS2_ARCH-glib2 \
+    mingw-w64-$MSYS2_ARCH-pango \
+    mingw-w64-$MSYS2_ARCH-shared-mime-info \
+    mingw-w64-$MSYS2_ARCH-gtk2
+
+mkdir -p _ccache
+export CCACHE_BASEDIR="$(pwd)"
+export CCACHE_DIR="${CCACHE_BASEDIR}/_ccache"
+
+# Build
+ccache --zero-stats
+ccache --show-stats
+export CCACHE_DISABLE=true
+meson _build
+unset CCACHE_DISABLE
+
+ninja -C _build
+ccache --show-stats


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