You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
63 lines
1.6 KiB
63 lines
1.6 KiB
#!/bin/bash
|
|
|
|
# This script will update the file ../bootfiles/isolinux.bin to match
|
|
# your LiveKit name. Note you may need to run this on a 32bit system.
|
|
#
|
|
# Requires: Debian
|
|
#
|
|
|
|
set -e
|
|
|
|
CWD=$(pwd)
|
|
|
|
echo
|
|
echo "--------------------------------------------------------------------"
|
|
echo "Add directory to isolinux search paths (usually /\$LIVEKITNAME/boot)"
|
|
echo -n "(for example /slax/boot or /linux/boot): "
|
|
read DIR
|
|
|
|
|
|
# download, unpack, and patch syslinux
|
|
|
|
if ! apt-get --yes build-dep syslinux; then
|
|
echo "the most common cause of build-dep failures can be solved by following the steps described here: https://askubuntu.com/questions/496549/error-you-must-put-some-source-uris-in-your-sources-list"
|
|
exit 1
|
|
fi
|
|
mkdir -m 0777 /tmp/syslinux
|
|
cd /tmp/syslinux
|
|
apt-get source syslinux
|
|
apt-get --yes install upx
|
|
cd syslinux*/core
|
|
|
|
for file in fs/iso9660/iso9660.c fs/lib/loadconfig.c elflink/load_env32.c; do
|
|
sed -i -r 's:"/",:"'$DIR'",\n\t"/",:' $file
|
|
done
|
|
|
|
cd ../
|
|
|
|
rm -f bios/core/isolinux.bin
|
|
rm -f bios/com32/elflink/ldlinux/ldlinux.c32
|
|
rm -f bios/com32/lib/libcom32.c32
|
|
rm -f bios/com32/libutil/libutil.c32
|
|
rm -f bios/com32/menu/vesamenu.c32
|
|
rm -f bios/extlinux/extlinux
|
|
|
|
make -j 8 -i
|
|
|
|
echo
|
|
echo "Copying files to $CWD ..."
|
|
|
|
cp bios/core/isolinux.bin $CWD
|
|
cp bios/com32/elflink/ldlinux/ldlinux.c32 $CWD
|
|
cp bios/com32/lib/libcom32.c32 $CWD
|
|
cp bios/com32/libutil/libutil.c32 $CWD
|
|
cp bios/com32/menu/vesamenu.c32 $CWD
|
|
|
|
ARCH=$(uname -m)
|
|
if [ "$ARCH" = "x86_64" ]; then ARCH=64; else ARCH=32; fi
|
|
EXTLINUX=extlinux.x$ARCH
|
|
|
|
strip --strip-unneeded bios/extlinux/extlinux
|
|
cp bios/extlinux/extlinux $CWD/extlinux.x$ARCH
|
|
|
|
echo "done"
|
|
|