Hi,
would the following changes be acceptable for
grub-mkrescue ?
- Option --xorriso=PROGFILE allows to use a
particular binary as xorriso program.
This will avoid the need to install xorriso.
One can just unpack and build it in some
directory and use .../xorriso/xorriso
as binary.
- Option --diet saves about 400 kB of image
size without losing much benefit.
I attach an untested patch to illustrate the
intended changes.
If ok in principle, then i would do
beautifications and make some tests.
Nevertheless, a GRUB expert should make own
tests afterwards. So maybe Vladimir wants
to take it just as proposal for an own
more qualified change.
Have a nice day :)
Thomas
--
GRATIS für alle GMX-Mitglieder: Die maxdome Movie-FLAT!
Jetzt freischalten unter http://portal.gmx.net/de/go/maxdome01
--- grub-mkrescue.in 2010-05-18 10:02:06.000000000 +0200
+++ grub-mkrescue.in.ts 2010-05-19 13:53:18.000000000 +0200
@@ -38,6 +38,9 @@ efi32_dir=${libdir}/$(echo ${PACKAGE_TAR
efi64_dir=${libdir}/$(echo ${PACKAGE_TARNAME} | sed ${transform})/x86_64-efi
rom_directory=
+xorriso=xorriso
+diet=no
+
# Usage: usage
# Print the usage.
usage () {
@@ -50,6 +53,8 @@ Make GRUB rescue image.
--output=FILE save output in FILE [required]
--modules=MODULES pre-load specified modules MODULES
--rom-directory=DIR save rom images in DIR [optional]
+ --xorriso=PROGFILE use PROGFILE as xorriso program [optional]
+ --diet apply size reducing measures [optional]
$0 generates a bootable rescue image with specified source files or directories.
@@ -78,6 +83,10 @@ for option in "$@"; do
PATH=${override_dir}:$PATH
export PATH
;;
+ --xorriso=*)
+ xorriso=`echo "${option}/" | sed 's/--xorriso=//'` ;;
+ --diet)
+ diet=yes ;;
-*)
echo "Unrecognized option \`$option'" 1>&2
usage
@@ -254,7 +263,14 @@ if [ -e "${iso9660_dir}/boot/coreboot.el
fi
# build iso image
-xorriso -pathspecs on -as mkisofs ${grub_mkisofs_arguments} --protective-msdos-label -o ${output_image} -r ${iso9660_dir} ${source}
+if [ "${diet}" = yes ]; then
+ if [ -e "${output_image}" ]; then
+ rm "${output_image}" || exit 1
+ fi
+ "${xorriso}" -report_about HINT -as mkisofs -graft-points -no-pad ${grub_mkisofs_arguments} --protective-msdos-label -r ${iso9660_dir} ${source} | cat >"${output_image}"
+else
+ "${xorriso}" -report_about HINT -as mkisofs -graft-points ${grub_mkisofs_arguments} --protective-msdos-label -o "${output_image}" -r ${iso9660_dir} ${source}
+fi
rm -rf ${iso9660_dir}
rm -f ${embed_img}
_______________________________________________
Grub-devel mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/grub-devel