Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 334396 Details for
Bug 442050
[patch] sys-boot/grub-2.00-r1 build fails on Gentoo/FreeBSD
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
files/grub-2.00-fbsd.patch
grub-2.00-fbsd.patch (text/plain), 16.08 KB, created by
Yuta SATOH
on 2013-01-04 11:12:22 UTC
(
hide
)
Description:
files/grub-2.00-fbsd.patch
Filename:
MIME Type:
Creator:
Yuta SATOH
Created:
2013-01-04 11:12:22 UTC
Size:
16.08 KB
patch
obsolete
>Taken from >http://bzr.savannah.gnu.org/lh/grub/trunk/grub/revision/4556 >http://bzr.savannah.gnu.org/lh/grub/trunk/grub/revision/4584 >http://bzr.savannah.gnu.org/lh/grub/trunk/grub/revision/4624 >http://bzr.savannah.gnu.org/lh/grub/trunk/grub/revision/4625 > >diff -Nur grub-2.00.orig/grub-core/loader/i386/bsd.c grub-2.00/grub-core/loader/i386/bsd.c >--- grub-2.00.orig/grub-core/loader/i386/bsd.c 2012-06-07 22:06:00.000000000 +0900 >+++ grub-2.00/grub-core/loader/i386/bsd.c 2013-01-04 19:50:55.000000000 +0900 >@@ -1309,7 +1309,7 @@ > && phdr->p_type != PT_DYNAMIC) > return 0; > >- paddr = phdr->p_paddr & 0xFFFFFF; >+ paddr = phdr->p_paddr & 0xFFFFFFF; > > if (paddr < kern_start) > kern_start = paddr; >@@ -1333,7 +1333,7 @@ > } > > *do_load = 1; >- phdr->p_paddr &= 0xFFFFFF; >+ phdr->p_paddr &= 0xFFFFFFF; > paddr = phdr->p_paddr; > > *addr = (grub_addr_t) (paddr - kern_start + (grub_uint8_t *) kern_chunk_src); >@@ -1351,7 +1351,7 @@ > && phdr->p_type != PT_DYNAMIC) > return 0; > >- paddr = phdr->p_paddr & 0xffffff; >+ paddr = phdr->p_paddr & 0xfffffff; > > if (paddr < kern_start) > kern_start = paddr; >@@ -1375,7 +1375,7 @@ > } > > *do_load = 1; >- paddr = phdr->p_paddr & 0xffffff; >+ paddr = phdr->p_paddr & 0xfffffff; > > *addr = (grub_addr_t) (paddr - kern_start + (grub_uint8_t *) kern_chunk_src); > >@@ -1394,7 +1394,7 @@ > { > grub_relocator_chunk_t ch; > >- entry = elf->ehdr.ehdr32.e_entry & 0xFFFFFF; >+ entry = elf->ehdr.ehdr32.e_entry & 0xFFFFFFF; > err = grub_elf32_phdr_iterate (elf, filename, > grub_bsd_elf32_size_hook, NULL); > if (err) >diff -Nur grub-2.00.orig/util/grub-mkconfig_lib.in grub-2.00/util/grub-mkconfig_lib.in >--- grub-2.00.orig/util/grub-mkconfig_lib.in 2012-06-28 00:27:53.000000000 +0900 >+++ grub-2.00/util/grub-mkconfig_lib.in 2013-01-04 19:50:55.000000000 +0900 >@@ -349,3 +349,10 @@ > cat > fi > } >+ >+grub_tab=" " >+ >+grub_add_tab () { >+ sed -e "s/^/$grub_tab/" >+} >+ >diff -Nur grub-2.00.orig/util/grub.d/10_hurd.in grub-2.00/util/grub.d/10_hurd.in >--- grub-2.00.orig/util/grub.d/10_hurd.in 2012-03-05 05:10:04.000000000 +0900 >+++ grub-2.00/util/grub.d/10_hurd.in 2013-01-04 19:50:55.000000000 +0900 >@@ -108,7 +108,7 @@ > EOF > fi > >- prepare_grub_to_access_device "${GRUB_DEVICE_BOOT}" | sed -e "s/^/\t/"|sed "s/^/$submenu_indentation/" >+ prepare_grub_to_access_device "${GRUB_DEVICE_BOOT}" | grub_add_tab|sed "s/^/$submenu_indentation/" > message="$(gettext_printf "Loading GNU Mach ...")" > > if [ x$type = xrecovery ] ; then >@@ -122,9 +122,9 @@ > EOF > > if [ x$type != xrecovery ] ; then >- save_default_entry | sed -e "s/^/\t/"| sed "s/^/$submenu_indentation/" >+ save_default_entry | grub_add_tab| sed "s/^/$submenu_indentation/" > fi >- prepare_grub_to_access_device "${GRUB_DEVICE}" | sed -e "s/^/\t/"| sed "s/^/$submenu_indentation/" >+ prepare_grub_to_access_device "${GRUB_DEVICE}" | grub_add_tab| sed "s/^/$submenu_indentation/" > message="$(gettext_printf "Loading the Hurd ...")" > if [ x$type = xrecovery ] ; then > opts= >@@ -158,7 +158,7 @@ > > if [ "x$is_first_entry" = xtrue ]; then > hurd_entry "$kernel" simple >- submenu_indentation="\t" >+ submenu_indentation="$grub_tab" > > # TRANSLATORS: %s is replaced with an OS name > echo "submenu '$(gettext_printf "Advanced options for %s" "${OS}" | grub_quote)' \$menuentry_id_option 'gnuhurd-advanced-$(grub_get_device_id "${GRUB_DEVICE_BOOT}")' {" >diff -Nur grub-2.00.orig/util/grub.d/10_illumos.in grub-2.00/util/grub.d/10_illumos.in >--- grub-2.00.orig/util/grub.d/10_illumos.in 2012-03-05 04:03:38.000000000 +0900 >+++ grub-2.00/util/grub.d/10_illumos.in 2013-01-04 19:50:55.000000000 +0900 >@@ -35,8 +35,8 @@ > esac > > echo "menuentry '$(echo "$OS" | grub_quote)' ${CLASS} \$menuentry_id_option 'illumos-$(grub_get_device_id "${GRUB_DEVICE_BOOT}")' {" >-save_default_entry | sed -e "s/^/\t/" >-prepare_grub_to_access_device "${GRUB_DEVICE_BOOT}" | sed -e "s/^/\t/" >+save_default_entry | grub_add_tab >+prepare_grub_to_access_device "${GRUB_DEVICE_BOOT}" | grub_add_tab > message="$(gettext_printf "Loading kernel of Illumos ...")" > cat << EOF > insmod gzio >diff -Nur grub-2.00.orig/util/grub.d/10_kfreebsd.in grub-2.00/util/grub.d/10_kfreebsd.in >--- grub-2.00.orig/util/grub.d/10_kfreebsd.in 2012-03-05 06:02:30.000000000 +0900 >+++ grub-2.00/util/grub.d/10_kfreebsd.in 2013-01-04 19:50:55.000000000 +0900 >@@ -54,7 +54,7 @@ > fi > > if [ -z "${prepare_module_dir_cache}" ]; then >- prepare_module_dir_cache="$(prepare_grub_to_access_device $(grub-probe -t device "${module_dir}") | sed -e "s/^/\t/")" >+ prepare_module_dir_cache="$(prepare_grub_to_access_device $(${grub_probe} -t device "${module_dir}") | grub_add_tab)" > fi > > printf '%s\n' "${prepare_module_dir_cache}" >@@ -91,10 +91,10 @@ > echo "menuentry '$(echo "$OS" | grub_quote)' ${CLASS} \$menuentry_id_option 'kfreebsd-simple-$boot_device_id' {" | sed "s/^/$submenu_indentation/" > fi > if [ x$type != xrecovery ] ; then >- save_default_entry | sed -e "s/^/\t/" | sed "s/^/$submenu_indentation/" >+ save_default_entry | grub_add_tab | sed "s/^/$submenu_indentation/" > fi > if [ -z "${prepare_boot_cache}" ]; then >- prepare_boot_cache="$(prepare_grub_to_access_device ${GRUB_DEVICE_BOOT} | sed -e "s/^/\t/")" >+ prepare_boot_cache="$(prepare_grub_to_access_device ${GRUB_DEVICE_BOOT} | grub_add_tab)" > fi > > printf '%s\n' "${prepare_boot_cache}" | sed "s/^/$submenu_indentation/" >@@ -112,7 +112,7 @@ > > load_kfreebsd_module acpi true > >- for abstraction in dummy $(grub-probe -t abstraction --device ${GRUB_DEVICE}) ; do >+ for abstraction in dummy $(${grub_probe} -t abstraction --device ${GRUB_DEVICE}) ; do > case $abstraction in > lvm) load_kfreebsd_module geom_linux_lvm false ;; > esac >@@ -122,10 +122,10 @@ > zfs) > load_kfreebsd_module opensolaris false > >- ls "${dirname}/zfs/zpool.cache" > /dev/null >+ ls "/boot/zfs/zpool.cache" > /dev/null > printf '%s\n' "${prepare_boot_cache}" > sed "s/^/$submenu_indentation/" << EOF >- kfreebsd_module ${rel_dirname}/zfs/zpool.cache type=/boot/zfs/zpool.cache >+ kfreebsd_module $(make_system_path_relative_to_its_root /boot)/zfs/zpool.cache type=/boot/zfs/zpool.cache > EOF > ;; > esac >@@ -179,7 +179,7 @@ > case ${GRUB_FS} in > zfs) > # zpool name >- kfreebsd_device=$(grub-probe -t fs_label --device ${GRUB_DEVICE}) >+ kfreebsd_device=$(${grub_probe} -t fs_label --device ${GRUB_DEVICE}) > # filesystem name (empty string for the main filesystem) > kfreebsd_device="${kfreebsd_device}$(${grub_mkrelpath} / | sed -e "s,/*@$,,")" > ;; >@@ -213,7 +213,7 @@ > > if [ "x$is_first_entry" = xtrue ]; then > kfreebsd_entry "${OS}" "${version}" simple >- submenu_indentation="\t" >+ submenu_indentation="$grub_tab" > > if [ -z "$boot_device_id" ]; then > boot_device_id="$(grub_get_device_id "${GRUB_DEVICE}")" >diff -Nur grub-2.00.orig/util/grub.d/10_linux.in grub-2.00/util/grub.d/10_linux.in >--- grub-2.00.orig/util/grub.d/10_linux.in 2012-04-19 06:24:38.000000000 +0900 >+++ grub-2.00/util/grub.d/10_linux.in 2013-01-04 19:50:55.000000000 +0900 >@@ -101,7 +101,7 @@ > echo "menuentry '$(echo "$os" | grub_quote)' ${CLASS} \$menuentry_id_option 'gnulinux-simple-$boot_device_id' {" | sed "s/^/$submenu_indentation/" > fi > if [ x$type != xrecovery ] ; then >- save_default_entry | sed -e "s/^/\t/" >+ save_default_entry | grub_add_tab > fi > > # Use ELILO's generic "efifb" when it's known to be available. >@@ -123,12 +123,12 @@ > > if [ x$dirname = x/ ]; then > if [ -z "${prepare_root_cache}" ]; then >- prepare_root_cache="$(prepare_grub_to_access_device ${GRUB_DEVICE} | sed -e "s/^/\t/")" >+ prepare_root_cache="$(prepare_grub_to_access_device ${GRUB_DEVICE} | grub_add_tab)" > fi > printf '%s\n' "${prepare_root_cache}" | sed "s/^/$submenu_indentation/" > else > if [ -z "${prepare_boot_cache}" ]; then >- prepare_boot_cache="$(prepare_grub_to_access_device ${GRUB_DEVICE_BOOT} | sed -e "s/^/\t/")" >+ prepare_boot_cache="$(prepare_grub_to_access_device ${GRUB_DEVICE_BOOT} | grub_add_tab)" > fi > printf '%s\n' "${prepare_boot_cache}" | sed "s/^/$submenu_indentation/" > fi >@@ -230,7 +230,7 @@ > linux_entry "${OS}" "${version}" simple \ > "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}" > >- submenu_indentation="\t" >+ submenu_indentation="$grub_tab" > > if [ -z "$boot_device_id" ]; then > boot_device_id="$(grub_get_device_id "${GRUB_DEVICE}")" >diff -Nur grub-2.00.orig/util/grub.d/10_netbsd.in grub-2.00/util/grub.d/10_netbsd.in >--- grub-2.00.orig/util/grub.d/10_netbsd.in 2012-03-05 04:47:35.000000000 +0900 >+++ grub-2.00/util/grub.d/10_netbsd.in 2013-01-04 19:50:55.000000000 +0900 >@@ -77,10 +77,10 @@ > prepare_grub_to_access_device $(${grub_probe} -t device "${kmodule}") | sed -e 's,^, ,' > case "${loader}" in > knetbsd) >- printf "\tknetbsd_module_elf %s\n" "${kmodule_rel}" >+ printf "$grub_tabknetbsd_module_elf %s\n" "${kmodule_rel}" > ;; > multiboot) >- printf "\tmodule %s\n" "${kmodule_rel}" >+ printf "$grub_tabmodule %s\n" "${kmodule_rel}" > ;; > esac > } >@@ -121,11 +121,11 @@ > printf "%s\n" "${prepare_boot_cache}" | sed "s/^/$submenu_indentation/" > case "${loader}" in > knetbsd) >- printf "\tknetbsd %s -r %s %s\n" \ >+ printf "$grub_tabknetbsd %s -r %s %s\n" \ > "${kernel}" "${kroot_device}" "${GRUB_CMDLINE_NETBSD} ${args}" | sed "s/^/$submenu_indentation/" > ;; > multiboot) >- printf "\tmultiboot %s %s root=%s %s\n" \ >+ printf "$grub_tabmultiboot %s %s root=%s %s\n" \ > "${kernel}" "${kernel}" "${kroot_device}" "${GRUB_CMDLINE_NETBSD} ${args}" | sed "s/^/$submenu_indentation/" > ;; > esac >@@ -159,7 +159,7 @@ > > if [ "x$is_first_entry" = xtrue ]; then > netbsd_entry "knetbsd" "$k" simple "${GRUB_CMDLINE_NETBSD_DEFAULT}" >- submenu_indentation="\t" >+ submenu_indentation="$grub_tab" > > if [ -z "$boot_device_id" ]; then > boot_device_id="$(grub_get_device_id "${GRUB_DEVICE}")" >diff -Nur grub-2.00.orig/util/grub.d/10_windows.in grub-2.00/util/grub.d/10_windows.in >--- grub-2.00.orig/util/grub.d/10_windows.in 2012-03-05 06:11:43.000000000 +0900 >+++ grub-2.00/util/grub.d/10_windows.in 2013-01-04 19:50:55.000000000 +0900 >@@ -45,7 +45,7 @@ > sort | uniq | wc -l`" = 1 || return 1 > > # Search 'default=PARTITION' >- get_os_name_from_boot_ini_part=`sed -n 's,^default=,,p' "$1" | sed 's,\\\\,/,g;s,[ \t\r]*$,,;1q'` >+ get_os_name_from_boot_ini_part=`sed -n 's,^default=,,p' "$1" | sed 's,\\\\,/,g;s,[ $grub_tab\r]*$,,;1q'` > test -n "$get_os_name_from_boot_ini_part" || return 1 > > # Search 'PARTITION="NAME" ...' >@@ -87,8 +87,8 @@ > menuentry '$(echo "$OS" | grub_quote)' \$menuentry_id_option '$osid-$(grub_get_device_id "${dev}")' { > EOF > >- save_default_entry | sed -e 's,^,\t,' >- prepare_grub_to_access_device "$dev" | sed 's,^,\t,' >+ save_default_entry | sed -e 's,^,$grub_tab,' >+ prepare_grub_to_access_device "$dev" | sed 's,^,$grub_tab,' > test -z "$needmap" || cat <<EOF > drivemap -s (hd0) \$root > EOF >diff -Nur grub-2.00.orig/util/grub.d/10_xnu.in grub-2.00/util/grub.d/10_xnu.in >--- grub-2.00.orig/util/grub.d/10_xnu.in 2012-05-29 19:31:03.000000000 +0900 >+++ grub-2.00/util/grub.d/10_xnu.in 2013-01-04 19:50:55.000000000 +0900 >@@ -39,8 +39,8 @@ > cat << EOF > menuentry '$(echo "Darwin/Mac OS X $bitstr $onstr" | grub_quote)' --class osx --class darwin --class os \$menuentry_id_option 'osprober-xnu-$2-$(grub_get_device_id "${GRUB_DEVICE}")' { > EOF >- save_default_entry | sed -e "s/^/ /" >- prepare_grub_to_access_device ${GRUB_DEVICE} | sed -e "s/^/ /" >+ save_default_entry | grub_add_tab >+ prepare_grub_to_access_device ${GRUB_DEVICE} | grub_add_tab > cat << EOF > load_video > set do_resume=0 >diff -Nur grub-2.00.orig/util/grub.d/20_linux_xen.in grub-2.00/util/grub.d/20_linux_xen.in >--- grub-2.00.orig/util/grub.d/20_linux_xen.in 2012-06-04 04:57:42.000000000 +0900 >+++ grub-2.00/util/grub.d/20_linux_xen.in 2013-01-04 19:50:55.000000000 +0900 >@@ -110,11 +110,11 @@ > echo "menuentry '$(echo "$title" | grub_quote)' ${CLASS} \$menuentry_id_option 'xen-gnulinux-simple-$boot_device_id' {" | sed "s/^/$submenu_indentation/" > fi > if [ x$type != xrecovery ] ; then >- save_default_entry | sed -e "s/^/\t/" | sed "s/^/$submenu_indentation/" >+ save_default_entry | grub_add_tab | sed "s/^/$submenu_indentation/" > fi > > if [ -z "${prepare_boot_cache}" ]; then >- prepare_boot_cache="$(prepare_grub_to_access_device ${GRUB_DEVICE_BOOT} | sed -e "s/^/\t/")" >+ prepare_boot_cache="$(prepare_grub_to_access_device ${GRUB_DEVICE_BOOT} | grub_add_tab)" > fi > printf '%s\n' "${prepare_boot_cache}" | sed "s/^/$submenu_indentation/" > xmessage="$(gettext_printf "Loading Xen %s ..." ${xen_version})" >@@ -236,7 +236,7 @@ > linux_entry "${OS}" "${version}" "${xen_version}" simple \ > "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}" "${GRUB_CMDLINE_XEN} ${GRUB_CMDLINE_XEN_DEFAULT}" > >- submenu_indentation="\t\t" >+ submenu_indentation="$grub_tab$grub_tab" > > if [ -z "$boot_device_id" ]; then > boot_device_id="$(grub_get_device_id "${GRUB_DEVICE}")" >diff -Nur grub-2.00.orig/util/grub.d/30_os-prober.in grub-2.00/util/grub.d/30_os-prober.in >--- grub-2.00.orig/util/grub.d/30_os-prober.in 2012-03-05 05:52:03.000000000 +0900 >+++ grub-2.00/util/grub.d/30_os-prober.in 2013-01-04 19:50:55.000000000 +0900 >@@ -54,8 +54,8 @@ > cat << EOF > menuentry '$(echo "${LONGNAME} $bitstr $onstr" | grub_quote)' --class osx --class darwin --class os \$menuentry_id_option 'osprober-xnu-$2-$(grub_get_device_id "${DEVICE}")' { > EOF >- save_default_entry | sed -e "s/^/\t/" >- prepare_grub_to_access_device ${DEVICE} | sed -e "s/^/\t/" >+ save_default_entry | grub_add_tab >+ prepare_grub_to_access_device ${DEVICE} | grub_add_tab > cat << EOF > load_video > set do_resume=0 >@@ -126,8 +126,8 @@ > cat << EOF > menuentry '$(echo "${LONGNAME} $onstr" | grub_quote)' --class windows --class os \$menuentry_id_option 'osprober-chain-$(grub_get_device_id "${DEVICE}")' { > EOF >- save_default_entry | sed -e "s/^/\t/" >- prepare_grub_to_access_device ${DEVICE} | sed -e "s/^/\t/" >+ save_default_entry | grub_add_tab >+ prepare_grub_to_access_device ${DEVICE} | grub_add_tab > > case ${LONGNAME} in > Windows\ Vista*|Windows\ 7*|Windows\ Server\ 2008*) >@@ -181,14 +181,14 @@ > used_osprober_linux_ids="$used_osprober_linux_ids 'osprober-gnulinux-$LKERNEL-${recovery_params}-$counter-$boot_device_id'" > > if [ -z "${prepare_boot_cache}" ]; then >- prepare_boot_cache="$(prepare_grub_to_access_device ${LBOOT} | sed -e "s/^/\t/")" >+ prepare_boot_cache="$(prepare_grub_to_access_device ${LBOOT} | grub_add_tab)" > fi > > if [ "x$is_first_entry" = xtrue ]; then > cat << EOF > menuentry '$(echo "$OS" | grub_quote)' --class gnu-linux --class gnu --class os \$menuentry_id_option 'osprober-gnulinux-simple-$boot_device_id' { > EOF >- save_default_entry | sed -e "s/^/\t/" >+ save_default_entry | grub_add_tab > printf '%s\n' "${prepare_boot_cache}" > cat << EOF > linux ${LKERNEL} ${LPARAMS} >@@ -208,8 +208,8 @@ > cat << EOF > menuentry '$(echo "$title" | grub_quote)' --class gnu-linux --class gnu --class os \$menuentry_id_option 'osprober-gnulinux-$LKERNEL-${recovery_params}-$boot_device_id' { > EOF >- save_default_entry | sed -e "s/^/\t\t/" >- printf '%s\n' "${prepare_boot_cache}" | sed -e "s/^/\t/" >+ save_default_entry | sed -e "s/^/$grub_tab$grub_tab/" >+ printf '%s\n' "${prepare_boot_cache}" | grub_add_tab > cat << EOF > linux ${LKERNEL} ${LPARAMS} > EOF >@@ -243,8 +243,8 @@ > cat << EOF > menuentry '$(echo "${LONGNAME} $onstr" | grub_quote)' --class hurd --class gnu --class os \$menuentry_id_option 'osprober-gnuhurd-/boot/gnumach.gz-false-$(grub_get_device_id "${DEVICE}")' { > EOF >- save_default_entry | sed -e "s/^/\t/" >- prepare_grub_to_access_device ${DEVICE} | sed -e "s/^/\t/" >+ save_default_entry | grub_add_tab >+ prepare_grub_to_access_device ${DEVICE} | grub_add_tab > grub_device="`${grub_probe} --device ${DEVICE} --target=drive`" > mach_device="`echo "${grub_device}" | sed -e 's/(\(hd.*\),msdos\(.*\))/\1s\2/'`" > grub_fs="`${grub_probe} --device ${DEVICE} --target=fs`"
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 442050
:
328544
|
328546
|
328548
|
328650
|
328656
|
328658
| 334396