# random config or default config
if [[ "${RANDCONFIG}" == "y" ]]; then
make -j$(nproc) -C xen KCONFIG_ALLCONFIG=tools/kconfig/allrandom.config randconfig
+ hypervisor_only="y"
else
make -j$(nproc) -C xen defconfig
fi
cfgargs+=("--with-system-seabios=/bin/false")
fi
-./configure "${cfgargs[@]}"
-
-make -j$(nproc) dist
+if [[ "${hypervisor_only}" == "y" ]]; then
+ make -j$(nproc) xen
+else
+ ./configure "${cfgargs[@]}"
+ make -j$(nproc) dist
+fi
# Extract artifacts to avoid getting rewritten by customised builds
cp xen/.config xen-config
mkdir binaries
if [[ "${XEN_TARGET_ARCH}" != "x86_32" ]]; then
cp xen/xen binaries/xen
- cp -r dist binaries/
+ if [[ "${hypervisor_only}" != "y" ]]; then
+ cp -r dist binaries/
+ fi
+fi
+
+if [[ "${hypervisor_only}" == "y" ]]; then
+ # If we are build testing a specific Kconfig exit now, there's no point in
+ # testing all the possible configs.
+ exit 0
fi
# Build all the configs we care about