qemu

Форк
0
/
crossbuild-template.yml 
91 строка · 3.1 Кб
1
.cross_system_build_job:
2
  extends: .base_job_template
3
  stage: build
4
  image: $CI_REGISTRY_IMAGE/qemu/$IMAGE:$QEMU_CI_CONTAINER_TAG
5
  cache:
6
    paths:
7
      - ccache
8
    key: "$CI_JOB_NAME"
9
    when: always
10
  timeout: 80m
11
  before_script:
12
    - cat /packages.txt
13
  script:
14
    - export CCACHE_BASEDIR="$(pwd)"
15
    - export CCACHE_DIR="$CCACHE_BASEDIR/ccache"
16
    - export CCACHE_MAXSIZE="500M"
17
    - export PATH="$CCACHE_WRAPPERSDIR:$PATH"
18
    - mkdir build
19
    - cd build
20
    - ccache --zero-stats
21
    - ../configure --enable-werror --disable-docs --enable-fdt=system
22
        --disable-user $QEMU_CONFIGURE_OPTS $EXTRA_CONFIGURE_OPTS
23
        --target-list-exclude="arm-softmmu cris-softmmu
24
          i386-softmmu microblaze-softmmu mips-softmmu mipsel-softmmu
25
          mips64-softmmu ppc-softmmu riscv32-softmmu sh4-softmmu
26
          sparc-softmmu xtensa-softmmu $CROSS_SKIP_TARGETS"
27
    - make -j$(expr $(nproc) + 1) all check-build $MAKE_CHECK_ARGS
28
    - if grep -q "EXESUF=.exe" config-host.mak;
29
      then make installer;
30
      version="$(git describe --match v[0-9]* 2>/dev/null || git rev-parse --short HEAD)";
31
      mv -v qemu-setup*.exe qemu-setup-${version}.exe;
32
      fi
33
    - ccache --show-stats
34

35
# Job to cross-build specific accelerators.
36
#
37
# Set the $ACCEL variable to select the specific accelerator (default to
38
# KVM), and set extra options (such disabling other accelerators) via the
39
# $EXTRA_CONFIGURE_OPTS variable.
40
.cross_accel_build_job:
41
  extends: .base_job_template
42
  stage: build
43
  image: $CI_REGISTRY_IMAGE/qemu/$IMAGE:$QEMU_CI_CONTAINER_TAG
44
  timeout: 30m
45
  cache:
46
    paths:
47
      - ccache/
48
    key: "$CI_JOB_NAME"
49
  script:
50
    - export CCACHE_BASEDIR="$(pwd)"
51
    - export CCACHE_DIR="$CCACHE_BASEDIR/ccache"
52
    - export CCACHE_MAXSIZE="500M"
53
    - export PATH="$CCACHE_WRAPPERSDIR:$PATH"
54
    - mkdir build
55
    - cd build
56
    - ../configure --enable-werror --disable-docs $QEMU_CONFIGURE_OPTS
57
        --disable-tools --enable-${ACCEL:-kvm} $EXTRA_CONFIGURE_OPTS
58
    - make -j$(expr $(nproc) + 1) all check-build $MAKE_CHECK_ARGS
59

60
.cross_user_build_job:
61
  extends: .base_job_template
62
  stage: build
63
  image: $CI_REGISTRY_IMAGE/qemu/$IMAGE:$QEMU_CI_CONTAINER_TAG
64
  cache:
65
    paths:
66
      - ccache/
67
    key: "$CI_JOB_NAME"
68
  script:
69
    - export CCACHE_BASEDIR="$(pwd)"
70
    - export CCACHE_DIR="$CCACHE_BASEDIR/ccache"
71
    - export CCACHE_MAXSIZE="500M"
72
    - mkdir build
73
    - cd build
74
    - ../configure --enable-werror --disable-docs $QEMU_CONFIGURE_OPTS
75
        --disable-system --target-list-exclude="aarch64_be-linux-user
76
          alpha-linux-user cris-linux-user m68k-linux-user microblazeel-linux-user
77
          or1k-linux-user ppc-linux-user sparc-linux-user
78
          xtensa-linux-user $CROSS_SKIP_TARGETS"
79
    - make -j$(expr $(nproc) + 1) all check-build $MAKE_CHECK_ARGS
80

81
# We can still run some tests on some of our cross build jobs. They can add this
82
# template to their extends to save the build logs and test results
83
.cross_test_artifacts:
84
  artifacts:
85
    name: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG"
86
    when: always
87
    expire_in: 7 days
88
    paths:
89
      - build/meson-logs/testlog.txt
90
    reports:
91
      junit: build/meson-logs/testlog.junit.xml
92

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.