[build] Allow an initrd script to be provided via genfsimg

Signed-off-by: Michael Brown <mcb30@ipxe.org>
pull/224/head
Michael Brown 2021-01-22 18:33:51 +00:00
parent 34f51a0dca
commit ae73fb5aa0
1 changed files with 15 additions and 4 deletions

View File

@ -14,6 +14,7 @@ help() {
echo " -h show this help" echo " -h show this help"
echo " -o FILE save image to file" echo " -o FILE save image to file"
echo " -p PAD pad filesystem (in kB)" echo " -p PAD pad filesystem (in kB)"
echo " -s SCRIPT use executable script"
} }
# Get hex byte from binary file # Get hex byte from binary file
@ -113,7 +114,8 @@ copy_syslinux_file() {
# #
OUTFILE= OUTFILE=
PAD=0 PAD=0
while getopts "hlo:p:" OPTION ; do SCRIPT=
while getopts "hlo:p:s:" OPTION ; do
case "${OPTION}" in case "${OPTION}" in
h) h)
help help
@ -125,6 +127,9 @@ while getopts "hlo:p:" OPTION ; do
p) p)
PAD="${OPTARG}" PAD="${OPTARG}"
;; ;;
s)
SCRIPT="${OPTARG}"
;;
*) *)
help help
exit 1 exit 1
@ -197,9 +202,15 @@ for FILENAME ; do
echo "SAY iPXE boot image" > "${SYSLINUXCFG}" echo "SAY iPXE boot image" > "${SYSLINUXCFG}"
echo "TIMEOUT 30" >> "${SYSLINUXCFG}" echo "TIMEOUT 30" >> "${SYSLINUXCFG}"
echo "DEFAULT ${DESTFILE}" >> "${SYSLINUXCFG}" echo "DEFAULT ${DESTFILE}" >> "${SYSLINUXCFG}"
if [ -n "${SCRIPT}" ] ; then
cp "${SCRIPT}" "${BIOSDIR}/autoexec.ipxe"
fi
fi fi
echo "LABEL ${DESTFILE}" >> "${SYSLINUXCFG}" echo "LABEL ${DESTFILE}" >> "${SYSLINUXCFG}"
echo " KERNEL ${DESTFILE}" >> "${SYSLINUXCFG}" echo " KERNEL ${DESTFILE}" >> "${SYSLINUXCFG}"
if [ -n "${SCRIPT}" ] ; then
echo " APPEND initrd=autoexec.ipxe" >> "${SYSLINUXCFG}"
fi
LKRN=1 LKRN=1
;; ;;
*.efi) *.efi)