1# All ubuntu-20.04 jobs should run successfully in an environment
2# setup by the scripts/ci/setup/build-environment.yml task
3# "Install basic packages to build QEMU on Ubuntu 20.04/20.04"
4
5ubuntu-20.04-s390x-all-linux-static:
6 needs: []
7 stage: build
8 tags:
9 - ubuntu_20.04
10 - s390x
11 rules:
12 - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
13 - if: "$S390X_RUNNER_AVAILABLE"
14 script:
15 # --disable-libssh is needed because of https://bugs.launchpad.net/qemu/+bug/1838763
16 # --disable-glusterfs is needed because there's no static version of those libs in distro supplied packages
17 - mkdir build
18 - cd build
19 - ../configure --enable-debug --static --disable-system --disable-glusterfs --disable-libssh
20   || { cat config.log meson-logs/meson-log.txt; exit 1; }
21 - make --output-sync -j`nproc`
22 - make --output-sync -j`nproc` check V=1
23   || { cat meson-logs/testlog.txt; exit 1; } ;
24 - make --output-sync -j`nproc` check-tcg V=1
25   || { cat meson-logs/testlog.txt; exit 1; } ;
26
27ubuntu-20.04-s390x-all:
28 needs: []
29 stage: build
30 tags:
31 - ubuntu_20.04
32 - s390x
33 timeout: 75m
34 rules:
35 - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
36 - if: "$S390X_RUNNER_AVAILABLE"
37 script:
38 - mkdir build
39 - cd build
40 - ../configure --disable-libssh
41   || { cat config.log meson-logs/meson-log.txt; exit 1; }
42 - make --output-sync -j`nproc`
43 - make --output-sync -j`nproc` check V=1
44   || { cat meson-logs/testlog.txt; exit 1; } ;
45
46ubuntu-20.04-s390x-alldbg:
47 needs: []
48 stage: build
49 tags:
50 - ubuntu_20.04
51 - s390x
52 rules:
53 - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
54   when: manual
55   allow_failure: true
56 - if: "$S390X_RUNNER_AVAILABLE"
57   when: manual
58   allow_failure: true
59 script:
60 - mkdir build
61 - cd build
62 - ../configure --enable-debug --disable-libssh
63   || { cat config.log meson-logs/meson-log.txt; exit 1; }
64 - make clean
65 - make --output-sync -j`nproc`
66 - make --output-sync -j`nproc` check V=1
67   || { cat meson-logs/testlog.txt; exit 1; } ;
68
69ubuntu-20.04-s390x-clang:
70 needs: []
71 stage: build
72 tags:
73 - ubuntu_20.04
74 - s390x
75 rules:
76 - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
77   when: manual
78   allow_failure: true
79 - if: "$S390X_RUNNER_AVAILABLE"
80   when: manual
81   allow_failure: true
82 script:
83 - mkdir build
84 - cd build
85 - ../configure --disable-libssh --cc=clang --cxx=clang++ --enable-sanitizers
86   || { cat config.log meson-logs/meson-log.txt; exit 1; }
87 - make --output-sync -j`nproc`
88 - make --output-sync -j`nproc` check V=1
89   || { cat meson-logs/testlog.txt; exit 1; } ;
90
91ubuntu-20.04-s390x-tci:
92 needs: []
93 stage: build
94 tags:
95 - ubuntu_20.04
96 - s390x
97 rules:
98 - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
99   when: manual
100   allow_failure: true
101 - if: "$S390X_RUNNER_AVAILABLE"
102   when: manual
103   allow_failure: true
104 script:
105 - mkdir build
106 - cd build
107 - ../configure --disable-libssh --enable-tcg-interpreter
108   || { cat config.log meson-logs/meson-log.txt; exit 1; }
109 - make --output-sync -j`nproc`
110
111ubuntu-20.04-s390x-notcg:
112 needs: []
113 stage: build
114 tags:
115 - ubuntu_20.04
116 - s390x
117 rules:
118 - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
119   when: manual
120   allow_failure: true
121 - if: "$S390X_RUNNER_AVAILABLE"
122   when: manual
123   allow_failure: true
124 script:
125 - mkdir build
126 - cd build
127 - ../configure --disable-libssh --disable-tcg
128   || { cat config.log meson-logs/meson-log.txt; exit 1; }
129 - make --output-sync -j`nproc`
130 - make --output-sync -j`nproc` check V=1
131   || { cat meson-logs/testlog.txt; exit 1; } ;
132