commit-grub
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[2656] 2009-10-26 Robert Millan <address@hidden>


From: Robert Millan
Subject: [2656] 2009-10-26 Robert Millan <address@hidden>
Date: Mon, 26 Oct 2009 00:41:55 +0000

Revision: 2656
          http://svn.sv.gnu.org/viewvc/?view=rev&root=grub&revision=2656
Author:   robertmh
Date:     2009-10-26 00:41:54 +0000 (Mon, 26 Oct 2009)
Log Message:
-----------
2009-10-26  Robert Millan  <address@hidden>

        * util/grub.d/10_freebsd.in: Remove.
        * util/grub.d/10_kfreebsd.in: New file (based on 10_linux.in).
        * configure.ac: Set host_kernel=kfreebsd for FreeBSD and GNU/kFreeBSD.

Modified Paths:
--------------
    trunk/grub2/ChangeLog
    trunk/grub2/configure.ac

Added Paths:
-----------
    trunk/grub2/util/grub.d/10_kfreebsd.in

Property Changed:
----------------
    trunk/grub2/


Property changes on: trunk/grub2
___________________________________________________________________
Modified: bzr:revision-info
   - timestamp: 2009-10-26 01:37:55.558000088 +0100
committer: Robert Millan <address@hidden>
properties: 
        branch-nick: trunk

   + timestamp: 2009-10-26 01:40:53.117000103 +0100
committer: Robert Millan <address@hidden>
properties: 
        branch-nick: trunk

Modified: bzr:revision-id:v3-single1-dHJ1bmsvZ3J1YjI.
   - 1769 address@hidden
1770 address@hidden
1771 address@hidden
1772 address@hidden
1773 address@hidden
1774 address@hidden
1775 address@hidden
1776 address@hidden
1777 address@hidden
1778 address@hidden
1779 address@hidden

   + 1769 address@hidden
1770 address@hidden
1771 address@hidden
1772 address@hidden
1773 address@hidden
1774 address@hidden
1775 address@hidden
1776 address@hidden
1777 address@hidden
1778 address@hidden
1779 address@hidden
1780 address@hidden

Modified: bzr:file-ids
   - 
   + util/grub.d/10_kfreebsd.in 10_kfreebsd.in-20091026003604-6qpubno6gnmu5ooy-1


Modified: trunk/grub2/ChangeLog
===================================================================
--- trunk/grub2/ChangeLog       2009-10-26 00:38:38 UTC (rev 2655)
+++ trunk/grub2/ChangeLog       2009-10-26 00:41:54 UTC (rev 2656)
@@ -1,5 +1,11 @@
 2009-10-26  Robert Millan  <address@hidden>
 
+       * util/grub.d/10_freebsd.in: Remove.
+       * util/grub.d/10_kfreebsd.in: New file (based on 10_linux.in).
+       * configure.ac: Set host_kernel=kfreebsd for FreeBSD and GNU/kFreeBSD.
+
+2009-10-26  Robert Millan  <address@hidden>
+
        * docs/grub.cfg: Fix example usage of *BSD loaders.
 
 2009-10-25  Robert Millan  <address@hidden>

Modified: trunk/grub2/configure.ac
===================================================================
--- trunk/grub2/configure.ac    2009-10-26 00:38:38 UTC (rev 2655)
+++ trunk/grub2/configure.ac    2009-10-26 00:41:54 UTC (rev 2656)
@@ -107,7 +107,7 @@
 case "$host_os" in
   gnu*)                                host_kernel=hurd ;;
   linux*)                      host_kernel=linux ;;
-  freebsd* | kfreebsd*-gnu)    host_kernel=freebsd ;;
+  freebsd* | kfreebsd*-gnu)    host_kernel=kfreebsd ;;
   cygwin)                      host_kernel=windows ;;
 esac
 

