xref: /openbmc/qemu/.gitlab-ci.d/crossbuilds.yml (revision 4c4465ff)
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="arm-softmmu cris-softmmu i386-softmmu
11          microblaze-softmmu mips-softmmu mipsel-softmmu mips64-softmmu
12          ppc-softmmu sh4-softmmu xtensa-softmmu"
13    - make -j$(expr $(nproc) + 1) all check-build $MAKE_CHECK_ARGS
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 $MAKE_CHECK_ARGS
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-i386-system:
73  extends: .cross_system_build_job
74  variables:
75    IMAGE: fedora-i386-cross
76    MAKE_CHECK_ARGS: check-qtest
77
78cross-i386-user:
79  extends: .cross_user_build_job
80  variables:
81    IMAGE: fedora-i386-cross
82    MAKE_CHECK_ARGS: check
83
84cross-mips-system:
85  extends: .cross_system_build_job
86  variables:
87    IMAGE: debian-mips-cross
88
89cross-mips-user:
90  extends: .cross_user_build_job
91  variables:
92    IMAGE: debian-mips-cross
93
94cross-mipsel-system:
95  extends: .cross_system_build_job
96  variables:
97    IMAGE: debian-mipsel-cross
98
99cross-mipsel-user:
100  extends: .cross_user_build_job
101  variables:
102    IMAGE: debian-mipsel-cross
103
104cross-mips64el-system:
105  extends: .cross_system_build_job
106  variables:
107    IMAGE: debian-mips64el-cross
108
109cross-mips64el-user:
110  extends: .cross_user_build_job
111  variables:
112    IMAGE: debian-mips64el-cross
113
114cross-ppc64el-system:
115  extends: .cross_system_build_job
116  variables:
117    IMAGE: debian-ppc64el-cross
118
119cross-ppc64el-user:
120  extends: .cross_user_build_job
121  variables:
122    IMAGE: debian-ppc64el-cross
123
124cross-s390x-system:
125  extends: .cross_system_build_job
126  variables:
127    IMAGE: debian-s390x-cross
128
129cross-s390x-user:
130  extends: .cross_user_build_job
131  variables:
132    IMAGE: debian-s390x-cross
133
134cross-s390x-kvm-only:
135  extends: .cross_accel_build_job
136  variables:
137    IMAGE: debian-s390x-cross
138    ACCEL_CONFIGURE_OPTS: --disable-tcg
139
140cross-win32-system:
141  extends: .cross_system_build_job
142  variables:
143    IMAGE: fedora-win32-cross
144
145cross-win64-system:
146  extends: .cross_system_build_job
147  variables:
148    IMAGE: fedora-win64-cross
149
150cross-amd64-xen-only:
151  extends: .cross_accel_build_job
152  variables:
153    IMAGE: debian-amd64-cross
154    ACCEL: xen
155    ACCEL_CONFIGURE_OPTS: --disable-tcg --disable-kvm
156
157cross-arm64-xen-only:
158  extends: .cross_accel_build_job
159  variables:
160    IMAGE: debian-arm64-cross
161    ACCEL: xen
162    ACCEL_CONFIGURE_OPTS: --disable-tcg --disable-kvm
163