Add (somewhat speculative) bootable CD support for PAPR/pSeries-type
systems. In principle, FreeBSD should run on at least some of these already, and support for the remainder will hopefully show up eventually, so add this while I'm thinking about it.
This commit is contained in:
parent
6ac75c91b7
commit
2a2fbadf4f
@ -24,6 +24,7 @@
|
||||
# into base-bits-dir as part of making the image.
|
||||
|
||||
if [ "x$1" = "x-b" ]; then
|
||||
# Apple boot code
|
||||
uudecode -o /tmp/hfs-boot-block.bz2 `dirname $0`/hfs-boot.bz2.uu
|
||||
bzip2 -d /tmp/hfs-boot-block.bz2
|
||||
OFFSET=$(hd /tmp/hfs-boot-block | grep 'Loader START' | cut -f 1 -d ' ')
|
||||
@ -31,6 +32,19 @@ if [ "x$1" = "x-b" ]; then
|
||||
dd if=$4/boot/loader of=/tmp/hfs-boot-block seek=$OFFSET conv=notrunc
|
||||
|
||||
bootable="-o bootimage=macppc;/tmp/hfs-boot-block -o no-emul-boot"
|
||||
|
||||
# pSeries/PAPR boot code
|
||||
mkdir $4/ppc
|
||||
cat > $4/ppc/bootinfo.txt << EOF
|
||||
<CHRP-BOOT>
|
||||
<DESCRIPTION>FreeBSD/powerpc</DESCRIPTION>
|
||||
<OS-NAME>FreeBSD</OS-NAME>
|
||||
<BOOT-SCRIPT>
|
||||
boot &device;:&partition;,\boot\loader &device;:0
|
||||
</BOOT-SCRIPT>
|
||||
</CHRP-BOOT>
|
||||
EOF
|
||||
|
||||
shift
|
||||
else
|
||||
bootable=""
|
||||
@ -48,3 +62,5 @@ echo "/dev/iso9660/`echo $LABEL | tr '[:lower:]' '[:upper:]'` / cd9660 ro 0 0" >
|
||||
makefs -t cd9660 $bootable -o rockridge -o label=$LABEL $NAME $*
|
||||
rm $1/etc/fstab
|
||||
rm /tmp/hfs-boot-block
|
||||
rm -rf $1/ppc
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user