From: Rémi Bernon rbernon@codeweavers.com
--- tools/gitlab/build-linux | 12 +++++++++++- tools/gitlab/build.yml | 22 +++++++++++++++++++++- 2 files changed, 32 insertions(+), 2 deletions(-)
diff --git a/tools/gitlab/build-linux b/tools/gitlab/build-linux index 659ff0a0c17..dbef1410013 100755 --- a/tools/gitlab/build-linux +++ b/tools/gitlab/build-linux @@ -3,7 +3,7 @@ echo "Building $(git log -1)" echo "---"
-set -Eeuxo pipefail +set -Eeux
./tools/make_requests ./tools/make_makefiles @@ -19,6 +19,16 @@ cd build32 make -s -j$(nproc) cd ..
+TESTS="$(git diff --name-only $CI_MERGE_REQUEST_DIFF_BASE_SHA dlls/ programs/ | \ + sed -re 's:^([^/]+/[^/]+).*$:\1/tests:' | sort -u | \ + xargs -r ls -d 2>/dev/null | sed -re 's:/tests$:/tests/check:')" + +if ! test -z "$TESTS" +then + WINEPREFIX=$PWD/.wine64 WINEARCH=win64 make -C build64 -s $TESTS + WINEPREFIX=$PWD/.wine32 WINEARCH=win32 make -C build32 -s $TESTS +fi + if ! test -s .git/rebase-merge/git-rebase-todo then make -s -j$(nproc) -C build32 install-lib install-test DESTDIR=$BASEDIR diff --git a/tools/gitlab/build.yml b/tools/gitlab/build.yml index 6bc253b2c77..9713fcc830c 100644 --- a/tools/gitlab/build.yml +++ b/tools/gitlab/build.yml @@ -6,6 +6,8 @@ interruptible: true variables: GIT_DEPTH: 0 + GECKO_VER: 2.47.3 + MONO_VER: 7.4.0 cache: - paths: - ccache/ @@ -21,8 +23,12 @@ - export CCACHE_DIR="$BASEDIR/ccache" - export CCACHE_COMPILERCHECK=content - export PATH="/usr/lib/ccache:$PATH" - - mkdir -p build32 build64 + - mkdir -p build32 build64 $HOME/.cache/wine - rm -fr .git/rebase-merge # in case a previous CI run failed in git rebase + - rm -fr .wine64 .wine32 + - test -f $HOME/.cache/wine/wine-gecko-$GECKO_VER-x86.msi || curl -o $HOME/.cache/wine/wine-gecko-$GECKO_VER-x86.msi https://dl.winehq.org/wine/wine-gecko/$GECKO_VER/wine-gecko-$GECKO_VER-x86.m... + - test -f $HOME/.cache/wine/wine-gecko-$GECKO_VER-x86_64.msi || curl -o $HOME/.cache/wine/wine-gecko-$GECKO_VER-x86_64.msi https://dl.winehq.org/wine/wine-gecko/$GECKO_VER/wine-gecko-$GECKO_VER-x86_6... + - test -f $HOME/.cache/wine/wine-mono-$MONO_VER-x86.msi || curl -o $HOME/.cache/wine/wine-mono-$MONO_VER-x86.msi https://dl.winehq.org/wine/wine-mono/$MONO_VER/wine-mono-$MONO_VER-x86.msi
build-linux: extends: .wine-build @@ -33,6 +39,20 @@ build-linux: paths: - usr/local/ script: + - export DISPLAY=:0 + - export LC_ALL=C.UTF-8 + - export WINEDEBUG=err-all,fixme-all + - | + cat >$HOME/xorg.conf << EOF + Section "Device" + Identifier "dummy" + Driver "dummy" + VideoRam 32768 + EndSection + EOF + - echo 'exec /usr/bin/fvwm -f config -c "Style * MwmDecor" 2>/dev/null' >$HOME/.xinitrc + - startx -- -config $HOME/xorg.conf $DISPLAY & + - pulseaudio --start --exit-idle-time=-1 - git rebase $CI_MERGE_REQUEST_DIFF_BASE_SHA --exec ./tools/gitlab/build-linux
build-mac: