ntdll: Conform to Windows 11 behavior in RtlIpv6StringToAddress().
[wine.git] / tools / gitlab / build.yml
blob12ffe86dd6214db9083c8d0e4f94b72deaa08c62
1 # CI script for building Wine
3 .wine-build:
4   stage: build
5   image: $CI_REGISTRY/wine/wine:debian-bullseye
6   interruptible: true
7   variables:
8     GIT_DEPTH: 0
9   cache:
10     - paths:
11         - ccache/
12     - key:
13         files:
14           - configure.ac
15       paths:
16         - build32/config.cache
17         - build64/config.cache
18   before_script:
19     - export BASEDIR="$PWD"
20     - export CCACHE_BASEDIR="$BASEDIR"
21     - export CCACHE_DIR="$BASEDIR/ccache"
22     - export CCACHE_COMPILERCHECK=content
23     - export PATH="/usr/lib/ccache:$PATH"
24     - mkdir -p build32 build64
25     - rm -fr .git/rebase-merge  # in case a previous CI run failed in git rebase
27 build-linux:
28   extends: .wine-build
29   rules:
30     - if: $CI_PIPELINE_SOURCE == 'merge_request_event'
31   artifacts:
32     expire_in: 1 day
33     paths:
34       - usr/local/
35   script:
36     - git rebase $CI_MERGE_REQUEST_DIFF_BASE_SHA --exec ./tools/gitlab/build-linux
38 build-mac:
39   extends: .wine-build
40   rules:
41     - if: $CI_PIPELINE_SOURCE == 'merge_request_event'
42   tags:
43     - mac
44   artifacts:
45     when: on_failure
46     paths:
47       - build64/config.log
48       - build32/config.log
49   script:
50     - export PATH="/usr/local/opt/ccache/libexec:$PATH"
51     - git rebase $CI_MERGE_REQUEST_DIFF_BASE_SHA --exec ./tools/gitlab/build-mac
53 build-daily-linux:
54   extends: .wine-build
55   rules:
56     - if: $CI_PIPELINE_SOURCE == 'trigger' && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
57   artifacts:
58     expire_in: 1 day
59     paths:
60       - usr/local/
61   script:
62     - ./tools/gitlab/build-linux
64 build-winetest:
65   stage: build
66   image: $CI_REGISTRY/wine/wine:debian-bullseye
67   rules:
68     - if: $CI_PIPELINE_SOURCE == 'trigger' && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
69   needs:
70     - job: build-daily-linux
71   variables:
72     GIT_STRATEGY: none
73   artifacts:
74     name: winetest
75     paths:
76       - winetest.exe
77       - winetest64.exe
78   script:
79     - mv usr/local/lib/wine/i386-windows/winetest.exe winetest.exe
80     - mv usr/local/lib/wine/x86_64-windows/winetest.exe winetest64.exe