xref: /openbmc/qemu/.gitlab-ci.d/crossbuilds.yml (revision 0d0f2a45)
1.cross_system_build_job:
2  stage: build
3  image: $CI_REGISTRY_IMAGE/qemu/$IMAGE:latest
4  timeout: 80m
5  script:
6    - mkdir build
7    - cd build
8    - PKG_CONFIG_PATH=$PKG_CONFIG_PATH
9      ../configure --enable-werror $QEMU_CONFIGURE_OPTS --disable-user
10        --target-list-exclude="aarch64-softmmu i386-softmmu microblaze-softmmu
11          mips-softmmu mipsel-softmmu mips64-softmmu ppc64-softmmu sh4-softmmu
12          xtensa-softmmu"
13    - make -j$(expr $(nproc) + 1) all check-build
14
15# Job to cross-build specific accelerators.
16#
17# Set the $ACCEL variable to select the specific accelerator (default to
18# KVM), and set extra options (such disabling other accelerators) via the
19# $ACCEL_CONFIGURE_OPTS variable.
20.cross_accel_build_job:
21  stage: build
22  image: $CI_REGISTRY_IMAGE/qemu/$IMAGE:latest
23  timeout: 30m
24  script:
25    - mkdir build
26    - cd build
27    - PKG_CONFIG_PATH=$PKG_CONFIG_PATH
28      ../configure --enable-werror $QEMU_CONFIGURE_OPTS --disable-tools
29        --enable-${ACCEL:-kvm} $ACCEL_CONFIGURE_OPTS
30    - make -j$(expr $(nproc) + 1) all check-build
31
32.cross_user_build_job:
33  stage: build
34  image: $CI_REGISTRY_IMAGE/qemu/$IMAGE:latest
35  script:
36    - mkdir build
37    - cd build
38    - PKG_CONFIG_PATH=$PKG_CONFIG_PATH
39      ../configure --enable-werror $QEMU_CONFIGURE_OPTS --disable-system
40    - make -j$(expr $(nproc) + 1) all check-build
41
42cross-armel-system:
43  extends: .cross_system_build_job
44  variables:
45    IMAGE: debian-armel-cross
46
47cross-armel-user:
48  extends: .cross_user_build_job
49  variables:
50    IMAGE: debian-armel-cross
51
52cross-armhf-system:
53  extends: .cross_system_build_job
54  variables:
55    IMAGE: debian-armhf-cross
56
57cross-armhf-user:
58  extends: .cross_user_build_job
59  variables:
60    IMAGE: debian-armhf-cross
61
62cross-arm64-system:
63  extends: .cross_system_build_job
64  variables:
65    IMAGE: debian-arm64-cross
66
67cross-arm64-user:
68  extends: .cross_user_build_job
69  variables:
70    IMAGE: debian-arm64-cross
71
72cross-mips-system:
73  extends: .cross_system_build_job
74  variables:
75    IMAGE: debian-mips-cross
76
77cross-mips-user:
78  extends: .cross_user_build_job
79  variables:
80    IMAGE: debian-mips-cross
81
82cross-mipsel-system:
83  extends: .cross_system_build_job
84  variables:
85    IMAGE: debian-mipsel-cross
86
87cross-mipsel-user:
88  extends: .cross_user_build_job
89  variables:
90    IMAGE: debian-mipsel-cross
91
92cross-mips64el-system:
93  extends: .cross_system_build_job
94  variables:
95    IMAGE: debian-mips64el-cross
96
97cross-mips64el-user:
98  extends: .cross_user_build_job
99  variables:
100    IMAGE: debian-mips64el-cross
101
102cross-ppc64el-system:
103  extends: .cross_system_build_job
104  variables:
105    IMAGE: debian-ppc64el-cross
106
107cross-ppc64el-user:
108  extends: .cross_user_build_job
109  variables:
110    IMAGE: debian-ppc64el-cross
111
112cross-s390x-system:
113  extends: .cross_system_build_job
114  variables:
115    IMAGE: debian-s390x-cross
116
117cross-s390x-user:
118  extends: .cross_user_build_job
119  variables:
120    IMAGE: debian-s390x-cross
121
122cross-s390x-kvm-only:
123  extends: .cross_accel_build_job
124  variables:
125    IMAGE: debian-s390x-cross
126    ACCEL_CONFIGURE_OPTS: --disable-tcg
127
128cross-win32-system:
129  extends: .cross_system_build_job
130  variables:
131    IMAGE: fedora-win32-cross
132
133cross-win64-system:
134  extends: .cross_system_build_job
135  variables:
136    IMAGE: fedora-win64-cross
137
138cross-amd64-xen-only:
139  extends: .cross_accel_build_job
140  variables:
141    IMAGE: debian-amd64-cross
142    ACCEL: xen
143    ACCEL_CONFIGURE_OPTS: --disable-tcg --disable-kvm
144
145cross-arm64-xen-only:
146  extends: .cross_accel_build_job
147  variables:
148    IMAGE: debian-arm64-cross
149    ACCEL: xen
150    ACCEL_CONFIGURE_OPTS: --disable-tcg --disable-kvm
151