diff --git a/util/grub-install.in b/util/grub-install.in
index a004b2d11..a18a530a1 100644
--- a/util/grub-install.in
+++ b/util/grub-install.in
@@ -32,7 +32,7 @@ platform=@platform@
pkglibdir=${libdir}/`echo ${PACKAGE_TARNAME}/${target_cpu}-${platform} | sed ${transform}`
grub_setup=${sbindir}/`echo grub-setup | sed ${transform}`
-if [ "${target_cpu}-${platform}" = "i386-pc" ] ; then
+if [ "${target_cpu}-${platform}" = "i386-pc" || "${target_cpu}-${platform}" = "sparc64-ieee1275" ] ; then
grub_mkimage=${bindir}/`echo grub-mkimage | sed ${transform}`
else
grub_mkimage=${bindir}/`echo grub-mkelfimage | sed ${transform}`
@@ -51,6 +51,8 @@ debug=no
if [ "${target_cpu}-${platform}" = "i386-pc" ] ; then
disk_module=biosdisk
+elif [ "${target_cpu}-${platform}" = "sparc64-ieee1275" ] ; then
+ disk_module=
else
disk_module=ata
fi
@@ -177,7 +179,7 @@ device_map=${grubdir}/device.map
grub_probe="${grub_probe} --device-map=${device_map}"
# Check if GRUB is installed.
-if [ "${target_cpu}-${platform}" = "i386-pc" ] ; then
+if [ "${target_cpu}-${platform}" = "i386-pc" || "${target_cpu}-${platform}" = "sparc64-ieee1275" ] ; then
set $grub_setup dummy
if test -f "$1"; then
:
@@ -239,7 +241,7 @@ done
for file in ${pkglibdir}/*.mod ${pkglibdir}/*.lst; do
cp -f $file ${grubdir} || exit 1
done
-if [ "${target_cpu}-${platform}" = "i386-pc" ] ; then
+if [ "${target_cpu}-${platform}" = "i386-pc" || "${target_cpu}-${platform}" = "sparc64-ieee1275" ] ; then
for file in ${pkglibdir}/*.img ${pkglibdir}/efiemu??.o; do
if test -f $file; then
cp -f $file ${grubdir} || exit 1
@@ -316,7 +318,7 @@ if [ x$config != x ]; then
config_opt="-c $config "
fi
-if [ "${target_cpu}-${platform}" = "i386-pc" ] ; then
+if [ "${target_cpu}-${platform}" = "i386-pc" || "${target_cpu}-${platform}" = "sparc64-ieee1275" ] ; then
$grub_mkimage ${config_opt} --output=${grubdir}/core.img --prefix=${prefix_drive}${relative_grubdir} $modules || exit 1
# Now perform the installation.
diff --git a/util/sparc64/ieee1275/grub-install.in b/util/sparc64/ieee1275/grub-install.in
deleted file mode 100644
index a03869cb3..000000000
--- a/util/sparc64/ieee1275/grub-install.in
+++ /dev/null
@@ -1,276 +0,0 @@
-#! /bin/sh
-
-# Install GRUB on your drive.
-# Copyright (C) 1999,2000,2001,2002,2003,2004,2005,2006,2007,2008,2009 Free Software Foundation, Inc.
-#
-# GRUB is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# GRUB is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with GRUB. If not, see .
-
-# Initialize some variables.
-transform="@program_transform_name@"
-
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-sbindir=@sbindir@
-bindir=@bindir@
-libdir=@libdir@
-PACKAGE_NAME=@PACKAGE_NAME@
-PACKAGE_TARNAME=@PACKAGE_TARNAME@
-PACKAGE_VERSION=@PACKAGE_VERSION@
-target_cpu=@target_cpu@
-platform=@platform@
-pkglibdir=${libdir}/`echo ${PACKAGE_TARNAME}/${target_cpu}-${platform} | sed ${transform}`
-
-# for make_system_path_relative_to_its_root()
-. ${libdir}/grub/grub-mkconfig_lib
-
-grub_setup=${sbindir}/`echo grub-setup | sed ${transform}`
-grub_mkimage=${bindir}/`echo grub-mkimage | sed ${transform}`
-grub_mkdevicemap=${sbindir}/`echo grub-mkdevicemap | sed ${transform}`
-grub_probe=${sbindir}/`echo grub-probe | sed ${transform}`
-rootdir=
-grub_prefix=`echo /boot/grub | sed ${transform}`
-modules=
-
-install_device=
-no_floppy=
-force_lba=
-recheck=no
-debug=no
-
-# Usage: usage
-# Print the usage.
-usage () {
- cat <.
-EOF
-}
-
-# Check the arguments.
-for option in "$@"; do
- case "$option" in
- -h | --help)
- usage
- exit 0 ;;
- -v | --version)
- echo "grub-install (GNU GRUB ${PACKAGE_VERSION})"
- exit 0 ;;
- --modules=*)
- modules=`echo "$option" | sed 's/--modules=//'` ;;
- --root-directory=*)
- rootdir=`echo "$option" | sed 's/--root-directory=//'` ;;
- --grub-setup=*)
- grub_setup=`echo "$option" | sed 's/--grub-setup=//'` ;;
- --grub-mkimage=*)
- grub_mkimage=`echo "$option" | sed 's/--grub-mkimage=//'` ;;
- --grub-mkdevicemap=*)
- grub_mkdevicemap=`echo "$option" | sed 's/--grub-mkdevicemap=//'` ;;
- --grub-probe=*)
- grub_probe=`echo "$option" | sed 's/--grub-probe=//'` ;;
- --no-floppy)
- no_floppy="--no-floppy" ;;
- --recheck)
- recheck=yes ;;
- # This is an undocumented feature...
- --debug)
- debug=yes ;;
- -*)
- echo "Unrecognized option \`$option'" 1>&2
- usage
- exit 1
- ;;
- *)
- if test "x$install_device" != x; then
- echo "More than one install_devices?" 1>&2
- usage
- exit 1
- fi
- install_device="${option}" ;;
- esac
-done
-
-if test "x$install_device" = x; then
- echo "install_device not specified." 1>&2
- usage
- exit 1
-fi
-
-# If the debugging feature is enabled, print commands.
-setup_verbose=
-if test $debug = yes; then
- set -x
- setup_verbose="--verbose"
-fi
-
-# Initialize these directories here, since ROOTDIR was initialized.
-bootdir=${rootdir}/boot
-grubdir=${bootdir}/`echo grub | sed ${transform}`
-device_map=${grubdir}/device.map
-
-grub_probe="${grub_probe} --device-map=${device_map}"
-
-# Check if GRUB is installed.
-set $grub_setup dummy
-if test -f "$1"; then
- :
-else
- echo "$1: Not found." 1>&2
- exit 1
-fi
-
-set $grub_mkimage dummy
-if test -f "$1"; then
- :
-else
- echo "$1: Not found." 1>&2
- exit 1
-fi
-
-set $grub_mkdevicemap dummy
-if test -f "$1"; then
- :
-else
- echo "$1: Not found." 1>&2
- exit 1
-fi
-
-# Create the GRUB directory if it is not present.
-test -d "$bootdir" || mkdir "$bootdir" || exit 1
-test -d "$grubdir" || mkdir "$grubdir" || exit 1
-
-# If --recheck is specified, remove the device map, if present.
-if test $recheck = yes; then
- rm -f $device_map
-fi
-
-# Create the device map file if it is not present.
-if test -f "$device_map"; then
- :
-else
- # Create a safe temporary file.
- test -n "$mklog" && log_file=`$mklog`
-
- $grub_mkdevicemap --device-map=$device_map $no_floppy || exit 1
-fi
-
-# Make sure that there is no duplicated entry.
-tmp=`sed -n '/^([fh]d[0-9]*)/s/\(^(.*)\).*/\1/p' $device_map \
- | sort | uniq -d | sed -n 1p`
-if test -n "$tmp"; then
- echo "The drive $tmp is defined multiple times in the device map $device_map" 1>&2
- exit 1
-fi
-
-# Copy the GRUB images to the GRUB directory.
-for file in ${grubdir}/*.mod ${grubdir}/*.lst ${grubdir}/*.img; do
- if test -f $file && [ "`basename $file`" != menu.lst ]; then
- rm -f $file || exit 1
- fi
-done
-for file in ${pkglibdir}/*.mod ${pkglibdir}/*.lst; do
- cp -f $file ${grubdir} || exit 1
-done
-
-for file in ${pkglibdir}/*.img; do
- cp -f $file ${grubdir} || exit 1
-done
-
-# Write device to a variable so we don't have to traverse /dev every time.
-grub_device=`$grub_probe --target=device ${grubdir}`
-
-# Create the core image. First, auto-detect the filesystem module.
-fs_module=`$grub_probe --target=fs --device ${grub_device}`
-if test "x$fs_module" = x -a "x$modules" = x; then
- echo "Auto-detection of a filesystem module failed." 1>&2
- echo "Please specify the module with the option \`--modules' explicitly." 1>&2
- exit 1
-fi
-
-# Then the partition map module. In order to support partition-less media,
-# this command is allowed to fail (--target=fs already grants us that the
-# filesystem will be accessible).
-partmap_module=`$grub_probe --target=partmap --device ${grub_device} 2> /dev/null`
-
-# Device abstraction module, if any (lvm, raid).
-devabstraction_module=`$grub_probe --target=abstraction --device ${grub_device}`
-
-modules="$modules $fs_module $partmap_module $devabstraction_module"
-
-prefix_drive=
-if [ "x${devabstraction_module}" = "x" ] ; then
- if echo "${install_device}" | grep -qx "(.*)" ; then
- install_drive="${install_device}"
- else
- install_drive="`$grub_probe --target=drive --device ${install_device}`"
- fi
- grub_drive="`$grub_probe --target=drive --device ${grub_device}`"
-
- # Strip partition number
- install_drive="`echo ${install_drive} | sed -e 's/\([^\]\),[0-9]*/\1/g'`"
- grub_drive="`echo ${grub_drive} | sed -e 's/\([^\]\),[0-9]*/\1/g'`"
- if [ "x${grub_drive}" != "x${install_drive}" ] ; then
- uuid="`$grub_probe --target=fs_uuid --device ${grub_device}`"
- if [ "x${uuid}" = "x" ] ; then
- echo "You attempted a cross-disk install, but the filesystem containing ${grubdir} does not support UUIDs." 1>&2
- exit 1
- fi
- prefix_drive="(UUID=${uuid})"
- modules="$modules fs_uuid"
- fi
-else
- prefix_drive=`$grub_probe --target=drive --device ${grub_device}`
-fi
-
-relative_grubdir=`make_system_path_relative_to_its_root ${grubdir}` || exit 1
-if [ "x${relative_grubdir}" = "x" ] ; then
- relative_grubdir=/
-fi
-
-$grub_mkimage --output=${grubdir}/core.img --prefix=${prefix_drive}${relative_grubdir} $modules || exit 1
-
-# Now perform the installation.
-$grub_setup ${setup_verbose} --directory=${grubdir} --device-map=${device_map} \
- ${install_device} || exit 1
-
-# Prompt the user to check if the device map is correct.
-echo "Installation finished. No error reported."
-echo "This is the contents of the device map $device_map."
-echo "Check if this is correct or not. If any of the lines is incorrect,"
-echo "fix it and re-run the script \`grub-install'."
-echo
-
-cat $device_map
-
-# Bye.
-exit 0