Unify file copying setup across different install scripts. Add

options for performing partial install.
This commit is contained in:
Vladimir 'phcoder' Serbinenko 2013-04-04 19:59:59 +02:00
parent efe0cddae8
commit aa42823871
8 changed files with 212 additions and 145 deletions

View file

@ -1,5 +1,4 @@
#! /bin/sh
set -e
#!/bin/sh
# Make GRUB rescue image
# Copyright (C) 1999,2000,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010,2011,2012 Free Software Foundation, Inc.
@ -27,7 +26,6 @@ libdir="@libdir@"
PACKAGE_NAME=@PACKAGE_NAME@
PACKAGE_TARNAME=@PACKAGE_TARNAME@
PACKAGE_VERSION=@PACKAGE_VERSION@
pkglib_DATA="moddep.lst command.lst fs.lst partmap.lst parttool.lst handler.lst video.lst crypto.lst terminal.lst"
datadir="@datadir@"
if [ "x$pkgdatadir" = x ]; then
pkgdatadir="${datadir}/@PACKAGE@"
@ -64,25 +62,21 @@ usage () {
echo
print_option_help "-C, --compression=(xz|none|auto)" "$(gettext "choose the compression to use")"
print_option_help "--modules=$(gettext "MODULES")" "$(gettext "pre-load specified modules MODULES")"
grub_print_install_files_help
print_option_help "--grub-mkimage=$(gettext "FILE")" "$(gettext "use FILE as grub-mkimage")"
echo
gettext "Report bugs to <bug-grub@gnu.org>."; echo
}
argument () {
opt=$1
shift
if test $# -eq 0; then
gettext_printf "%s: option requires an argument -- \`%s'\n" "$0" "$opt" 1>&2
exit 1
fi
echo $1
}
# Check the arguments.
while test $# -gt 0
do
grub_process_install_options "$@"
case "$grub_process_install_options_consumed" in
1) shift; continue;;
2) shift; shift; continue;;
esac
option=$1
shift
@ -167,27 +161,7 @@ else
fi
memdisk_dir="`mktemp -d "${TMPDIR:-/tmp}/tmp.XXXXXXXXXX"`" || exit 1
mkdir -p "${memdisk_dir}"/boot/grub/"${grub_modinfo_target_cpu}-${grub_modinfo_platform}"
for file in "${source_directory}/"*.mod "${source_directory}/"efiemu32.o "${source_directory}/"efiemu64.o; do
if test -f "$file"; then
cp -f "$file" "${memdisk_dir}"/boot/grub/"${grub_modinfo_target_cpu}-${grub_modinfo_platform}"
fi
done
for file in ${pkglib_DATA}; do
if test -f "${source_directory}/${file}"; then
cp -f "${source_directory}/${file}" "${memdisk_dir}"/boot/grub/"${grub_modinfo_target_cpu}-${grub_modinfo_platform}"
fi
done
mkdir -p "${memdisk_dir}"/boot/grub/locale
for file in "${source_directory}"/po/*.mo; do
if test -f "$file"; then
cp -f "$file" "${memdisk_dir}"/boot/grub/locale/
fi
done
grub_install_files "${source_directory}" "${memdisk_dir}"/boot/grub "${grub_modinfo_target_cpu}-${grub_modinfo_platform}"
for file in $source; do
cp -f "$file" "${memdisk_dir}"/"$file";
done