From: Christoph Reiter Date: Wed, 11 Apr 2018 10:18:55 +0000 (+0200) Subject: gitlab-ci: Reenable ccache but disable it during the initial meson call X-Git-Tag: archive/raspbian/4.4.1+ds1-2+rpi1^2~18^2~22^2~526^2 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=c542115906ff2623b157ee540150af91cba82f8e;p=gtk4.git 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. --- 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