When running inside a QEMU microvm with the source directory shared via 9pfs, the kernel build process fails > Error: Could not mmap file: vmlinux Thus, we need to run the build in a path on a local filesystem. To support this, the Makefile now supports an `O` option, and all the build scripts have been adjusted to make use of it as needed. Since building in a local filesystem would ultimately discard the final artifacts when the VM terminates, we need yet a different location for the files we want to keep. The `IMAGESDIR` option can be used to specify this path. This path can be on a shared filesystem, thus saving the artifacts outside the microvm.
41 lines
551 B
INI
41 lines
551 B
INI
# vim: set sw=4 ts=4 sts=4 :
|
|
|
|
image firmware.img {
|
|
vfat {
|
|
}
|
|
|
|
srcpath = "efi-part"
|
|
size = 32M
|
|
}
|
|
|
|
image sdcard.img {
|
|
hdimage {
|
|
partition-table-type = hybrid
|
|
}
|
|
|
|
partition "EFI System Partition" {
|
|
partition-type = 0xC
|
|
partition-type-uuid = "U"
|
|
bootable = true
|
|
image = "firmware.img"
|
|
}
|
|
|
|
partition rootfs-a {
|
|
partition-type-uuid = "L"
|
|
image = "rootfs.squashfs"
|
|
size = 512M
|
|
}
|
|
|
|
partition rootfs-b {
|
|
partition-type-uuid = "L"
|
|
size = 512M
|
|
}
|
|
|
|
partition dch-data {
|
|
partition-type-uuid = "L"
|
|
autoresize = true
|
|
}
|
|
|
|
size = 4G
|
|
}
|