aboutsummaryrefslogtreecommitdiff
path: root/tools/boot/full-test.sh
diff options
context:
space:
mode:
Diffstat (limited to 'tools/boot/full-test.sh')
-rw-r--r--tools/boot/full-test.sh31
1 files changed, 18 insertions, 13 deletions
diff --git a/tools/boot/full-test.sh b/tools/boot/full-test.sh
index 370088f120bb..1160861316dc 100644
--- a/tools/boot/full-test.sh
+++ b/tools/boot/full-test.sh
@@ -51,9 +51,11 @@ case $(uname) in
else
die "Can't find the make wrapper"
fi
+ qemu_bin=/opt/homebrew/bin
;;
FreeBSD)
MAKE=make
+ qemu_bin=/usr/local/bin
;;
# linux) not yet
*)
@@ -71,12 +73,6 @@ MTREE=$(SHELL="which mtree" ${MAKE} ${DEFARCH} buildenv | tail -1) || die "No mt
# MAKE=$(SHELL="which make" ${MAKE} ${DEFARCH} buildenv | tail -1) || die "No make, try buildworld first"
-# hack -- I have extra junk in my qemu, but it's not needed to recreate things
-if [ $(whoami) = imp ]; then
- qemu_bin=/home/imp/git/qemu/00-build
-else
- qemu_bin=/usr/local/bin
-fi
# All the architectures under test
# Note: we can't yet do armv7 because we don't have a good iso for it and would
@@ -163,9 +159,8 @@ make_minimal_freebsd_tree()
# Pretend we don't have a separate /usr
ln -s . ${dir}/usr
# snag the binaries for my simple /etc/rc file
- tar -C ${dir} -xf ${CACHE}/$file sbin/reboot sbin/halt sbin/init bin/sh sbin/sysctl \
- lib/libncursesw.so.9 lib/libc.so.7 lib/libedit.so.8 libexec/ld-elf.so.1
-
+ tar -C ${dir} -xf ${CACHE}/$file sbin/fastboot sbin/reboot sbin/halt sbin/init bin/sh sbin/sysctl \
+ lib/libtinfow.so.9 lib/libncursesw.so.9 lib/libc.so.7 lib/libedit.so.8 libexec/ld-elf.so.1
# My simple etc/rc
cat > ${dir}/etc/rc <<EOF
#!/bin/sh
@@ -213,6 +208,10 @@ autoboot_delay=2
zfs_load="YES"
boot_verbose=yes
kern.cfg.order="acpi,fdt"
+boot_serial="YES"
+hw.uart.console="io:1016,br:115200"
+vfs.root.mountfrom="ufs:/dev/ufs/root"
+vfs.root.mountfrom.options="rw"
EOF
}
@@ -366,7 +365,7 @@ make_linuxboot_scripts()
if [ ${bios_code} -ot /usr/local/share/qemu/edk2-x86_64-code.fd ]; then
cp /usr/local/share/qemu/edk2-x86_64-code.fd ${bios_code}
# vars file works on both 32 and 64 bit x86
- cp /usr/local/share/qemu/edk2-i386-vars.fd ${bios_vars}
+# cp /usr/local/share/qemu/edk2-i386-vars.fd ${bios_vars}
fi
;;
aarch64)
@@ -448,7 +447,8 @@ EOF
make_freebsd_esps()
{
# At the moment, we have just three (armv7 could also be here too, but we're not doing that)
- for a in amd64:amd64 arm64:aarch64 riscv:riscv64; do
+# for a in amd64:amd64 arm64:aarch64 riscv:riscv64; do
+ for a in amd64:amd64 arm64:aarch64; do
m=${a%%:*}
ma=${a##*:}
ma_combo="${m}"
@@ -470,7 +470,8 @@ make_freebsd_images()
{
# ESP variant: In this variant, riscv, amd64 and arm64 are created more or
# less the same way. UEFI + ACPI implementations
- for a in amd64:amd64 arm64:aarch64 riscv:riscv64; do
+# for a in amd64:amd64 arm64:aarch64 riscv:riscv64; do
+ for a in amd64:amd64 arm64:aarch64; do
m=${a%%:*}
ma=${a##*:}
ma_combo="${m}"
@@ -495,6 +496,7 @@ EOF
set -x
+if false; then
# BIOS i386
a=i386:i386
m=${a%%:*}
@@ -541,6 +543,7 @@ EOF
-p freebsd-boot:=${dir2}/boot/boot1.hfs \
-p freebsd-ufs:=${ufs} \
-o ${img}
+fi
set +x
}
@@ -562,7 +565,7 @@ make_freebsd_scripts()
if [ ${bios_code} -ot /usr/local/share/qemu/edk2-x86_64-code.fd ]; then
cp /usr/local/share/qemu/edk2-x86_64-code.fd ${bios_code}
# vars file works on both 32 and 64 bit x86
- cp /usr/local/share/qemu/edk2-i386-vars.fd ${bios_vars}
+# cp /usr/local/share/qemu/edk2-i386-vars.fd ${bios_vars}
fi
;;
aarch64)
@@ -609,6 +612,7 @@ EOF
esac
done
+if false; then
set -x
a=powerpc:powerpc
m=${a%%:*}
@@ -644,6 +648,7 @@ ${qemu_bin}/qemu-system-i386 -m 1g \\
-monitor telnet::4444,server,nowait \\
-serial stdio \$*
EOF
+fi
}
# The smallest FAT32 filesystem is 33292 KB