[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] fix grub-install from build directory
From: |
Vladimir 'φ-coder/phcoder' Serbinenko |
Subject: |
Re: [PATCH] fix grub-install from build directory |
Date: |
Sun, 22 Sep 2013 18:56:56 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130821 Icedove/17.0.8 |
Go ahead
On 22.09.2013 18:22, Andrey Borzenkov wrote:
> 1. grub-install exits early due to cp error
>
> address@hidden:~/build/grub> LC_ALL=C sudo pkgdatadir=$PWD ./grub-install
> --grub-mkimage=./grub-mkimage --grub-setup=./grub-bios-setup
> --grub-probe=./grub-probe --grub-mkrelpath=./grub-mkrelpath
> --boot-directory=/boot/upstream -d $PWD/grub-core /dev/sda1
> cp: omitting directory '/home/bor/build/grub/themes/starfield/src'
> address@hidden:~/build/grub> echo $?
> 1
>
> Explicitly skip non-plain files but emit a warning.
>
> 2. grub-install requires grub-editenv when installing in clean directory.
>
> Add --grub-editenv option to grub-install to specify its location.
>
> Signed-off-by: Andrey Borzenkov <address@hidden>
>
> ---
> util/grub-install.in | 6 ++++++
> util/grub-install_header | 10 +++++++---
> 2 files changed, 13 insertions(+), 3 deletions(-)
>
> diff --git a/util/grub-install.in b/util/grub-install.in
> index 1816bb1..acd516f 100644
> --- a/util/grub-install.in
> +++ b/util/grub-install.in
> @@ -75,6 +75,7 @@ usage () {
> print_option_help "--grub-setup=$(gettext "FILE")" "$(gettext "use FILE
> as grub-setup")"
> print_option_help "--grub-mkrelpath=$(gettext "FILE")" "$(gettext "use
> FILE as grub-mkrelpath")"
> print_option_help "--grub-probe=$(gettext "FILE")" "$(gettext "use FILE
> as grub-probe")"
> + print_option_help "--grub-editenv=$(gettext "FILE")" "$(gettext "use
> FILE as grub-editenv")"
> # TRANSLATORS: "may break" doesn't just mean that option wouldn't have
> any
> # effect but that it will make the resulting install unbootable from HDD.
> print_option_help "--allow-floppy" "$(gettext "make the drive also
> bootable as floppy (default for fdX devices). May break on some BIOSes.")"
> @@ -173,6 +174,11 @@ do
> --grub-probe=*)
> grub_probe="`echo "$option" | sed 's/--grub-probe=//'`" ;;
>
> + --grub-editenv)
> + grub_editenv="`argument "$option" "$@"`"; shift;;
> + --grub-editenv=*)
> + grub_editenv="`echo "$option" | sed 's/--grub-editenv=//'`" ;;
> +
> --no-floppy)
> ;;
> --recheck)
> diff --git a/util/grub-install_header b/util/grub-install_header
> index cf7fa9d..26013fe 100644
> --- a/util/grub-install_header
> +++ b/util/grub-install_header
> @@ -45,10 +45,14 @@ handler.lst video.lst crypto.lst terminal.lst"
> grub_mkimage="${bindir}/@grub_mkimage@"
>
> grub_compress_file () {
> - if [ "$compressor" != "" ] ; then
> - "$compressor" $compressor_opts "$1" > "$2"
> + if [ -f "$1" ] ; then
> + if [ "$compressor" != "" ] ; then
> + "$compressor" $compressor_opts "$1" > "$2"
> + else
> + cp -f "$1" "$2"
> + fi
> else
> - cp -f "$1" "$2"
> + gettext_printf "Skipping file \`%s': not a plain file\n" "$1" 1>&2
> fi
> }
>
>
signature.asc
Description: OpenPGP digital signature