Files
xen/.cirrus.yml
T
Roger Pau Monne c3f5d1bb40 automation/cirrus-ci: introduce FreeBSD randconfig builds
Add a new randconfig job for each FreeBSD version.  This requires some
rework of the template so common parts can be shared between the full and
the randconfig builds.  Such randconfig builds are relevant because FreeBSD
is the only tested system that has a full non-GNU toolchain.

While there replace the usage of the python311 package with python3, which is
already using 3.11, and remove the install of the plain python package for full
builds.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
Release-Acked-by: Oleksii Kurochko<oleksii.kurochko@gmail.com>
2025-01-17 16:00:14 +01:00

70 lines
1.8 KiB
YAML

# https://cirrus-ci.org/guide/tips-and-tricks/#sharing-configuration-between-tasks
freebsd_13: &FREEBSD_13
freebsd_instance:
image_family: freebsd-13-4
freebsd_14: &FREEBSD_14
freebsd_instance:
image_family: freebsd-14-2
freebsd_15: &FREEBSD_15
freebsd_instance:
image_family: freebsd-15-0-snap
freebsd_template: &FREEBSD_ENV
environment:
APPEND_LIB: /usr/local/lib
APPEND_INCLUDES: /usr/local/include
freebsd_full_build_template: &FREEBSD_FULL_BUILD_TEMPLATE
<< : *FREEBSD_ENV
install_script: pkg install -y seabios gmake ninja bash
pkgconf bison perl5
yajl lzo2 pixman argp-standalone
libxml2 glib git python3
build_script:
- cc --version
- ./configure --with-system-seabios=/usr/local/share/seabios/bios.bin
- gmake -j`sysctl -n hw.ncpu` clang=y
freebsd_randconfig_template: &FREEBSD_RANDCONFIG_TEMPLATE
<< : *FREEBSD_ENV
install_script: pkg install -y gmake python3 bison
build_script:
- cc --version
- gmake -j`sysctl -n hw.ncpu` -C xen clang=y \
KCONFIG_ALLCONFIG=tools/kconfig/allrandom.config randconfig
- gmake -j`sysctl -n hw.ncpu` build-xen clang=y
task:
name: 'FreeBSD 13: full build'
<< : *FREEBSD_13
<< : *FREEBSD_FULL_BUILD_TEMPLATE
task:
name: 'FreeBSD 14: full build'
<< : *FREEBSD_14
<< : *FREEBSD_FULL_BUILD_TEMPLATE
task:
name: 'FreeBSD 15: full build'
<< : *FREEBSD_15
<< : *FREEBSD_FULL_BUILD_TEMPLATE
task:
name: 'FreeBSD 13: randconfig'
<< : *FREEBSD_13
<< : *FREEBSD_RANDCONFIG_TEMPLATE
task:
name: 'FreeBSD 14: randconfig'
<< : *FREEBSD_14
<< : *FREEBSD_RANDCONFIG_TEMPLATE
task:
name: 'FreeBSD 15: randconfig'
<< : *FREEBSD_15
<< : *FREEBSD_RANDCONFIG_TEMPLATE