]>
Commit | Line | Data |
---|---|---|
ecac85fe | 1 | .cross_system_build_job: |
e312d1fd | 2 | extends: .base_job_template |
ecac85fe | 3 | stage: build |
d4c7a565 | 4 | image: $CI_REGISTRY_IMAGE/qemu/$IMAGE:$QEMU_CI_CONTAINER_TAG |
2f7350cd DB |
5 | cache: |
6 | paths: | |
7 | - ccache | |
8 | key: "$CI_JOB_NAME" | |
9 | when: always | |
ecac85fe PMD |
10 | timeout: 80m |
11 | script: | |
2f7350cd DB |
12 | - export CCACHE_BASEDIR="$(pwd)" |
13 | - export CCACHE_DIR="$CCACHE_BASEDIR/ccache" | |
14 | - export CCACHE_MAXSIZE="500M" | |
15 | - export PATH="$CCACHE_WRAPPERSDIR:$PATH" | |
ecac85fe PMD |
16 | - mkdir build |
17 | - cd build | |
2f7350cd | 18 | - ccache --zero-stats |
eda2321d TH |
19 | - ../configure --enable-werror --disable-docs --enable-fdt=system |
20 | --disable-user $QEMU_CONFIGURE_OPTS $EXTRA_CONFIGURE_OPTS | |
21 | --target-list-exclude="arm-softmmu cris-softmmu | |
ecac85fe | 22 | i386-softmmu microblaze-softmmu mips-softmmu mipsel-softmmu |
a6235491 | 23 | mips64-softmmu ppc-softmmu riscv32-softmmu sh4-softmmu |
a1f0f368 | 24 | sparc-softmmu xtensa-softmmu $CROSS_SKIP_TARGETS" |
ecac85fe | 25 | - make -j$(expr $(nproc) + 1) all check-build $MAKE_CHECK_ARGS |
8619b5dd GH |
26 | - if grep -q "EXESUF=.exe" config-host.mak; |
27 | then make installer; | |
6340af7a | 28 | version="$(git describe --match v[0-9]* 2>/dev/null || git rev-parse --short HEAD)"; |
8619b5dd GH |
29 | mv -v qemu-setup*.exe qemu-setup-${version}.exe; |
30 | fi | |
2f7350cd | 31 | - ccache --show-stats |
ecac85fe PMD |
32 | |
33 | # Job to cross-build specific accelerators. | |
34 | # | |
35 | # Set the $ACCEL variable to select the specific accelerator (default to | |
36 | # KVM), and set extra options (such disabling other accelerators) via the | |
37 | # $EXTRA_CONFIGURE_OPTS variable. | |
38 | .cross_accel_build_job: | |
e312d1fd | 39 | extends: .base_job_template |
ecac85fe | 40 | stage: build |
d4c7a565 | 41 | image: $CI_REGISTRY_IMAGE/qemu/$IMAGE:$QEMU_CI_CONTAINER_TAG |
ecac85fe | 42 | timeout: 30m |
2f7350cd DB |
43 | cache: |
44 | paths: | |
45 | - ccache/ | |
46 | key: "$CI_JOB_NAME" | |
ecac85fe | 47 | script: |
2f7350cd DB |
48 | - export CCACHE_BASEDIR="$(pwd)" |
49 | - export CCACHE_DIR="$CCACHE_BASEDIR/ccache" | |
50 | - export CCACHE_MAXSIZE="500M" | |
51 | - export PATH="$CCACHE_WRAPPERSDIR:$PATH" | |
ecac85fe PMD |
52 | - mkdir build |
53 | - cd build | |
190973dc | 54 | - ../configure --enable-werror --disable-docs $QEMU_CONFIGURE_OPTS |
ecac85fe PMD |
55 | --disable-tools --enable-${ACCEL:-kvm} $EXTRA_CONFIGURE_OPTS |
56 | - make -j$(expr $(nproc) + 1) all check-build $MAKE_CHECK_ARGS | |
57 | ||
58 | .cross_user_build_job: | |
e312d1fd | 59 | extends: .base_job_template |
ecac85fe | 60 | stage: build |
d4c7a565 | 61 | image: $CI_REGISTRY_IMAGE/qemu/$IMAGE:$QEMU_CI_CONTAINER_TAG |
2f7350cd DB |
62 | cache: |
63 | paths: | |
64 | - ccache/ | |
65 | key: "$CI_JOB_NAME" | |
ecac85fe | 66 | script: |
2f7350cd DB |
67 | - export CCACHE_BASEDIR="$(pwd)" |
68 | - export CCACHE_DIR="$CCACHE_BASEDIR/ccache" | |
69 | - export CCACHE_MAXSIZE="500M" | |
ecac85fe PMD |
70 | - mkdir build |
71 | - cd build | |
190973dc | 72 | - ../configure --enable-werror --disable-docs $QEMU_CONFIGURE_OPTS |
9864b7f8 AB |
73 | --disable-system --target-list-exclude="aarch64_be-linux-user |
74 | alpha-linux-user cris-linux-user m68k-linux-user microblazeel-linux-user | |
75 | nios2-linux-user or1k-linux-user ppc-linux-user sparc-linux-user | |
76 | xtensa-linux-user $CROSS_SKIP_TARGETS" | |
ecac85fe | 77 | - make -j$(expr $(nproc) + 1) all check-build $MAKE_CHECK_ARGS |
1ea5e0b0 AB |
78 | |
79 | # We can still run some tests on some of our cross build jobs. They can add this | |
80 | # template to their extends to save the build logs and test results | |
81 | .cross_test_artifacts: | |
82 | artifacts: | |
83 | name: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG" | |
cef63308 | 84 | when: always |
1ea5e0b0 AB |
85 | expire_in: 7 days |
86 | paths: | |
87 | - build/meson-logs/testlog.txt | |
88 | reports: | |
89 | junit: build/meson-logs/testlog.junit.xml |