Added: trunk/grub2/util/grub.d/10_kfreebsd.in
===================================================================
--- trunk/grub2/util/grub.d/10_kfreebsd.in                              (rev 0)
+++ trunk/grub2/util/grub.d/10_kfreebsd.in      2009-10-26 00:41:54 UTC (rev 
2656)
@@ -0,0 +1,102 @@
+#! /bin/sh -e
+
+# grub-mkconfig helper script.
+# Copyright (C) 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 <http://www.gnu.org/licenses/>.
+
address@hidden@
address@hidden@
address@hidden@
+. ${libdir}/grub/grub-mkconfig_lib
+
+if [ "x${GRUB_DISTRIBUTOR}" = "x" ] ; then
+  OS=GNU/Linux
+else
+  OS="${GRUB_DISTRIBUTOR} GNU/Linux"
+fi
+
+# loop-AES arranges things so that /dev/loop/X can be our root device, but
+# the initrds that Linux uses don't like that.
+case ${GRUB_DEVICE} in
+  /dev/loop/*|/dev/loop[0-9])
+    GRUB_DEVICE=`losetup ${GRUB_DEVICE} | sed -e "s/^[^(]*(\([^)]\+\)).*/\1/"`
+  ;;
+esac
+
+if [ "x${GRUB_DEVICE_UUID}" = "x" ] || [ "x${GRUB_DISABLE_LINUX_UUID}" = 
"xtrue" ] \
+    || ! test -e "/dev/disk/by-uuid/${GRUB_DEVICE_UUID}" ; then
+  LINUX_ROOT_DEVICE=${GRUB_DEVICE}
+else
+  LINUX_ROOT_DEVICE=UUID=${GRUB_DEVICE_UUID}
+fi
+
+linux_entry ()
+{
+  cat << EOF
+menuentry "$1" {
+EOF
+  prepare_grub_to_access_device ${GRUB_DEVICE_BOOT} | sed -e "s/^/\t/"
+  cat << EOF
+       linux   ${rel_dirname}/${basename} 
root=${linux_root_device_thisversion} ro $2
+EOF
+  if test -n "${initrd}" ; then
+    cat << EOF
+       initrd  ${rel_dirname}/${initrd}
+EOF
+  fi
+  cat << EOF
+}
+EOF
+}
+
+list=`for i in /boot/vmlinu[xz]-* /vmlinu[xz]-* ; do
+        if grub_file_is_not_garbage "$i" ; then echo -n "$i " ; fi
+      done`
+
+while [ "x$list" != "x" ] ; do
+  linux=`version_find_latest $list`
+  echo "Found linux image: $linux" >&2
+  basename=`basename $linux`
+  dirname=`dirname $linux`
+  rel_dirname=`make_system_path_relative_to_its_root $dirname`
+  version=`echo $basename | sed -e "s,^[^0-9]*-,,g"`
+  alt_version=`echo $version | sed -e "s,\.old$,,g"`
+  linux_root_device_thisversion="${LINUX_ROOT_DEVICE}"
+
+  initrd=
+  for i in "initrd.img-${version}" "initrd-${version}.img" \
+          "initrd-${version}" "initrd.img-${alt_version}" \
+          "initrd-${alt_version}.img" "initrd-${alt_version}"; do
+    if test -e "${dirname}/${i}" ; then
+      initrd="$i"
+      break
+    fi
+  done
+  if test -n "${initrd}" ; then
+    echo "Found initrd image: ${dirname}/${initrd}" >&2
+  else
+    # "UUID=" magic is parsed by initrds.  Since there's no initrd, it can't 
work here.
+    linux_root_device_thisversion=${GRUB_DEVICE}
+  fi
+
+  linux_entry "${OS}, with Linux ${version}" \
+      "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}"
+  if [ "x${GRUB_DISABLE_LINUX_RECOVERY}" != "xtrue" ]; then
+    linux_entry "${OS}, with Linux ${version} (recovery mode)" \
+       "single ${GRUB_CMDLINE_LINUX}"
+  fi
+
+  list=`echo $list | tr ' ' '\n' | grep -vx $linux | tr '\n' ' '`
+done





reply via email to

[Prev in Thread] Current Thread [Next in Thread]