seabios

Details
Source
FROM scratch AS build
ARG VERSION
COPY --from=stagex/core-busybox . /
COPY --from=stagex/core-gcc . /
COPY --from=stagex/core-binutils . /
COPY --from=stagex/core-make . /
COPY --from=stagex/core-musl . /
COPY --from=stagex/core-python . /
ADD fetch/seabios-${VERSION}.tar.gz .
WORKDIR /seabios-rel-${VERSION}
ADD config.* .
RUN --network=none <<-EOF
	set -ex
	mkdir output
	echo "Stagex ${VERSION}" > .version
	printf " \
	coreboot bios.bin.elf bios-coreboot.bin\n \
	csm Csm16.bin bios-csm.bin\n \
	seabios-128k bios.bin bios.bin\n \
	seabios-256k bios.bin bios-256k.bin\n \
	seabios-microvm bios.bin bios-microvm.bin\n \
	vga-ati vgabios.bin vgabios-ati.bin out/vgabios.bin\n \
	vga-bochs-display vgabios.bin vgabios-bochs-display.bin out/vgabios.bin\n \
	vga-cirrus vgabios.bin vgabios-cirrus.bin out/vgabios.bin\n \
	vga-isavga vgabios.bin vgabios-isavga.bin out/vgabios.bin\n \
	vga-qxl vgabios.bin vgabios-qxl.bin out/vgabios.bin\n \
	vga-ramfb vgabios.bin vgabios-ramfb.bin out/vgabios.bin\n \
	vga-stdvga vgabios.bin vgabios-stdvga.bin out/vgabios.bin\n \
	vga-virtio vgabios.bin vgabios-virtio.bin out/vgabios.bin\n \
	vga-vmware vgabios.bin vgabios-vmware.bin out/vgabios.bin" \
	| while IFS= read -r line; do
		set -- $line;
		config_name="$1";
		output_name="$2";
		binary_name="$3";
		build_target="$4";
		make clean distclean;
		cp "config.${config_name}" .config;
		make oldnoconfig V=1;
		make V=1 EXTRAVERSION=-1 PYTHON=python3 $build_target
		cp "out/${output_name}" "output/${binary_name}"
	done
	install -vDm 644 output/*.bin -t /rootfs/usr/share/qemu/
EOF
FROM stagex/core-filesystem AS package
COPY --from=build /rootfs/ /