summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristoph Reiter <creiter@src.gnome.org>2018-04-11 12:18:55 +0200
committerChristoph Reiter <creiter@src.gnome.org>2018-04-11 15:33:00 +0200
commitc542115906ff2623b157ee540150af91cba82f8e (patch)
tree4f0fcfea3ae136fb8a1ae30c81beb5e3239bc6f1
parentd448be007ee2111794dcd9315a6441c6127c920c (diff)
downloadgtk+-c542115906ff2623b157ee540150af91cba82f8e.tar.gz
gitlab-ci: Reenable ccache but disable it during the initial meson call
There where some problems (??) with ccache not detecting changes during meson checks. Setting CCACHE_DISABLE during the meson execution makes ccache not use the cache and pass things directly to the compiler.
-rw-r--r--.gitlab-ci.yml28
-rwxr-xr-x.gitlab-ci/test-docker.sh9
-rw-r--r--.gitlab-ci/test-msys2.sh10
3 files changed, 36 insertions, 11 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index bbabf994af..5c1580ca87 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -2,25 +2,28 @@ stages:
- build
- flatpak
-gtk:
+.cache-paths: &cache-paths
+ paths:
+ - _ccache/
+ - subprojects/gdk-pixbuf/
+ - subprojects/glib/
+ - subprojects/graphene/
+ - subprojects/libepoxy/
+ - subprojects/pango/
+
+fedora-x86_64:
image: ebassi/gitlab-gtk:latest
stage: build
- before_script:
- - export CCACHE_DISABLE=true_
script:
- bash -x ./.gitlab-ci/test-docker.sh
- cache:
- paths:
- - subprojects/gdk-pixbuf/
- - subprojects/glib/
- - subprojects/graphene/
- - subprojects/libepoxy/
- - subprojects/pango/
artifacts:
when: on_failure
name: "gtk-${CI_COMMIT_REF_NAME}"
paths:
- "${CI_PROJECT_DIR}/_build/meson-logs"
+ cache:
+ key: "$CI_JOB_NAME"
+ <<: *cache-paths
.mingw-defaults: &mingw-defaults
stage: build
@@ -29,8 +32,11 @@ gtk:
script:
- C:\msys64\usr\bin\pacman --noconfirm -Syyuu
- C:\msys64\usr\bin\bash -lc "bash -x ./.gitlab-ci/test-msys2.sh"
+ cache:
+ key: "%CI_JOB_NAME%"
+ <<: *cache-paths
-mingw32:
+msys2-mingw32:
variables:
MSYSTEM: "MINGW32"
CHERE_INVOKING: "yes"
diff --git a/.gitlab-ci/test-docker.sh b/.gitlab-ci/test-docker.sh
index 48b22d25ca..47cb9e9daf 100755
--- a/.gitlab-ci/test-docker.sh
+++ b/.gitlab-ci/test-docker.sh
@@ -4,16 +4,25 @@ set -e
srcdir=$(pwd)
+mkdir -p _ccache
+export CCACHE_BASEDIR="$(pwd)"
+export CCACHE_DIR="${CCACHE_BASEDIR}/_ccache"
+
+ccache --zero-stats
+ccache --show-stats
+export CCACHE_DISABLE=true
meson \
-Dx11-backend=true \
-Dwayland-backend=true \
-Dbroadway-backend=true \
-Dvulkan=yes \
_build $srcdir
+unset CCACHE_DISABLE
cd _build
ninja
+ccache --show-stats
xvfb-run -a -s "-screen 0 1024x768x24" \
meson test \
diff --git a/.gitlab-ci/test-msys2.sh b/.gitlab-ci/test-msys2.sh
index da0599ad4b..aacc88d048 100644
--- a/.gitlab-ci/test-msys2.sh
+++ b/.gitlab-ci/test-msys2.sh
@@ -16,6 +16,7 @@ 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 \
@@ -32,11 +33,20 @@ pacman --noconfirm -S --needed \
mingw-w64-$MSYS2_ARCH-gst-plugins-bad \
mingw-w64-$MSYS2_ARCH-shared-mime-info
+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 \
-Denable-x11-backend=false \
-Denable-wayland-backend=false \
-Denable-win32-backend=true \
_build
+unset CCACHE_DISABLE
ninja -C _build
+ccache --show-stats