summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Wendler <polynomial-c@gentoo.org>2014-01-07 09:23:37 +0000
committerLars Wendler <polynomial-c@gentoo.org>2014-01-07 09:23:37 +0000
commit1975f4a7713cec07ff98a92cdef2df9840466e8c (patch)
tree513a2b1feba7f3e7fa332ea7b44f9a66e7078862 /sys-boot
parentRemoved old versions and files (diff)
downloadgentoo-2-1975f4a7713cec07ff98a92cdef2df9840466e8c.tar.gz
gentoo-2-1975f4a7713cec07ff98a92cdef2df9840466e8c.tar.bz2
gentoo-2-1975f4a7713cec07ff98a92cdef2df9840466e8c.zip
Removed old versions and files
(Portage version: 2.2.8/cvs/Linux x86_64, signed Manifest commit with key 0x981CA6FC)
Diffstat (limited to 'sys-boot')
-rw-r--r--sys-boot/grub/ChangeLog12
-rw-r--r--sys-boot/grub/files/grub-0.97-gpt.patch315
-rw-r--r--sys-boot/grub/grub-0.92-r1.ebuild95
-rw-r--r--sys-boot/grub/grub-0.94-r1.ebuild131
-rw-r--r--sys-boot/grub/grub-0.96-r1.ebuild150
-rw-r--r--sys-boot/grub/grub-0.96-r2.ebuild146
-rw-r--r--sys-boot/grub/grub-0.96-r3.ebuild145
-rw-r--r--sys-boot/grub/grub-0.97-r2.ebuild168
-rw-r--r--sys-boot/grub/grub-0.97-r3.ebuild161
-rw-r--r--sys-boot/grub/grub-0.97-r4.ebuild172
-rw-r--r--sys-boot/grub/grub-0.97-r5.ebuild219
-rw-r--r--sys-boot/grub/grub-0.97-r6.ebuild269
-rw-r--r--sys-boot/grub/grub-0.97-r8.ebuild273
-rw-r--r--sys-boot/grub/grub-0.97-r9.ebuild280
-rw-r--r--sys-boot/grub/grub-0.97.ebuild147
15 files changed, 10 insertions, 2673 deletions
diff --git a/sys-boot/grub/ChangeLog b/sys-boot/grub/ChangeLog
index 74d693ce701d..73028055f117 100644
--- a/sys-boot/grub/ChangeLog
+++ b/sys-boot/grub/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for sys-boot/grub
-# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub/ChangeLog,v 1.301 2013/12/24 22:42:11 floppym Exp $
+# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub/ChangeLog,v 1.302 2014/01/07 09:23:37 polynomial-c Exp $
+
+ 07 Jan 2014; Lars Wendler <polynomial-c@gentoo.org> -grub-0.92-r1.ebuild,
+ -grub-0.94-r1.ebuild, -grub-0.96-r1.ebuild, -grub-0.96-r2.ebuild,
+ -grub-0.96-r3.ebuild, -grub-0.97.ebuild, -grub-0.97-r2.ebuild,
+ -grub-0.97-r3.ebuild, -grub-0.97-r4.ebuild, -grub-0.97-r5.ebuild,
+ -grub-0.97-r6.ebuild, -grub-0.97-r8.ebuild, -grub-0.97-r9.ebuild,
+ -files/grub-0.97-gpt.patch:
+ Removed old versions and files.
*grub-2.02_beta2 (24 Dec 2013)
diff --git a/sys-boot/grub/files/grub-0.97-gpt.patch b/sys-boot/grub/files/grub-0.97-gpt.patch
deleted file mode 100644
index 7b1a55cd895a..000000000000
--- a/sys-boot/grub/files/grub-0.97-gpt.patch
+++ /dev/null
@@ -1,315 +0,0 @@
-diff -ruBbd --unidirectional-new-file grub-0.96/stage2/builtins.c grub-0.96-patched/stage2/builtins.c
---- grub-0.96/stage2/builtins.c 2004-06-20 09:33:04.000000000 -0400
-+++ grub-0.96-patched/stage2/builtins.c 2007-01-04 13:56:06.000000000 -0500
-@@ -1229,14 +1229,15 @@
- for (drive = 0x80; drive < 0x88; drive++)
- {
- unsigned long part = 0xFFFFFF;
-- unsigned long start, len, offset, ext_offset;
-- int type, entry;
-+ unsigned long start, len, offset, ext_offset, gpt_offset;
-+ int type, entry, gpt_count, gpt_size;
- char buf[SECTOR_SIZE];
-
- current_drive = drive;
- while (next_partition (drive, 0xFFFFFF, &part, &type,
- &start, &len, &offset, &entry,
-- &ext_offset, buf))
-+ &ext_offset, &gpt_offset,
-+ &gpt_count, &gpt_size, buf))
- {
- if (type != PC_SLICE_TYPE_NONE
- && ! IS_PC_SLICE_TYPE_BSD (type)
-@@ -2806,8 +2807,8 @@
- {
- int new_type;
- unsigned long part = 0xFFFFFF;
-- unsigned long start, len, offset, ext_offset;
-- int entry, type;
-+ unsigned long start, len, offset, ext_offset, gpt_offset;
-+ int entry, type, gpt_count, gpt_size;
- char mbr[512];
-
- /* Get the drive and the partition. */
-@@ -2844,7 +2845,14 @@
- /* Look for the partition. */
- while (next_partition (current_drive, 0xFFFFFF, &part, &type,
- &start, &len, &offset, &entry,
-- &ext_offset, mbr))
-+ &ext_offset, &gpt_offset, &gpt_count, &gpt_size, mbr))
-+ /* The partition may not be a GPT partition. */
-+ if (gpt_offset != 0)
-+ {
-+ errnum = ERR_BAD_ARGUMENT;
-+ return 1;
-+ }
-+
- {
- if (part == current_partition)
- {
-diff -ruBbd --unidirectional-new-file grub-0.96/stage2/disk_io.c grub-0.96-patched/stage2/disk_io.c
---- grub-0.96/stage2/disk_io.c 2004-05-23 12:35:24.000000000 -0400
-+++ grub-0.96-patched/stage2/disk_io.c 2007-01-04 14:01:08.000000000 -0500
-@@ -21,6 +21,7 @@
-
- #include <shared.h>
- #include <filesys.h>
-+#include <gpt.h>
-
- #ifdef SUPPORT_NETBOOT
- # define GRUB 1
-@@ -502,8 +503,8 @@
- set_partition_hidden_flag (int hidden)
- {
- unsigned long part = 0xFFFFFF;
-- unsigned long start, len, offset, ext_offset;
-- int entry, type;
-+ unsigned long start, len, offset, ext_offset, gpt_offset;
-+ int entry, type, gpt_count, gpt_size;
- char mbr[512];
-
- /* The drive must be a hard disk. */
-@@ -524,7 +525,14 @@
- /* Look for the partition. */
- while (next_partition (current_drive, 0xFFFFFF, &part, &type,
- &start, &len, &offset, &entry,
-- &ext_offset, mbr))
-+ &ext_offset, &gpt_offset, &gpt_count, &gpt_size, mbr))
-+ /* The partition may not be a GPT partition. */
-+ if (gpt_offset != 0)
-+ {
-+ errnum = ERR_BAD_ARGUMENT;
-+ return 1;
-+ }
-+
- {
- if (part == current_partition)
- {
-@@ -577,11 +585,14 @@
- unsigned long *partition, int *type,
- unsigned long *start, unsigned long *len,
- unsigned long *offset, int *entry,
-- unsigned long *ext_offset, char *buf)
-+ unsigned long *ext_offset,
-+ unsigned long *gpt_offset, int *gpt_count,
-+ int *gpt_size, char *buf)
- {
- /* Forward declarations. */
- auto int next_bsd_partition (void);
- auto int next_pc_slice (void);
-+ auto int next_gpt_slice(void);
-
- /* Get next BSD partition in current PC slice. */
- int next_bsd_partition (void)
-@@ -666,6 +677,40 @@
- return 0;
- }
-
-+ /* If this is a GPT partition table, read it as such. */
-+ if (*entry == -1 && *offset == 0 && PC_SLICE_TYPE (buf, 0) == PC_SLICE_TYPE_GPT)
-+ {
-+ struct grub_gpt_header *hdr = (struct grub_gpt_header *) buf;
-+
-+ /* Read in the GPT Partition table header. */
-+ if (! rawread (drive, 1, 0, SECTOR_SIZE, buf))
-+ return 0;
-+
-+ if (hdr->magic == GPT_HEADER_MAGIC && hdr->version == 0x10000)
-+ {
-+ /* Let gpt_offset point to the first entry in the GPT
-+ partition table. This can also be used by callers of
-+ next_partition to determine if a entry comes from a
-+ GPT partition table or not. */
-+ *gpt_offset = hdr->partitions;
-+ *gpt_count = hdr->maxpart;
-+ *gpt_size = hdr->partentry_size;
-+
-+ return next_gpt_slice();
-+ }
-+ else
-+ {
-+ /* This is not a valid header for a GPT partition table.
-+ Re-read the MBR or the boot sector of the extended
-+ partition. */
-+ if (! rawread (drive, *offset, 0, SECTOR_SIZE, buf))
-+ return 0;
-+ }
-+ }
-+
-+ /* Not a GPT partition. */
-+ *gpt_offset = 0;
-+
- /* Increase the entry number. */
- (*entry)++;
-
-@@ -710,6 +755,43 @@
- return 1;
- }
-
-+ /* Get the next GPT slice. */
-+ int next_gpt_slice (void)
-+ {
-+ struct grub_gpt_partentry *gptentry = (struct grub_gpt_partentry *) buf;
-+ /* Make GPT partitions show up as PC slices. */
-+ int pc_slice_no = (*partition & 0xFF0000) >> 16;
-+
-+ /* If this is the first time... */
-+ if (pc_slice_no == 0xFF)
-+ {
-+ pc_slice_no = -1;
-+ *entry = -1;
-+ }
-+
-+ do {
-+ (*entry)++;
-+
-+ if (*entry >= *gpt_count)
-+ {
-+ errnum = ERR_NO_PART;
-+ return 0;
-+ }
-+ /* Read in the GPT Partition table entry. */
-+ if (! rawread (drive, (*gpt_offset) + GPT_ENTRY_SECTOR (*gpt_size, *entry), GPT_ENTRY_INDEX (*gpt_size, *entry), *gpt_size, buf))
-+ return 0;
-+ } while (! (gptentry->type1 && gptentry->type2));
-+
-+ pc_slice_no++;
-+ *start = gptentry->start;
-+ *len = gptentry->end - gptentry->start + 1;
-+ *type = PC_SLICE_TYPE_EXT2FS;
-+ *entry = pc_slice_no;
-+ *partition = (*entry << 16) | 0xFFFF;
-+
-+ return 1;
-+ }
-+
- /* Start the body of this function. */
-
- #ifndef STAGE1_5
-@@ -717,6 +799,9 @@
- return 0;
- #endif
-
-+ if (*partition != 0xFFFFFF && *gpt_offset != 0)
-+ return next_gpt_slice ();
-+
- /* If previous partition is a BSD partition or a PC slice which
- contains BSD partitions... */
- if ((*partition != 0xFFFFFF && IS_PC_SLICE_TYPE_BSD (*type & 0xff))
-@@ -755,6 +840,9 @@
- unsigned long dest_partition = current_partition;
- unsigned long part_offset;
- unsigned long ext_offset;
-+ unsigned long gpt_offset;
-+ int gpt_count;
-+ int gpt_size;
- int entry;
- char buf[SECTOR_SIZE];
- int bsd_part, pc_slice;
-@@ -766,7 +854,8 @@
- int ret = next_partition (current_drive, dest_partition,
- &current_partition, &current_slice,
- &part_start, &part_length,
-- &part_offset, &entry, &ext_offset, buf);
-+ &part_offset, &entry, &ext_offset,
-+ &gpt_offset, &gpt_count, &gpt_size, buf);
- bsd_part = (current_partition >> 8) & 0xFF;
- pc_slice = current_partition >> 16;
- return ret;
-diff -ruBbd --unidirectional-new-file grub-0.96/stage2/gpt.h grub-0.96-patched/stage2/gpt.h
---- grub-0.96/stage2/gpt.h 1969-12-31 19:00:00.000000000 -0500
-+++ grub-0.96-patched/stage2/gpt.h 2007-01-04 13:52:14.000000000 -0500
-@@ -0,0 +1,68 @@
-+/*
-+ * GRUB -- GRand Unified Bootloader
-+ * Copyright (C) 2002,2005,2006 Free Software Foundation, Inc.
-+ *
-+ * This program 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 2 of the License, or
-+ * (at your option) any later version.
-+ *
-+ * This program 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 this program; if not, write to the Free Software
-+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-+ */
-+
-+#ifndef _GPT_H
-+#define _GPT_H
-+
-+typedef signed char grub_int8_t;
-+typedef signed short grub_int16_t;
-+typedef signed int grub_int32_t;
-+typedef signed long long int grub_int64_t;
-+typedef unsigned char grub_uint8_t;
-+typedef unsigned short grub_uint16_t;
-+typedef unsigned int grub_uint32_t;
-+typedef unsigned long long int grub_uint64_t;
-+
-+struct grub_gpt_header
-+{
-+ grub_uint64_t magic;
-+ grub_uint32_t version;
-+ grub_uint32_t headersize;
-+ grub_uint32_t crc32;
-+ grub_uint32_t unused1;
-+ grub_uint64_t primary;
-+ grub_uint64_t backup;
-+ grub_uint64_t start;
-+ grub_uint64_t end;
-+ grub_uint8_t guid[16];
-+ grub_uint64_t partitions;
-+ grub_uint32_t maxpart;
-+ grub_uint32_t partentry_size;
-+ grub_uint32_t partentry_crc32;
-+} __attribute__ ((packed));
-+
-+struct grub_gpt_partentry
-+{
-+ grub_uint64_t type1;
-+ grub_uint64_t type2;
-+ grub_uint8_t guid[16];
-+ grub_uint64_t start;
-+ grub_uint64_t end;
-+ grub_uint8_t attrib;
-+ char name[72];
-+} __attribute__ ((packed));
-+
-+#define GPT_HEADER_MAGIC 0x5452415020494645UL
-+
-+#define GPT_ENTRY_SECTOR(size,entry) \
-+ ((((entry) * (size) + 1) & ~(SECTOR_SIZE - 1)) >> SECTOR_BITS)
-+#define GPT_ENTRY_INDEX(size,entry) \
-+ ((((entry) * (size) + 1) & (SECTOR_SIZE - 1)) - 1)
-+
-+#endif /* _GPT_H */
-diff -ruBbd --unidirectional-new-file grub-0.96/stage2/pc_slice.h grub-0.96-patched/stage2/pc_slice.h
---- grub-0.96/stage2/pc_slice.h 2003-07-09 07:45:53.000000000 -0400
-+++ grub-0.96-patched/stage2/pc_slice.h 2007-01-04 13:52:14.000000000 -0500
-@@ -115,6 +115,7 @@
- #define PC_SLICE_TYPE_LINUX_EXTENDED 0x85
- #define PC_SLICE_TYPE_VSTAFS 0x9e
- #define PC_SLICE_TYPE_DELL_UTIL 0xde
-+#define PC_SLICE_TYPE_GPT 0xee
- #define PC_SLICE_TYPE_LINUX_RAID 0xfd
-
-
-diff -ruBbd --unidirectional-new-file grub-0.96/stage2/shared.h grub-0.96-patched/stage2/shared.h
---- grub-0.96/stage2/shared.h 2004-06-19 12:40:09.000000000 -0400
-+++ grub-0.96-patched/stage2/shared.h 2007-01-04 13:52:15.000000000 -0500
-@@ -934,7 +934,9 @@
- unsigned long *partition, int *type,
- unsigned long *start, unsigned long *len,
- unsigned long *offset, int *entry,
-- unsigned long *ext_offset, char *buf);
-+ unsigned long *ext_offset,
-+ unsigned long *gpt_offset, int *gpt_count,
-+ int *gpt_size, char *buf);
-
- /* Sets device to the one represented by the SAVED_* parameters. */
- int make_saved_active (void);
diff --git a/sys-boot/grub/grub-0.92-r1.ebuild b/sys-boot/grub/grub-0.92-r1.ebuild
deleted file mode 100644
index 0e3d55851e28..000000000000
--- a/sys-boot/grub/grub-0.92-r1.ebuild
+++ /dev/null
@@ -1,95 +0,0 @@
-# Copyright 1999-2012 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub/grub-0.92-r1.ebuild,v 1.16 2012/02/29 23:09:30 floppym Exp $
-
-inherit mount-boot eutils flag-o-matic toolchain-funcs
-
-PATCHVER=0.2
-DESCRIPTION="GNU GRUB boot loader"
-HOMEPAGE="http://www.gnu.org/software/grub/"
-SRC_URI="mirror://gnu-alpha/grub/${P}.tar.gz
- http://dev.gentoo.org/~seemant/distfiles/${P}-gentoo-${PATCHVER}.tar.bz2
- http://dev.gentoo.org/~seemant/distfiles/splash.xpm.gz
- mirror://gentoo/splash.xpm.gz
- mirror://gentoo/${P}-gentoo-${PATCHVER}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="-* x86"
-IUSE=""
-
-DEPEND=">=sys-libs/ncurses-5.2-r5"
-
-PATCHDIR="${WORKDIR}/gentoo"
-
-src_unpack() {
- unpack ${A} ; cd "${S}"
-
- EPATCH_SUFFIX="patch"
-
- epatch "${PATCHDIR}"
-
- if [ "`gcc-version`" = "3.3" ]
- then
- epatch "${PATCHDIR}"/gcc-3.3
- fi
-}
-
-src_compile() {
- filter-flags "-fstack-protector"
-
- unset BLOCK_SIZE #73499
-
- #i686-specific code in the boot loader is a bad idea; disabling to ensure
- #at least some compatibility if the hard drive is moved to an older or
- #incompatible system.
- unset CFLAGS
- ./configure --prefix=/usr \
- --sbindir=/sbin \
- --mandir=/usr/share/man \
- --infodir=/usr/share/info \
- --disable-auto-linux-mem-opt \
- || die "Configuration of package failed."
-
- #the vga16.patch changes configure.in but not configure so
- #--enable-vga16 doesnt work. config.h gets overwritten by make.
- echo "#define VGA16 1" >> config.h.in
-
- emake || die "Building failed!"
-}
-
-src_install() {
- make \
- prefix="${D}"/usr \
- sbindir="${D}"/sbin \
- mandir="${D}"/usr/share/man \
- infodir="${D}"/usr/share/info \
- install || die "Installation failed."
-
- insinto /boot/grub
- doins "${DISTDIR}"/splash.xpm.gz
- dodoc AUTHORS BUGS ChangeLog NEWS README THANKS TODO
-}
-
-pkg_postinst() {
- [ "$ROOT" != "/" ] && return 0
- if [ ! -e /boot/grub/stage1 ]
- then
- #if the boot loader files aren't in place, copy them over.
- cd /usr/share/grub/i386-pc
- cp stage1 stage2 *stage1_5 /boot/grub
- else
- einfo '*** A new GRUB has been installed. If you need to reinstall'
- einfo '*** GRUB to a boot record on your drive, please remember to'
- einfo '*** "cp /usr/share/grub/i386-pc/*stage* /boot/grub" first.'
- einfo "*** If you're using XFS, unmount and remount /boot as well."
- fi
-
- # change menu.lst to grub.conf
- if [ ! -e /boot/grub/grub.conf -a -e /boot/grub/menu.lst ]
- then
- mv /boot/grub/menu.lst /boot/grub/grub.conf
- ln -s grub.conf /boot/grub/menu.lst
- einfo "*** IMPORTANT NOTE: menu.lst has been renamed to grub.conf"
- fi
-}
diff --git a/sys-boot/grub/grub-0.94-r1.ebuild b/sys-boot/grub/grub-0.94-r1.ebuild
deleted file mode 100644
index 2e736f6efe28..000000000000
--- a/sys-boot/grub/grub-0.94-r1.ebuild
+++ /dev/null
@@ -1,131 +0,0 @@
-# Copyright 1999-2012 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub/grub-0.94-r1.ebuild,v 1.28 2012/02/29 23:09:30 floppym Exp $
-
-inherit mount-boot eutils flag-o-matic toolchain-funcs
-
-PATCHVER=0.1
-DESCRIPTION="GNU GRUB boot loader"
-HOMEPAGE="http://www.gnu.org/software/grub/"
-SRC_URI="mirror://gnu-alpha/grub/${P}.tar.gz
- http://dev.gentoo.org/~seemant/distfiles/${P}-gentoo-${PATCHVER}.tar.bz2
- http://dev.gentoo.org/~seemant/distfiles/splash.xpm.gz
- mirror://gentoo/splash.xpm.gz
- mirror://gentoo/${P}-gentoo-${PATCHVER}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="-* x86 amd64"
-IUSE="static"
-
-RDEPEND=">=sys-libs/ncurses-5.2-r5"
-DEPEND="${RDEPEND}
- >=sys-devel/automake-1.7
- >=sys-devel/autoconf-2.5"
-
-PATCHDIR="${WORKDIR}/gentoo"
-
-pkg_setup() {
- if use amd64; then
- ABI_ALLOW="x86"
- ABI="x86"
- fi
-}
-
-src_unpack() {
- unpack ${A}; cd "${S}"
-
- EPATCH_SUFFIX="patch"
-
- epatch "${PATCHDIR}"
-}
-
-src_compile() {
- unset BLOCK_SIZE #73499
-
- ### i686-specific code in the boot loader is a bad idea; disabling to ensure
- ### at least some compatibility if the hard drive is moved to an older or
- ### incompatible system.
- unset CFLAGS
-
- filter-ldflags -pie
- append-flags -DNDEBUG
- [ `gcc-major-version` -eq 3 ] && append-flags -minline-all-stringops
- use static && append-ldflags -static
-
- autoconf || die
- aclocal || die
- WANT_AUTOMAKE=1.7 automake || die
-
- # build the net-bootable grub first
- CFLAGS="" \
- econf \
- --libdir=/lib \
- --datadir=/usr/lib/grub \
- --exec-prefix=/ \
- --disable-auto-linux-mem-opt \
- --enable-diskless \
- --enable-{3c{5{03,07,09,29,95},90x},cs89x0,davicom,depca,eepro{,100}} \
- --enable-{epic100,exos205,ni5210,lance,ne2100,ni{50,65}10,natsemi} \
- --enable-{ne,ns8390,wd,otulip,rtl8139,sis900,sk-g16,smc9000,tiara} \
- --enable-{tulip,via-rhine,w89c840} || die
-
- emake w89c840_o_CFLAGS="-O" || die "making netboot stuff"
-
- mv stage2/{nbgrub,pxegrub} "${S}"
- mv stage2/stage2 stage2/stage2.netboot
-
- make clean || die
-
- # now build the regular grub
- CFLAGS="${CFLAGS}" \
- econf \
- --libdir=/lib \
- --datadir=/usr/lib/grub \
- --exec-prefix=/ \
- --disable-auto-linux-mem-opt || die
- emake || die "making regular stuff"
-}
-
-src_install() {
- make DESTDIR="${D}" install || die
- exeinto /usr/lib/grub/${CHOST}
- doexe nbgrub pxegrub stage2/stage2 stage2/stage2.netboot
-
- insinto /boot/grub
- doins "${DISTDIR}"/splash.xpm.gz
- newins docs/menu.lst grub.conf.sample
-
- dodoc AUTHORS BUGS ChangeLog NEWS README THANKS TODO
- newdoc docs/menu.lst grub.conf.sample
-
- docinto gentoo
- dodoc "${PATCHDIR}"/README*
-}
-
-pkg_postinst() {
- [ "$ROOT" != "/" ] && return 0
-
- # change menu.lst to grub.conf
- if [ ! -e /boot/grub/grub.conf -a -e /boot/grub/menu.lst ]
- then
- mv /boot/grub/menu.lst /boot/grub/grub.conf
- ewarn
- ewarn "*** IMPORTANT NOTE: menu.lst has been renamed to grub.conf"
- ewarn
- fi
- einfo "Linking from new grub.conf name to menu.lst"
- ln -s grub.conf /boot/grub/menu.lst
-
- [ -e /boot/grub/stage2 ] && mv /boot/grub/stage2{,.old}
-
- einfo "Copying files from /usr/lib/grub to /boot"
- cp -p /usr/lib/grub/* /boot/grub
- cp -p /usr/lib/grub/grub/*/* /boot/grub
-
- [ -e /boot/grub/grub.conf ] \
- && /usr/sbin/grub \
- --batch \
- --device-map=/boot/grub/device.map \
- < /boot/grub/grub.conf > /dev/null 2>&1
-}
diff --git a/sys-boot/grub/grub-0.96-r1.ebuild b/sys-boot/grub/grub-0.96-r1.ebuild
deleted file mode 100644
index 88c4932d661a..000000000000
--- a/sys-boot/grub/grub-0.96-r1.ebuild
+++ /dev/null
@@ -1,150 +0,0 @@
-# Copyright 1999-2012 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub/grub-0.96-r1.ebuild,v 1.19 2012/02/29 23:09:30 floppym Exp $
-
-inherit mount-boot eutils flag-o-matic toolchain-funcs
-
-PATCHVER=0.1
-DESCRIPTION="GNU GRUB boot loader"
-HOMEPAGE="http://www.gnu.org/software/grub/"
-SRC_URI="mirror://gentoo/${P}.tar.gz
- mirror://gnu-alpha/${PN}/${P}.tar.gz
- http://dev.gentoo.org/~seemant/distfiles/${PF}-gentoo-${PATCHVER}.tar.bz2
- http://dev.gentoo.org/~seemant/distfiles/splash.xpm.gz
- mirror://gentoo/splash.xpm.gz
- mirror://gentoo/${PF}-gentoo-${PATCHVER}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="static netboot custom-cflags"
-
-RDEPEND=">=sys-libs/ncurses-5.2-r5"
-DEPEND="${RDEPEND}
- >=sys-devel/automake-1.7
- >=sys-devel/autoconf-2.5"
-
-PATCHDIR="${WORKDIR}/gentoo"
-
-pkg_setup() {
- if use amd64; then
- ABI_ALLOW="x86"
- ABI="x86"
- fi
-}
-
-src_unpack() {
- unpack ${A} ; cd "${S}"
-
- EPATCH_SUFFIX="patch"
- epatch "${PATCHDIR}"
-
- # a bunch of patches apply to raw autotool files
- autoconf || die "autoconf failed"
- aclocal || die "aclocal failed"
- automake || die "automake failed"
-}
-
-src_compile() {
- unset BLOCK_SIZE #73499
-
- ### i686-specific code in the boot loader is a bad idea; disabling to ensure
- ### at least some compatibility if the hard drive is moved to an older or
- ### incompatible system.
-
- # grub-0.95 added -fno-stack-protector detection, to disable ssp for stage2,
- # but the objcopy's (faulty) test fails if -fstack-protector is default.
- # create a cache telling configure that objcopy is ok, and add -C to econf
- # to make use of the cache.
- #
- # CFLAGS has to be undefined running econf, else -fno-stack-protector detection fails.
- # STAGE2_CFLAGS is not allowed to be used on emake command-line, it overwrites
- # -fno-stack-protector detected by configure, removed from netboot's emake.
- use custom-cflags || unset CFLAGS
-
- export grub_cv_prog_objcopy_absolute=yes #79734
- use static && append-ldflags -static
-
- # build the net-bootable grub first, but only if "netboot" is set
- if use netboot ; then
- econf \
- --libdir=/lib \
- --datadir=/usr/lib/grub \
- --exec-prefix=/ \
- --disable-auto-linux-mem-opt \
- --enable-diskless \
- --enable-{3c{5{03,07,09,29,95},90x},cs89x0,davicom,depca,eepro{,100}} \
- --enable-{epic100,exos205,ni5210,lance,ne2100,ni{50,65}10,natsemi} \
- --enable-{ne,ns8390,wd,otulip,rtl8139,sis900,sk-g16,smc9000,tiara} \
- --enable-{tulip,via-rhine,w89c840} || die "netboot econf failed"
-
- emake w89c840_o_CFLAGS="-O" || die "making netboot stuff"
-
- mv -f stage2/{nbgrub,pxegrub} "${S}"/
- mv -f stage2/stage2 stage2/stage2.netboot
-
- make clean || die "make clean failed"
- fi
-
- # Now build the regular grub
- # Note that FFS and UFS2 support are broken for now - stage1_5 files too big
- econf \
- --libdir=/lib \
- --datadir=/usr/lib/grub \
- --exec-prefix=/ \
- --disable-auto-linux-mem-opt || die "econf failed"
- emake || die "making regular stuff"
-}
-
-src_test() {
- # non-default block size also give false pass/fails.
- unset BLOCK_SIZE
- make check || die "make check failed"
-}
-
-src_install() {
- make DESTDIR="${D}" install || die
- exeinto /usr/lib/grub/${CHOST}
- use netboot && doexe nbgrub pxegrub stage2/stage2.netboot
-
- insinto /boot/grub
- doins "${DISTDIR}"/splash.xpm.gz
- newins docs/menu.lst grub.conf.sample
-
- dodoc AUTHORS BUGS ChangeLog NEWS README THANKS TODO
- newdoc docs/menu.lst grub.conf.sample
-
- docinto gentoo
- dodoc "${PATCHDIR}"/README.Gentoo.patches
-}
-
-pkg_postinst() {
- [[ "${ROOT}" != "/" ]] && return 0
-
- # change menu.lst to grub.conf
- if [[ ! -e /boot/grub/grub.conf && -e /boot/grub/menu.lst ]] ; then
- mv -f /boot/grub/menu.lst /boot/grub/grub.conf
- ewarn
- ewarn "*** IMPORTANT NOTE: menu.lst has been renamed to grub.conf"
- ewarn
- fi
- einfo "Linking from new grub.conf name to menu.lst"
- [[ ! -e /boot/grub/menu.lst ]] && ln -snf grub.conf /boot/grub/menu.lst
-
- [[ -e /boot/grub/stage2 ]] && mv /boot/grub/stage2{,.old}
-
- einfo "Copying files from /lib/grub and /usr/lib/grub to /boot"
- for x in /lib/grub/*/* /usr/lib/grub/*/* ; do
- [[ -f "${x}" ]] && cp -p "${x}" /boot/grub
- done
-
- # hardened voodoo
- [[ -x /sbin/chpax ]] && /sbin/chpax -spme /sbin/grub
- [[ -x /sbin/paxctl ]] && /sbin/paxctl -spme /sbin/grub
-
- [[ -e /boot/grub/grub.conf ]] \
- && /sbin/grub \
- --batch \
- --device-map=/boot/grub/device.map \
- < /boot/grub/grub.conf > /dev/null 2>&1
-}
diff --git a/sys-boot/grub/grub-0.96-r2.ebuild b/sys-boot/grub/grub-0.96-r2.ebuild
deleted file mode 100644
index 4c30e9a3f0f7..000000000000
--- a/sys-boot/grub/grub-0.96-r2.ebuild
+++ /dev/null
@@ -1,146 +0,0 @@
-# Copyright 1999-2012 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub/grub-0.96-r2.ebuild,v 1.13 2012/02/29 23:09:30 floppym Exp $
-
-inherit mount-boot eutils flag-o-matic toolchain-funcs
-
-PATCHVER=0.1
-DESCRIPTION="GNU GRUB boot loader"
-HOMEPAGE="http://www.gnu.org/software/grub/"
-SRC_URI="mirror://gentoo/${P}.tar.gz
- mirror://gnu-alpha/${PN}/${P}.tar.gz
- http://dev.gentoo.org/~seemant/distfiles/${PF}-gentoo-${PATCHVER}.tar.bz2
- http://dev.gentoo.org/~seemant/distfiles/splash.xpm.gz
- mirror://gentoo/splash.xpm.gz
- mirror://gentoo/${PF}-gentoo-${PATCHVER}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="static netboot custom-cflags"
-
-RDEPEND=">=sys-libs/ncurses-5.2-r5"
-DEPEND="${RDEPEND}
- >=sys-devel/automake-1.7
- >=sys-devel/autoconf-2.5"
-
-PATCHDIR="${WORKDIR}/gentoo"
-
-pkg_setup() {
- if use amd64; then
- ABI_ALLOW="x86"
- ABI="x86"
- fi
-}
-
-src_unpack() {
- unpack ${A} ; cd "${S}"
-
- EPATCH_SUFFIX="patch"
- epatch "${PATCHDIR}"
-
- # a bunch of patches apply to raw autotool files
- autoconf || die "autoconf failed"
- aclocal || die "aclocal failed"
- automake || die "automake failed"
-}
-
-src_compile() {
- unset BLOCK_SIZE #73499
-
- ### i686-specific code in the boot loader is a bad idea; disabling to ensure
- ### at least some compatibility if the hard drive is moved to an older or
- ### incompatible system.
-
- # grub-0.95 added -fno-stack-protector detection, to disable ssp for stage2,
- # but the objcopy's (faulty) test fails if -fstack-protector is default.
- # create a cache telling configure that objcopy is ok, and add -C to econf
- # to make use of the cache.
- #
- # CFLAGS has to be undefined running econf, else -fno-stack-protector detection fails.
- # STAGE2_CFLAGS is not allowed to be used on emake command-line, it overwrites
- # -fno-stack-protector detected by configure, removed from netboot's emake.
- use custom-cflags || unset CFLAGS
-
- export grub_cv_prog_objcopy_absolute=yes #79734
- use static && append-ldflags -static
-
- # build the net-bootable grub first, but only if "netboot" is set
- if use netboot ; then
- econf \
- --libdir=/lib \
- --datadir=/usr/lib/grub \
- --exec-prefix=/ \
- --disable-auto-linux-mem-opt \
- --enable-diskless \
- --enable-{3c{5{03,07,09,29,95},90x},cs89x0,davicom,depca,eepro{,100}} \
- --enable-{epic100,exos205,ni5210,lance,ne2100,ni{50,65}10,natsemi} \
- --enable-{ne,ns8390,wd,otulip,rtl8139,sis900,sk-g16,smc9000,tiara} \
- --enable-{tulip,via-rhine,w89c840} || die "netboot econf failed"
-
- emake w89c840_o_CFLAGS="-O" || die "making netboot stuff"
-
- mv -f stage2/{nbgrub,pxegrub} "${S}"/
- mv -f stage2/stage2 stage2/stage2.netboot
-
- make clean || die "make clean failed"
- fi
-
- # Now build the regular grub
- # Note that FFS and UFS2 support are broken for now - stage1_5 files too big
- econf \
- --libdir=/lib \
- --datadir=/usr/lib/grub \
- --exec-prefix=/ \
- --disable-auto-linux-mem-opt || die "econf failed"
- emake || die "making regular stuff"
-}
-
-src_test() {
- # non-default block size also give false pass/fails.
- unset BLOCK_SIZE
- make check || die "make check failed"
-}
-
-src_install() {
- make DESTDIR="${D}" install || die
- exeinto /usr/lib/grub/${CHOST}
- use netboot && doexe nbgrub pxegrub stage2/stage2.netboot
-
- insinto /boot/grub
- doins "${DISTDIR}"/splash.xpm.gz
- newins docs/menu.lst grub.conf.sample
-
- dodoc AUTHORS BUGS ChangeLog NEWS README THANKS TODO
- newdoc docs/menu.lst grub.conf.sample
-
- docinto gentoo
- dodoc "${PATCHDIR}"/README*
-}
-
-pkg_postinst() {
- [[ "${ROOT}" != "/" ]] && return 0
-
- # change menu.lst to grub.conf
- if [[ ! -e /boot/grub/grub.conf && -e /boot/grub/menu.lst ]] ; then
- mv -f /boot/grub/menu.lst /boot/grub/grub.conf
- ewarn
- ewarn "*** IMPORTANT NOTE: menu.lst has been renamed to grub.conf"
- ewarn
- fi
- einfo "Linking from new grub.conf name to menu.lst"
- [[ ! -e /boot/grub/menu.lst ]] && ln -snf grub.conf /boot/grub/menu.lst
-
- [[ -e /boot/grub/stage2 ]] && mv /boot/grub/stage2{,.old}
-
- einfo "Copying files from /lib/grub and /usr/lib/grub to /boot"
- for x in /lib/grub/*/* /usr/lib/grub/*/* ; do
- [[ -f "${x}" ]] && cp -p "${x}" /boot/grub
- done
-
- [[ -e /boot/grub/grub.conf ]] \
- && /sbin/grub \
- --batch \
- --device-map=/boot/grub/device.map \
- < /boot/grub/grub.conf > /dev/null 2>&1
-}
diff --git a/sys-boot/grub/grub-0.96-r3.ebuild b/sys-boot/grub/grub-0.96-r3.ebuild
deleted file mode 100644
index 84ab941791f4..000000000000
--- a/sys-boot/grub/grub-0.96-r3.ebuild
+++ /dev/null
@@ -1,145 +0,0 @@
-# Copyright 1999-2012 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub/grub-0.96-r3.ebuild,v 1.7 2012/02/29 23:09:30 floppym Exp $
-
-inherit mount-boot eutils flag-o-matic toolchain-funcs
-
-PATCHVER=1.0
-DESCRIPTION="GNU GRUB boot loader"
-HOMEPAGE="http://www.gnu.org/software/grub/"
-SRC_URI="mirror://gentoo/${P}.tar.gz
- mirror://gnu-alpha/${PN}/${P}.tar.gz
- http://dev.gentoo.org/~seemant/distfiles/${P}-patches-${PATCHVER}.tar.bz2
- http://dev.gentoo.org/~seemant/distfiles/splash.xpm.gz
- mirror://gentoo/splash.xpm.gz
- mirror://gentoo/${P}-patches-${PATCHVER}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="static netboot custom-cflags"
-
-RDEPEND=">=sys-libs/ncurses-5.2-r5"
-DEPEND="${RDEPEND}
- >=sys-devel/automake-1.7
- >=sys-devel/autoconf-2.5"
-
-pkg_setup() {
- if use amd64 ; then
- ABI_ALLOW="x86"
- ABI="x86"
- fi
-}
-
-src_unpack() {
- unpack ${A}
- cd "${S}"
-
- EPATCH_SUFFIX="patch"
- epatch "${WORKDIR}"/patch
-
- # a bunch of patches apply to raw autotool files
- autoconf || die "autoconf failed"
- aclocal || die "aclocal failed"
- automake || die "automake failed"
-}
-
-src_compile() {
- unset BLOCK_SIZE #73499
-
- ### i686-specific code in the boot loader is a bad idea; disabling to ensure
- ### at least some compatibility if the hard drive is moved to an older or
- ### incompatible system.
-
- # grub-0.95 added -fno-stack-protector detection, to disable ssp for stage2,
- # but the objcopy's (faulty) test fails if -fstack-protector is default.
- # create a cache telling configure that objcopy is ok, and add -C to econf
- # to make use of the cache.
- #
- # CFLAGS has to be undefined running econf, else -fno-stack-protector detection fails.
- # STAGE2_CFLAGS is not allowed to be used on emake command-line, it overwrites
- # -fno-stack-protector detected by configure, removed from netboot's emake.
- use custom-cflags || unset CFLAGS
-
- export grub_cv_prog_objcopy_absolute=yes #79734
- use static && append-ldflags -static
-
- # build the net-bootable grub first, but only if "netboot" is set
- if use netboot ; then
- econf \
- --libdir=/lib \
- --datadir=/usr/lib/grub \
- --exec-prefix=/ \
- --disable-auto-linux-mem-opt \
- --enable-diskless \
- --enable-{3c{5{03,07,09,29,95},90x},cs89x0,davicom,depca,eepro{,100}} \
- --enable-{epic100,exos205,ni5210,lance,ne2100,ni{50,65}10,natsemi} \
- --enable-{ne,ns8390,wd,otulip,rtl8139,sis900,sk-g16,smc9000,tiara} \
- --enable-{tulip,via-rhine,w89c840} || die "netboot econf failed"
-
- emake w89c840_o_CFLAGS="-O" || die "making netboot stuff"
-
- mv -f stage2/{nbgrub,pxegrub} "${S}"/
- mv -f stage2/stage2 stage2/stage2.netboot
-
- make clean || die "make clean failed"
- fi
-
- # Now build the regular grub
- # Note that FFS and UFS2 support are broken for now - stage1_5 files too big
- econf \
- --libdir=/lib \
- --datadir=/usr/lib/grub \
- --exec-prefix=/ \
- --disable-auto-linux-mem-opt || die "econf failed"
- emake || die "making regular stuff"
-}
-
-src_test() {
- # non-default block size also give false pass/fails.
- unset BLOCK_SIZE
- make check || die "make check failed"
-}
-
-src_install() {
- make DESTDIR="${D}" install || die
- exeinto /usr/lib/grub/${CHOST}
- use netboot && doexe nbgrub pxegrub stage2/stage2.netboot
-
- insinto /boot/grub
- doins "${DISTDIR}"/splash.xpm.gz
- newins docs/menu.lst grub.conf.sample
-
- dodoc AUTHORS BUGS ChangeLog NEWS README THANKS TODO
- newdoc docs/menu.lst grub.conf.sample
-
- docinto gentoo
- dodoc "${PATCHDIR}"/README*
-}
-
-pkg_postinst() {
- [[ "${ROOT}" != "/" ]] && return 0
-
- # change menu.lst to grub.conf
- if [[ ! -e /boot/grub/grub.conf && -e /boot/grub/menu.lst ]] ; then
- mv -f /boot/grub/menu.lst /boot/grub/grub.conf
- ewarn
- ewarn "*** IMPORTANT NOTE: menu.lst has been renamed to grub.conf"
- ewarn
- fi
- einfo "Linking from new grub.conf name to menu.lst"
- [[ ! -e /boot/grub/menu.lst ]] && ln -snf grub.conf /boot/grub/menu.lst
-
- [[ -e /boot/grub/stage2 ]] && mv /boot/grub/stage2{,.old}
-
- einfo "Copying files from /lib/grub and /usr/lib/grub to /boot"
- for x in /lib/grub/*/* /usr/lib/grub/*/* ; do
- [[ -f "${x}" ]] && cp -p "${x}" /boot/grub
- done
-
- [[ -e /boot/grub/grub.conf ]] \
- && /sbin/grub \
- --batch \
- --device-map=/boot/grub/device.map \
- < /boot/grub/grub.conf > /dev/null 2>&1
-}
diff --git a/sys-boot/grub/grub-0.97-r2.ebuild b/sys-boot/grub/grub-0.97-r2.ebuild
deleted file mode 100644
index 369d2bef37d2..000000000000
--- a/sys-boot/grub/grub-0.97-r2.ebuild
+++ /dev/null
@@ -1,168 +0,0 @@
-# Copyright 1999-2012 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub/grub-0.97-r2.ebuild,v 1.13 2012/02/29 23:09:30 floppym Exp $
-
-inherit mount-boot eutils flag-o-matic toolchain-funcs
-
-PATCHVER="1.2"
-DESCRIPTION="GNU GRUB Legacy boot loader"
-HOMEPAGE="http://www.gnu.org/software/grub/"
-SRC_URI="mirror://gentoo/${P}.tar.gz
- mirror://gnu-alpha/${PN}/${P}.tar.gz
- mirror://gentoo/splash.xpm.gz
- mirror://gentoo/${P}-patches-${PATCHVER}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="static netboot custom-cflags"
-
-RDEPEND=">=sys-libs/ncurses-5.2-r5"
-DEPEND="${RDEPEND}
- =sys-devel/automake-1.9*
- >=sys-devel/autoconf-2.5"
-
-pkg_setup() {
- if use amd64 ; then
- ABI_ALLOW="x86"
- ABI="x86"
- fi
-}
-
-src_unpack() {
- unpack ${A}
- cd "${S}"
-
- # patch breaks booting for some people #111885
- rm "${WORKDIR}"/patch/400_*
-
- if [[ -n ${PATCHVER} ]] ; then
- EPATCH_SUFFIX="patch"
- epatch "${WORKDIR}"/patch
-
- # a bunch of patches apply to raw autotool files
- autoconf || die "autoconf failed"
- aclocal || die "aclocal failed"
- automake || die "automake failed"
- fi
-}
-
-src_compile() {
- unset BLOCK_SIZE #73499
-
- ### i686-specific code in the boot loader is a bad idea; disabling to ensure
- ### at least some compatibility if the hard drive is moved to an older or
- ### incompatible system.
-
- # grub-0.95 added -fno-stack-protector detection, to disable ssp for stage2,
- # but the objcopy's (faulty) test fails if -fstack-protector is default.
- # create a cache telling configure that objcopy is ok, and add -C to econf
- # to make use of the cache.
- #
- # CFLAGS has to be undefined running econf, else -fno-stack-protector detection fails.
- # STAGE2_CFLAGS is not allowed to be used on emake command-line, it overwrites
- # -fno-stack-protector detected by configure, removed from netboot's emake.
- use custom-cflags || unset CFLAGS
-
- export grub_cv_prog_objcopy_absolute=yes #79734
- use static && append-ldflags -static
-
- # build the net-bootable grub first, but only if "netboot" is set
- if use netboot ; then
- econf \
- --libdir=/lib \
- --datadir=/usr/lib/grub \
- --exec-prefix=/ \
- --disable-auto-linux-mem-opt \
- --enable-diskless \
- --enable-{3c{5{03,07,09,29,95},90x},cs89x0,davicom,depca,eepro{,100}} \
- --enable-{epic100,exos205,ni5210,lance,ne2100,ni{50,65}10,natsemi} \
- --enable-{ne,ns8390,wd,otulip,rtl8139,sis900,sk-g16,smc9000,tiara} \
- --enable-{tulip,via-rhine,w89c840} || die "netboot econf failed"
-
- emake w89c840_o_CFLAGS="-O" || die "making netboot stuff"
-
- mv -f stage2/{nbgrub,pxegrub} "${S}"/
- mv -f stage2/stage2 stage2/stage2.netboot
-
- make clean || die "make clean failed"
- fi
-
- # Now build the regular grub
- # Note that FFS and UFS2 support are broken for now - stage1_5 files too big
- econf \
- --libdir=/lib \
- --datadir=/usr/lib/grub \
- --exec-prefix=/ \
- --disable-auto-linux-mem-opt || die "econf failed"
- emake || die "making regular stuff"
-}
-
-src_test() {
- # non-default block size also give false pass/fails.
- unset BLOCK_SIZE
- make check || die "make check failed"
-}
-
-src_install() {
- make DESTDIR="${D}" install || die
- if use netboot ; then
- exeinto /usr/lib/grub/${CHOST}
- doexe nbgrub pxegrub stage2/stage2.netboot || die "netboot install"
- fi
-
- insinto /boot/grub
- doins "${DISTDIR}"/splash.xpm.gz
- newins docs/menu.lst grub.conf.sample
-
- dodoc AUTHORS BUGS ChangeLog NEWS README THANKS TODO
- newdoc docs/menu.lst grub.conf.sample
-}
-
-setup_boot_dir() {
- local dir="${1}"
-
- [[ ! -e "${dir}" ]] && die "${dir} does not exist!"
- [[ ! -e "${dir}"/grub ]] && mkdir "${dir}/grub"
-
- # change menu.lst to grub.conf
- if [[ ! -e "${dir}"/grub/grub.conf ]] && [[ -e "${dir}"/grub/menu.lst ]] ; then
- mv -f "${dir}"/grub/menu.lst "${dir}"/grub/grub.conf
- ewarn
- ewarn "*** IMPORTANT NOTE: menu.lst has been renamed to grub.conf"
- ewarn
- fi
-
- if [[ ! -e "${dir}"/grub/menu.lst ]]; then
- einfo "Linking from new grub.conf name to menu.lst"
- ln -snf grub.conf "${dir}/grub/menu.lst"
- fi
-
- [[ -e "${dir}"/grub/stage2 ]] && mv "${dir}"/grub/stage2{,.old}
-
- einfo "Copying files from /lib/grub and /usr/lib/grub to "${dir}""
- for x in /lib*/grub/*/* /usr/lib*/grub/*/* ; do
- [[ -f "${x}" ]] && cp -p "${x}" "${dir}"/grub/
- done
-
- if [[ -e "${dir}"/grub/grub.conf ]] ; then
- egrep -v '^[[:space:]]*(#|$|default|fallback|splashimage|timeout|title)' "${dir}"/grub/grub.conf | \
- /sbin/grub --batch \
- --device-map="${dir}"/grub/device.map \
- > /dev/null
- fi
-}
-
-pkg_postinst() {
- [[ "${ROOT}" != "/" ]] && return 0
- setup_boot_dir /boot
- einfo "To install grub files to another device (like a usb stick), just run:"
- einfo " emerge --config =${PF}"
-}
-
-pkg_config() {
- local dir
- einfo "Enter the directory where you want to setup grub:"
- read dir
- setup_boot_dir "${dir}"
-}
diff --git a/sys-boot/grub/grub-0.97-r3.ebuild b/sys-boot/grub/grub-0.97-r3.ebuild
deleted file mode 100644
index 2da2ba547dd0..000000000000
--- a/sys-boot/grub/grub-0.97-r3.ebuild
+++ /dev/null
@@ -1,161 +0,0 @@
-# Copyright 1999-2012 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub/grub-0.97-r3.ebuild,v 1.14 2012/05/31 00:01:18 vapier Exp $
-
-inherit mount-boot eutils flag-o-matic toolchain-funcs autotools multilib
-
-PATCHVER="1.4"
-DESCRIPTION="GNU GRUB Legacy boot loader"
-HOMEPAGE="http://www.gnu.org/software/grub/"
-SRC_URI="mirror://gentoo/${P}.tar.gz
- mirror://gnu-alpha/${PN}/${P}.tar.gz
- mirror://gentoo/splash.xpm.gz
- mirror://gentoo/${P}-patches-${PATCHVER}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 x86 ~x86-fbsd"
-IUSE="static netboot custom-cflags"
-
-DEPEND=">=sys-libs/ncurses-5.2-r5"
-
-src_unpack() {
- unpack ${A}
- cd "${S}"
-
- # patch breaks booting for some people #111885
- rm "${WORKDIR}"/patch/400_*
-
- if [[ -n ${PATCHVER} ]] ; then
- EPATCH_SUFFIX="patch"
- epatch "${WORKDIR}"/patch
- eautoreconf
- fi
-}
-
-src_compile() {
- filter-flags -fPIE #168834
-
- use amd64 && multilib_toolchain_setup x86
-
- unset BLOCK_SIZE #73499
-
- ### i686-specific code in the boot loader is a bad idea; disabling to ensure
- ### at least some compatibility if the hard drive is moved to an older or
- ### incompatible system.
-
- # grub-0.95 added -fno-stack-protector detection, to disable ssp for stage2,
- # but the objcopy's (faulty) test fails if -fstack-protector is default.
- # create a cache telling configure that objcopy is ok, and add -C to econf
- # to make use of the cache.
- #
- # CFLAGS has to be undefined running econf, else -fno-stack-protector detection fails.
- # STAGE2_CFLAGS is not allowed to be used on emake command-line, it overwrites
- # -fno-stack-protector detected by configure, removed from netboot's emake.
- use custom-cflags || unset CFLAGS
-
- export grub_cv_prog_objcopy_absolute=yes #79734
- use static && append-ldflags -static
-
- # build the net-bootable grub first, but only if "netboot" is set
- if use netboot ; then
- econf \
- --libdir=/lib \
- --datadir=/usr/lib/grub \
- --exec-prefix=/ \
- --disable-auto-linux-mem-opt \
- --enable-diskless \
- --enable-{3c{5{03,07,09,29,95},90x},cs89x0,davicom,depca,eepro{,100}} \
- --enable-{epic100,exos205,ni5210,lance,ne2100,ni{50,65}10,natsemi} \
- --enable-{ne,ns8390,wd,otulip,rtl8139,sis900,sk-g16,smc9000,tiara} \
- --enable-{tulip,via-rhine,w89c840} || die "netboot econf failed"
-
- emake w89c840_o_CFLAGS="-O" || die "making netboot stuff"
-
- mv -f stage2/{nbgrub,pxegrub} "${S}"/
- mv -f stage2/stage2 stage2/stage2.netboot
-
- make clean || die "make clean failed"
- fi
-
- # Now build the regular grub
- # Note that FFS and UFS2 support are broken for now - stage1_5 files too big
- econf \
- --libdir=/lib \
- --datadir=/usr/lib/grub \
- --exec-prefix=/ \
- --disable-auto-linux-mem-opt || die "econf failed"
- emake || die "making regular stuff"
-}
-
-src_test() {
- # non-default block size also give false pass/fails.
- unset BLOCK_SIZE
- make check || die "make check failed"
-}
-
-src_install() {
- make DESTDIR="${D}" install || die
- if use netboot ; then
- exeinto /usr/lib/grub/${CHOST}
- doexe nbgrub pxegrub stage2/stage2.netboot || die "netboot install"
- fi
-
- insinto /boot/grub
- doins "${DISTDIR}"/splash.xpm.gz
- newins docs/menu.lst grub.conf.sample
-
- dodoc AUTHORS BUGS ChangeLog NEWS README THANKS TODO
- newdoc docs/menu.lst grub.conf.sample
-}
-
-setup_boot_dir() {
- local dir="${1}"
-
- [[ ! -e "${dir}" ]] && die "${dir} does not exist!"
- [[ ! -e "${dir}"/grub ]] && mkdir "${dir}/grub"
-
- # change menu.lst to grub.conf
- if [[ ! -e "${dir}"/grub/grub.conf ]] && [[ -e "${dir}"/grub/menu.lst ]] ; then
- mv -f "${dir}"/grub/menu.lst "${dir}"/grub/grub.conf
- ewarn
- ewarn "*** IMPORTANT NOTE: menu.lst has been renamed to grub.conf"
- ewarn
- fi
-
- if [[ ! -e "${dir}"/grub/menu.lst ]]; then
- einfo "Linking from new grub.conf name to menu.lst"
- ln -snf grub.conf "${dir}"/grub/menu.lst
- fi
-
- [[ -e "${dir}"/grub/stage2 ]] && mv "${dir}"/grub/stage2{,.old}
-
- einfo "Copying files from /lib/grub and /usr/lib/grub to ${dir}"
- for x in /lib*/grub/*/* /usr/lib*/grub/*/* ; do
- [[ -f "${x}" ]] && cp -p "${x}" "${dir}"/grub/
- done
-
- if [[ -e "${dir}"/grub/grub.conf ]] ; then
- egrep \
- -v '^[[:space:]]*(#|$|default|fallback|initrd|password|splashimage|timeout|title)' \
- "${dir}"/grub/grub.conf | \
- /sbin/grub --batch \
- --device-map="${dir}"/grub/device.map \
- > /dev/null
- fi
-}
-
-pkg_postinst() {
- [[ "${ROOT}" != "/" ]] && return 0
- [[ -n ${DONT_MOUNT_BOOT} ]] && return 0
- setup_boot_dir /boot
- einfo "To install grub files to another device (like a usb stick), just run:"
- einfo " emerge --config =${PF}"
-}
-
-pkg_config() {
- local dir
- einfo "Enter the directory where you want to setup grub:"
- read dir
- setup_boot_dir "${dir}"
-}
diff --git a/sys-boot/grub/grub-0.97-r4.ebuild b/sys-boot/grub/grub-0.97-r4.ebuild
deleted file mode 100644
index 2c18753fbaa2..000000000000
--- a/sys-boot/grub/grub-0.97-r4.ebuild
+++ /dev/null
@@ -1,172 +0,0 @@
-# Copyright 1999-2012 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub/grub-0.97-r4.ebuild,v 1.8 2012/05/31 00:01:18 vapier Exp $
-
-inherit mount-boot eutils flag-o-matic toolchain-funcs autotools multilib
-
-PATCHVER="1.4"
-DESCRIPTION="GNU GRUB Legacy boot loader"
-HOMEPAGE="http://www.gnu.org/software/grub/"
-SRC_URI="mirror://gentoo/${P}.tar.gz
- mirror://gnu-alpha/${PN}/${P}.tar.gz
- mirror://gentoo/splash.xpm.gz
- mirror://gentoo/${P}-patches-${PATCHVER}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 x86 ~x86-fbsd"
-IUSE="static netboot custom-cflags"
-
-DEPEND=">=sys-libs/ncurses-5.2-r5"
-
-src_unpack() {
- unpack ${A}
- cd "${S}"
-
- # patch breaks booting for some people #111885
- rm "${WORKDIR}"/patch/400_*
-
- epatch "${FILESDIR}"/grub-0.97-gpt.patch
-
- if [[ -n ${PATCHVER} ]] ; then
- EPATCH_SUFFIX="patch"
- epatch "${WORKDIR}"/patch
- eautoreconf
- fi
-}
-
-src_compile() {
- filter-flags -fPIE #168834
-
- use amd64 && multilib_toolchain_setup x86
-
- unset BLOCK_SIZE #73499
-
- ### i686-specific code in the boot loader is a bad idea; disabling to ensure
- ### at least some compatibility if the hard drive is moved to an older or
- ### incompatible system.
-
- # grub-0.95 added -fno-stack-protector detection, to disable ssp for stage2,
- # but the objcopy's (faulty) test fails if -fstack-protector is default.
- # create a cache telling configure that objcopy is ok, and add -C to econf
- # to make use of the cache.
- #
- # CFLAGS has to be undefined running econf, else -fno-stack-protector detection fails.
- # STAGE2_CFLAGS is not allowed to be used on emake command-line, it overwrites
- # -fno-stack-protector detected by configure, removed from netboot's emake.
- use custom-cflags || unset CFLAGS
-
- export grub_cv_prog_objcopy_absolute=yes #79734
- use static && append-ldflags -static
-
- # build the net-bootable grub first, but only if "netboot" is set
- if use netboot ; then
- econf \
- --libdir=/lib \
- --datadir=/usr/lib/grub \
- --exec-prefix=/ \
- --disable-auto-linux-mem-opt \
- --enable-diskless \
- --enable-{3c{5{03,07,09,29,95},90x},cs89x0,davicom,depca,eepro{,100}} \
- --enable-{epic100,exos205,ni5210,lance,ne2100,ni{50,65}10,natsemi} \
- --enable-{ne,ns8390,wd,otulip,rtl8139,sis900,sk-g16,smc9000,tiara} \
- --enable-{tulip,via-rhine,w89c840} || die "netboot econf failed"
-
- emake w89c840_o_CFLAGS="-O" || die "making netboot stuff"
-
- mv -f stage2/{nbgrub,pxegrub} "${S}"/
- mv -f stage2/stage2 stage2/stage2.netboot
-
- make clean || die "make clean failed"
- fi
-
- # Now build the regular grub
- # Note that FFS and UFS2 support are broken for now - stage1_5 files too big
- econf \
- --libdir=/lib \
- --datadir=/usr/lib/grub \
- --exec-prefix=/ \
- --disable-auto-linux-mem-opt || die "econf failed"
- emake || die "making regular stuff"
-}
-
-src_test() {
- # non-default block size also give false pass/fails.
- unset BLOCK_SIZE
- make check || die "make check failed"
-}
-
-src_install() {
- make DESTDIR="${D}" install || die
- if use netboot ; then
- exeinto /usr/lib/grub/${CHOST}
- doexe nbgrub pxegrub stage2/stage2.netboot || die "netboot install"
- fi
-
- insinto /boot/grub
- doins "${DISTDIR}"/splash.xpm.gz
- newins docs/menu.lst grub.conf.sample
-
- dodoc AUTHORS BUGS ChangeLog NEWS README THANKS TODO
- newdoc docs/menu.lst grub.conf.sample
-}
-
-setup_boot_dir() {
- local boot_dir=$1
- local dir=${boot_dir}
-
- [[ ! -e ${dir} ]] && die "${dir} does not exist!"
- dir="${dir}/grub"
- if [[ ! -e ${dir} ]] ; then
- mkdir "${dir}" || die "${dir} does not exist!"
- fi
-
- # change menu.lst to grub.conf
- if [[ ! -e ${dir}/grub.conf ]] && [[ -e ${dir}/menu.lst ]] ; then
- mv -f "${dir}"/menu.lst "${dir}"/grub.conf
- ewarn
- ewarn "*** IMPORTANT NOTE: menu.lst has been renamed to grub.conf"
- ewarn
- fi
-
- if [[ ! -e ${dir}/menu.lst ]]; then
- einfo "Linking from new grub.conf name to menu.lst"
- ln -snf grub.conf "${dir}"/menu.lst
- fi
-
- [[ -e ${dir}/stage2 ]] && mv "${dir}"/stage2{,.old}
-
- einfo "Copying files from /lib/grub and /usr/lib/grub to ${dir}"
- for x in "${ROOT}"/lib*/grub/*/* "${ROOT}"/usr/lib*/grub/*/* ; do
- [[ -f "${x}" ]] && cp -p "${x}" "${dir}"/
- done
-
- if [[ -e ${dir}/grub.conf ]] ; then
- egrep \
- -v '^[[:space:]]*(#|$|default|fallback|initrd|password|splashimage|timeout|title)' \
- "${dir}"/grub.conf | \
- /sbin/grub --batch \
- --device-map="${dir}"/device.map \
- > /dev/null
- fi
-
- # the grub default commands silently piss themselves if
- # the default file does not exist ahead of time
- if [[ ! -e ${dir}/default ]] ; then
- grub-set-default --root-directory="${boot_dir}" default
- fi
-}
-
-pkg_postinst() {
- [[ -n ${DONT_MOUNT_BOOT} ]] && return 0
- setup_boot_dir "${ROOT}"/boot
- einfo "To install grub files to another device (like a usb stick), just run:"
- einfo " emerge --config =${PF}"
-}
-
-pkg_config() {
- local dir
- einfo "Enter the directory where you want to setup grub: "
- read dir
- setup_boot_dir "${dir}"
-}
diff --git a/sys-boot/grub/grub-0.97-r5.ebuild b/sys-boot/grub/grub-0.97-r5.ebuild
deleted file mode 100644
index 9f6681192860..000000000000
--- a/sys-boot/grub/grub-0.97-r5.ebuild
+++ /dev/null
@@ -1,219 +0,0 @@
-# Copyright 1999-2012 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub/grub-0.97-r5.ebuild,v 1.15 2012/05/31 00:01:18 vapier Exp $
-
-# XXX: we need to review menu.lst vs grub.conf handling. We've been converting
-# all systems to grub.conf (and symlinking menu.lst to grub.conf), but
-# we never updated any of the source code (it still all wants menu.lst),
-# and there is no indication that upstream is making the transition.
-
-inherit mount-boot eutils flag-o-matic toolchain-funcs autotools multilib
-
-PATCHVER="1.7"
-DESCRIPTION="GNU GRUB Legacy boot loader"
-HOMEPAGE="http://www.gnu.org/software/grub/"
-SRC_URI="mirror://gentoo/${P}.tar.gz
- mirror://gnu-alpha/${PN}/${P}.tar.gz
- mirror://gentoo/splash.xpm.gz
- mirror://gentoo/${P}-patches-${PATCHVER}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 x86 ~x86-fbsd"
-IUSE="custom-cflags ncurses netboot static"
-
-DEPEND="ncurses? (
- >=sys-libs/ncurses-5.2-r5
- amd64? ( app-emulation/emul-linux-x86-baselibs )
- )"
-
-src_unpack() {
- unpack ${A}
- cd "${S}"
-
- # patch breaks booting for some people #111885
- rm "${WORKDIR}"/patch/400_*
-
- # Grub will not handle a kernel larger than EXTENDED_MEMSIZE Mb as
- # discovered in bug 160801. We can change this, however, using larger values
- # for this variable means that Grub needs more memory to run and boot. For a
- # kernel of size N, Grub needs (N+1)*2. Advanced users should set a custom
- # value in make.conf, it is possible to make kernels ~16Mb in size, but it
- # needs the kitchen sink built-in.
- local t="custom"
- if [[ -z ${GRUB_MAX_KERNEL_SIZE} ]] ; then
- case $(tc-arch) in
- amd64) GRUB_MAX_KERNEL_SIZE=7 ;;
- x86) GRUB_MAX_KERNEL_SIZE=3 ;;
- esac
- t="default"
- fi
- einfo "Grub will support the ${t} maximum kernel size of ${GRUB_MAX_KERNEL_SIZE} Mb (GRUB_MAX_KERNEL_SIZE)"
-
- sed -i \
- -e "/^#define.*EXTENDED_MEMSIZE/s,3,${GRUB_MAX_KERNEL_SIZE},g" \
- "${S}"/grub/asmstub.c \
- || die "Failed to hack memory size"
-
- if [[ -n ${PATCHVER} ]] ; then
- EPATCH_SUFFIX="patch"
- epatch "${WORKDIR}"/patch
- eautoreconf
- fi
-}
-
-src_compile() {
- filter-flags -fPIE #168834
-
- use amd64 && multilib_toolchain_setup x86
-
- unset BLOCK_SIZE #73499
-
- ### i686-specific code in the boot loader is a bad idea; disabling to ensure
- ### at least some compatibility if the hard drive is moved to an older or
- ### incompatible system.
-
- # grub-0.95 added -fno-stack-protector detection, to disable ssp for stage2,
- # but the objcopy's (faulty) test fails if -fstack-protector is default.
- # create a cache telling configure that objcopy is ok, and add -C to econf
- # to make use of the cache.
- #
- # CFLAGS has to be undefined running econf, else -fno-stack-protector detection fails.
- # STAGE2_CFLAGS is not allowed to be used on emake command-line, it overwrites
- # -fno-stack-protector detected by configure, removed from netboot's emake.
- use custom-cflags || unset CFLAGS
-
- export grub_cv_prog_objcopy_absolute=yes #79734
- use static && append-ldflags -static
-
- # Per bug 216625, the emul packages do not provide .a libs for performing
- # suitable static linking
- if use amd64 && use static ; then
- die "You must use the grub-static package if you want a static Grub on amd64!"
- fi
-
- # build the net-bootable grub first, but only if "netboot" is set
- if use netboot ; then
- econf \
- --libdir=/lib \
- --datadir=/usr/lib/grub \
- --exec-prefix=/ \
- --disable-auto-linux-mem-opt \
- --enable-diskless \
- --enable-{3c{5{03,07,09,29,95},90x},cs89x0,davicom,depca,eepro{,100}} \
- --enable-{epic100,exos205,ni5210,lance,ne2100,ni{50,65}10,natsemi} \
- --enable-{ne,ns8390,wd,otulip,rtl8139,sis900,sk-g16,smc9000,tiara} \
- --enable-{tulip,via-rhine,w89c840} || die "netboot econf failed"
-
- emake w89c840_o_CFLAGS="-O" || die "making netboot stuff"
-
- mv -f stage2/{nbgrub,pxegrub} "${S}"/
- mv -f stage2/stage2 stage2/stage2.netboot
-
- make clean || die "make clean failed"
- fi
-
- # Now build the regular grub
- # Note that FFS and UFS2 support are broken for now - stage1_5 files too big
- econf \
- --libdir=/lib \
- --datadir=/usr/lib/grub \
- --exec-prefix=/ \
- --disable-auto-linux-mem-opt \
- $(use_with ncurses curses) \
- || die "econf failed"
-
- # sanity check due to common failure
- use ncurses && ! grep -qs "HAVE_LIBCURSES.*1" config.h && die "USE=ncurses but curses not found"
-
- emake || die "making regular stuff"
-}
-
-src_test() {
- # non-default block size also give false pass/fails.
- unset BLOCK_SIZE
- make check || die "make check failed"
-}
-
-src_install() {
- emake DESTDIR="${D}" install || die
- if use netboot ; then
- exeinto /usr/lib/grub/${CHOST}
- doexe nbgrub pxegrub stage2/stage2.netboot || die "netboot install"
- fi
-
- dodoc AUTHORS BUGS ChangeLog NEWS README THANKS TODO
- newdoc docs/menu.lst grub.conf.sample
-
- insinto /boot/grub
- doins "${DISTDIR}"/splash.xpm.gz
-}
-
-setup_boot_dir() {
- local boot_dir=$1
- local dir=${boot_dir}
-
- [[ ! -e ${dir} ]] && die "${dir} does not exist!"
- [[ ! -L ${dir}/boot ]] && ln -s . "${dir}/boot"
- dir="${dir}/grub"
- if [[ ! -e ${dir} ]] ; then
- mkdir "${dir}" || die "${dir} does not exist!"
- fi
-
- # change menu.lst to grub.conf
- if [[ ! -e ${dir}/grub.conf ]] && [[ -e ${dir}/menu.lst ]] ; then
- mv -f "${dir}"/menu.lst "${dir}"/grub.conf
- ewarn
- ewarn "*** IMPORTANT NOTE: menu.lst has been renamed to grub.conf"
- ewarn
- fi
-
- if [[ ! -e ${dir}/menu.lst ]]; then
- einfo "Linking from new grub.conf name to menu.lst"
- ln -snf grub.conf "${dir}"/menu.lst
- fi
-
- if [[ -e ${dir}/stage2 ]] ; then
- mv "${dir}"/stage2{,.old}
- ewarn "*** IMPORTANT NOTE: you must run grub and install"
- ewarn "the new version's stage1 to your MBR. Until you do,"
- ewarn "stage1 and stage2 will still be the old version, but"
- ewarn "later stages will be the new version, which could"
- ewarn "cause problems such as an unbootable system."
- ebeep
- fi
-
- einfo "Copying files from /lib/grub and /usr/lib/grub to ${dir}"
- for x in "${ROOT}"/lib*/grub/*/* "${ROOT}"/usr/lib*/grub/*/* ; do
- [[ -f ${x} ]] && cp -p "${x}" "${dir}"/
- done
-
- if [[ -e ${dir}/grub.conf ]] ; then
- egrep \
- -v '^[[:space:]]*(#|$|default|fallback|initrd|password|splashimage|timeout|title)' \
- "${dir}"/grub.conf | \
- /sbin/grub --batch \
- --device-map="${dir}"/device.map \
- > /dev/null
- fi
-
- # the grub default commands silently piss themselves if
- # the default file does not exist ahead of time
- if [[ ! -e ${dir}/default ]] ; then
- grub-set-default --root-directory="${boot_dir}" default
- fi
-}
-
-pkg_postinst() {
- [[ -n ${DONT_MOUNT_BOOT} ]] && return 0
- setup_boot_dir "${ROOT}"/boot
- einfo "To install grub files to another device (like a usb stick), just run:"
- einfo " emerge --config =${PF}"
-}
-
-pkg_config() {
- local dir
- einfo "Enter the directory where you want to setup grub:"
- read dir
- setup_boot_dir "${dir}"
-}
diff --git a/sys-boot/grub/grub-0.97-r6.ebuild b/sys-boot/grub/grub-0.97-r6.ebuild
deleted file mode 100644
index ca03df3f3ca3..000000000000
--- a/sys-boot/grub/grub-0.97-r6.ebuild
+++ /dev/null
@@ -1,269 +0,0 @@
-# Copyright 1999-2012 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub/grub-0.97-r6.ebuild,v 1.12 2012/05/31 00:01:18 vapier Exp $
-
-# XXX: we need to review menu.lst vs grub.conf handling. We've been converting
-# all systems to grub.conf (and symlinking menu.lst to grub.conf), but
-# we never updated any of the source code (it still all wants menu.lst),
-# and there is no indication that upstream is making the transition.
-
-inherit mount-boot eutils flag-o-matic toolchain-funcs autotools multilib
-
-PATCHVER="1.7"
-DESCRIPTION="GNU GRUB Legacy boot loader"
-HOMEPAGE="http://www.gnu.org/software/grub/"
-SRC_URI="mirror://gentoo/${P}.tar.gz
- mirror://gnu-alpha/${PN}/${P}.tar.gz
- mirror://gentoo/splash.xpm.gz
- mirror://gentoo/${P}-patches-${PATCHVER}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 x86 ~x86-fbsd"
-IUSE="custom-cflags ncurses netboot static"
-
-DEPEND="ncurses? (
- >=sys-libs/ncurses-5.2-r5
- amd64? ( app-emulation/emul-linux-x86-baselibs )
- )"
-
-src_unpack() {
- unpack ${A}
- cd "${S}"
-
- # patch breaks booting for some people #111885
- rm "${WORKDIR}"/patch/400_*
-
- # Grub will not handle a kernel larger than EXTENDED_MEMSIZE Mb as
- # discovered in bug 160801. We can change this, however, using larger values
- # for this variable means that Grub needs more memory to run and boot. For a
- # kernel of size N, Grub needs (N+1)*2. Advanced users should set a custom
- # value in make.conf, it is possible to make kernels ~16Mb in size, but it
- # needs the kitchen sink built-in.
- local t="custom"
- if [[ -z ${GRUB_MAX_KERNEL_SIZE} ]] ; then
- case $(tc-arch) in
- amd64) GRUB_MAX_KERNEL_SIZE=7 ;;
- x86) GRUB_MAX_KERNEL_SIZE=3 ;;
- esac
- t="default"
- fi
- einfo "Grub will support the ${t} maximum kernel size of ${GRUB_MAX_KERNEL_SIZE} Mb (GRUB_MAX_KERNEL_SIZE)"
-
- sed -i \
- -e "/^#define.*EXTENDED_MEMSIZE/s,3,${GRUB_MAX_KERNEL_SIZE},g" \
- "${S}"/grub/asmstub.c \
- || die "Failed to hack memory size"
-
- if [[ -n ${PATCHVER} ]] ; then
- EPATCH_SUFFIX="patch"
- epatch "${WORKDIR}"/patch
- eautoreconf
- fi
-}
-
-src_compile() {
- filter-flags -fPIE #168834
-
- use amd64 && multilib_toolchain_setup x86
-
- unset BLOCK_SIZE #73499
-
- ### i686-specific code in the boot loader is a bad idea; disabling to ensure
- ### at least some compatibility if the hard drive is moved to an older or
- ### incompatible system.
-
- # grub-0.95 added -fno-stack-protector detection, to disable ssp for stage2,
- # but the objcopy's (faulty) test fails if -fstack-protector is default.
- # create a cache telling configure that objcopy is ok, and add -C to econf
- # to make use of the cache.
- #
- # CFLAGS has to be undefined running econf, else -fno-stack-protector detection fails.
- # STAGE2_CFLAGS is not allowed to be used on emake command-line, it overwrites
- # -fno-stack-protector detected by configure, removed from netboot's emake.
- use custom-cflags || unset CFLAGS
-
- export grub_cv_prog_objcopy_absolute=yes #79734
- use static && append-ldflags -static
-
- # Per bug 216625, the emul packages do not provide .a libs for performing
- # suitable static linking
- if use amd64 && use static ; then
- if [ -z "${GRUB_STATIC_PACKAGE_BUILDING}" ]; then
- die "You must use the grub-static package if you want a static Grub on amd64!"
- else
- eerror "You have set GRUB_STATIC_PACKAGE_BUILDING. This"
- eerror "is specifically intended for building the tarballs for the"
- eerror "grub-static package via USE='static -ncurses'."
- eerror "All bets are now off."
- ebeep 10
- fi
- fi
-
- # build the net-bootable grub first, but only if "netboot" is set
- if use netboot ; then
- econf \
- --libdir=/lib \
- --datadir=/usr/lib/grub \
- --exec-prefix=/ \
- --disable-auto-linux-mem-opt \
- --enable-diskless \
- --enable-{3c{5{03,07,09,29,95},90x},cs89x0,davicom,depca,eepro{,100}} \
- --enable-{epic100,exos205,ni5210,lance,ne2100,ni{50,65}10,natsemi} \
- --enable-{ne,ns8390,wd,otulip,rtl8139,sis900,sk-g16,smc9000,tiara} \
- --enable-{tulip,via-rhine,w89c840} || die "netboot econf failed"
-
- emake w89c840_o_CFLAGS="-O" || die "making netboot stuff"
-
- mv -f stage2/{nbgrub,pxegrub} "${S}"/
- mv -f stage2/stage2 stage2/stage2.netboot
-
- make clean || die "make clean failed"
- fi
-
- # Now build the regular grub
- # Note that FFS and UFS2 support are broken for now - stage1_5 files too big
- econf \
- --libdir=/lib \
- --datadir=/usr/lib/grub \
- --exec-prefix=/ \
- --disable-auto-linux-mem-opt \
- $(use_with ncurses curses) \
- || die "econf failed"
-
- # sanity check due to common failure
- use ncurses && ! grep -qs "HAVE_LIBCURSES.*1" config.h && die "USE=ncurses but curses not found"
-
- emake || die "making regular stuff"
-}
-
-src_test() {
- # non-default block size also give false pass/fails.
- unset BLOCK_SIZE
- make check || die "make check failed"
-}
-
-src_install() {
- emake DESTDIR="${D}" install || die
- if use netboot ; then
- exeinto /usr/lib/grub/${CHOST}
- doexe nbgrub pxegrub stage2/stage2.netboot || die "netboot install"
- fi
-
- dodoc AUTHORS BUGS ChangeLog NEWS README THANKS TODO
- newdoc docs/menu.lst grub.conf.sample
- dodoc "${FILESDIR}"/grub.conf.gentoo
- prepalldocs
-
- [ -n "${GRUB_STATIC_PACKAGE_BUILDING}" ] && \
- mv \
- "${D}"/usr/share/doc/${PF} \
- "${D}"/usr/share/doc/grub-static-${PF/grub-}
-
- insinto /usr/share/grub
- doins "${DISTDIR}"/splash.xpm.gz
-}
-
-setup_boot_dir() {
- local boot_dir=$1
- local dir=${boot_dir}
-
- [[ ! -e ${dir} ]] && die "${dir} does not exist!"
- [[ ! -L ${dir}/boot ]] && ln -s . "${dir}/boot"
- dir="${dir}/grub"
- if [[ ! -e ${dir} ]] ; then
- mkdir "${dir}" || die "${dir} does not exist!"
- fi
-
- # change menu.lst to grub.conf
- if [[ ! -e ${dir}/grub.conf ]] && [[ -e ${dir}/menu.lst ]] ; then
- mv -f "${dir}"/menu.lst "${dir}"/grub.conf
- ewarn
- ewarn "*** IMPORTANT NOTE: menu.lst has been renamed to grub.conf"
- ewarn
- fi
-
- if [[ ! -e ${dir}/menu.lst ]]; then
- einfo "Linking from new grub.conf name to menu.lst"
- ln -snf grub.conf "${dir}"/menu.lst
- fi
-
- if [[ -e ${dir}/stage2 ]] ; then
- mv "${dir}"/stage2{,.old}
- ewarn "*** IMPORTANT NOTE: you must run grub and install"
- ewarn "the new version's stage1 to your MBR. Until you do,"
- ewarn "stage1 and stage2 will still be the old version, but"
- ewarn "later stages will be the new version, which could"
- ewarn "cause problems such as an unbootable system."
- ewarn "This means you must use either grub-install or perform"
- ewarn "root/setup manually! For more help, see the handbook:"
- ewarn "http://www.gentoo.org/doc/en/handbook/handbook-${ARCH}.xml?part=1&chap=10#grub-install-auto"
- ebeep
- fi
-
- einfo "Copying files from /lib/grub, /usr/lib/grub and /usr/share/grub to ${dir}"
- for x in \
- "${ROOT}"/lib*/grub/*/* \
- "${ROOT}"/usr/lib*/grub/*/* \
- "${ROOT}"/usr/share/grub/* ; do
- [[ -f ${x} ]] && cp -p "${x}" "${dir}"/
- done
-
- if [[ ! -e ${dir}/grub.conf ]] ; then
- s="${ROOT}/usr/share/doc/${PF}/grub.conf.gentoo"
- [[ -e "${s}" ]] && cat "${s}" >${dir}/grub.conf
- [[ -e "${s}.gz" ]] && zcat "${s}.gz" >${dir}/grub.conf
- [[ -e "${s}.bz2" ]] && bzcat "${s}.bz2" >${dir}/grub.conf
- fi
-
- # Per bug 218599, we support grub.conf.install for users that want to run a
- # specific set of Grub setup commands rather than the default ones.
- grub_config=${dir}/grub.conf.install
- [[ -e ${grub_config} ]] || grub_config=${dir}/grub.conf
- if [[ -e ${grub_config} ]] ; then
- egrep \
- -v '^[[:space:]]*(#|$|default|fallback|initrd|password|splashimage|timeout|title)' \
- "${grub_config}" | \
- /sbin/grub --batch \
- --device-map="${dir}"/device.map \
- > /dev/null
- fi
-
- # the grub default commands silently piss themselves if
- # the default file does not exist ahead of time
- if [[ ! -e ${dir}/default ]] ; then
- grub-set-default --root-directory="${boot_dir}" default
- fi
- einfo "Grub has been installed to ${boot_dir} successfully."
-}
-
-pkg_postinst() {
- if [[ -n ${DONT_MOUNT_BOOT} ]]; then
- elog "WARNING: you have DONT_MOUNT_BOOT in effect, so you must apply"
- elog "the following instructions for your /boot!"
- elog "Neglecting to do so may cause your system to fail to boot!"
- elog
- else
- setup_boot_dir "${ROOT}"/boot
- # Trailing output because if this is run from pkg_postinst, it gets mixed into
- # the other output.
- einfo ""
- fi
- elog "To interactively install grub files to another device such as a USB"
- elog "stick, just run the following and specify the directory as prompted:"
- elog " emerge --config =${PF}"
- elog "Alternately, you can export GRUB_ALT_INSTALLDIR=/path/to/use to tell"
- elog "grub where to install in a non-interactive way."
-
-}
-
-pkg_config() {
- local dir
- if [ ! -d "${GRUB_ALT_INSTALLDIR}" ]; then
- einfo "Enter the directory where you want to setup grub:"
- read dir
- else
- dir="${GRUB_ALT_INSTALLDIR}"
- fi
- setup_boot_dir "${dir}"
-}
diff --git a/sys-boot/grub/grub-0.97-r8.ebuild b/sys-boot/grub/grub-0.97-r8.ebuild
deleted file mode 100644
index d57d39bf95d6..000000000000
--- a/sys-boot/grub/grub-0.97-r8.ebuild
+++ /dev/null
@@ -1,273 +0,0 @@
-# Copyright 1999-2012 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub/grub-0.97-r8.ebuild,v 1.6 2012/05/31 00:01:18 vapier Exp $
-
-# XXX: we need to review menu.lst vs grub.conf handling. We've been converting
-# all systems to grub.conf (and symlinking menu.lst to grub.conf), but
-# we never updated any of the source code (it still all wants menu.lst),
-# and there is no indication that upstream is making the transition.
-
-inherit mount-boot eutils flag-o-matic toolchain-funcs autotools multilib
-
-PATCHVER="1.8" # Should match the revision ideally
-DESCRIPTION="GNU GRUB Legacy boot loader"
-HOMEPAGE="http://www.gnu.org/software/grub/"
-SRC_URI="mirror://gentoo/${P}.tar.gz
- mirror://gnu-alpha/${PN}/${P}.tar.gz
- mirror://gentoo/splash.xpm.gz
- mirror://gentoo/${P}-patches-${PATCHVER}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86 ~x86-fbsd"
-IUSE="custom-cflags ncurses netboot static"
-
-DEPEND="ncurses? (
- >=sys-libs/ncurses-5.2-r5
- amd64? ( app-emulation/emul-linux-x86-baselibs )
- )"
-
-src_unpack() {
- unpack ${A}
- cd "${S}"
-
- # patch breaks booting for some people #111885
- rm "${WORKDIR}"/patch/400_*
-
- # Grub will not handle a kernel larger than EXTENDED_MEMSIZE Mb as
- # discovered in bug 160801. We can change this, however, using larger values
- # for this variable means that Grub needs more memory to run and boot. For a
- # kernel of size N, Grub needs (N+1)*2. Advanced users should set a custom
- # value in make.conf, it is possible to make kernels ~16Mb in size, but it
- # needs the kitchen sink built-in.
- local t="custom"
- if [[ -z ${GRUB_MAX_KERNEL_SIZE} ]] ; then
- case $(tc-arch) in
- amd64) GRUB_MAX_KERNEL_SIZE=7 ;;
- x86) GRUB_MAX_KERNEL_SIZE=3 ;;
- esac
- t="default"
- fi
- einfo "Grub will support the ${t} maximum kernel size of ${GRUB_MAX_KERNEL_SIZE} Mb (GRUB_MAX_KERNEL_SIZE)"
-
- sed -i \
- -e "/^#define.*EXTENDED_MEMSIZE/s,3,${GRUB_MAX_KERNEL_SIZE},g" \
- "${S}"/grub/asmstub.c \
- || die "Failed to hack memory size"
-
- if [[ -n ${PATCHVER} ]] ; then
- EPATCH_SUFFIX="patch"
- epatch "${WORKDIR}"/patch
- eautoreconf
- fi
-}
-
-src_compile() {
- filter-flags -fPIE #168834
-
- use amd64 && multilib_toolchain_setup x86
-
- unset BLOCK_SIZE #73499
-
- ### i686-specific code in the boot loader is a bad idea; disabling to ensure
- ### at least some compatibility if the hard drive is moved to an older or
- ### incompatible system.
-
- # grub-0.95 added -fno-stack-protector detection, to disable ssp for stage2,
- # but the objcopy's (faulty) test fails if -fstack-protector is default.
- # create a cache telling configure that objcopy is ok, and add -C to econf
- # to make use of the cache.
- #
- # CFLAGS has to be undefined running econf, else -fno-stack-protector detection fails.
- # STAGE2_CFLAGS is not allowed to be used on emake command-line, it overwrites
- # -fno-stack-protector detected by configure, removed from netboot's emake.
- use custom-cflags || unset CFLAGS
-
- export grub_cv_prog_objcopy_absolute=yes #79734
- use static && append-ldflags -static
-
- # Per bug 216625, the emul packages do not provide .a libs for performing
- # suitable static linking
- if use amd64 && use static ; then
- if [ -z "${GRUB_STATIC_PACKAGE_BUILDING}" ]; then
- die "You must use the grub-static package if you want a static Grub on amd64!"
- else
- eerror "You have set GRUB_STATIC_PACKAGE_BUILDING. This"
- eerror "is specifically intended for building the tarballs for the"
- eerror "grub-static package via USE='static -ncurses'."
- eerror "All bets are now off."
- ebeep 10
- fi
- fi
-
- # build the net-bootable grub first, but only if "netboot" is set
- if use netboot ; then
- econf \
- --libdir=/lib \
- --datadir=/usr/lib/grub \
- --exec-prefix=/ \
- --disable-auto-linux-mem-opt \
- --enable-diskless \
- --enable-{3c{5{03,07,09,29,95},90x},cs89x0,davicom,depca,eepro{,100}} \
- --enable-{epic100,exos205,ni5210,lance,ne2100,ni{50,65}10,natsemi} \
- --enable-{ne,ns8390,wd,otulip,rtl8139,sis900,sk-g16,smc9000,tiara} \
- --enable-{tulip,via-rhine,w89c840} || die "netboot econf failed"
-
- emake w89c840_o_CFLAGS="-O" || die "making netboot stuff"
-
- mv -f stage2/{nbgrub,pxegrub} "${S}"/
- mv -f stage2/stage2 stage2/stage2.netboot
-
- make clean || die "make clean failed"
- fi
-
- # Now build the regular grub
- # Note that FFS and UFS2 support are broken for now - stage1_5 files too big
- econf \
- --libdir=/lib \
- --datadir=/usr/lib/grub \
- --exec-prefix=/ \
- --disable-auto-linux-mem-opt \
- $(use_with ncurses curses) \
- || die "econf failed"
-
- # sanity check due to common failure
- use ncurses && ! grep -qs "HAVE_LIBCURSES.*1" config.h && die "USE=ncurses but curses not found"
-
- emake || die "making regular stuff"
-}
-
-src_test() {
- # non-default block size also give false pass/fails.
- unset BLOCK_SIZE
- make check || die "make check failed"
-}
-
-src_install() {
- emake DESTDIR="${D}" install || die
- if use netboot ; then
- exeinto /usr/lib/grub/${CHOST}
- doexe nbgrub pxegrub stage2/stage2.netboot || die "netboot install"
- fi
-
- dodoc AUTHORS BUGS ChangeLog NEWS README THANKS TODO
- newdoc docs/menu.lst grub.conf.sample
- dodoc "${FILESDIR}"/grub.conf.gentoo
- prepalldocs
-
- [ -n "${GRUB_STATIC_PACKAGE_BUILDING}" ] && \
- mv \
- "${D}"/usr/share/doc/${PF} \
- "${D}"/usr/share/doc/grub-static-${PF/grub-}
-
- insinto /usr/share/grub
- doins "${DISTDIR}"/splash.xpm.gz
-}
-
-setup_boot_dir() {
- local boot_dir=$1
- local dir=${boot_dir}
-
- [[ ! -e ${dir} ]] && die "${dir} does not exist!"
- [[ ! -L ${dir}/boot ]] && ln -s . "${dir}/boot"
- dir="${dir}/grub"
- if [[ ! -e ${dir} ]] ; then
- mkdir "${dir}" || die "${dir} does not exist!"
- fi
-
- # change menu.lst to grub.conf
- if [[ ! -e ${dir}/grub.conf ]] && [[ -e ${dir}/menu.lst ]] ; then
- mv -f "${dir}"/menu.lst "${dir}"/grub.conf
- ewarn
- ewarn "*** IMPORTANT NOTE: menu.lst has been renamed to grub.conf"
- ewarn
- fi
-
- if [[ ! -e ${dir}/menu.lst ]]; then
- einfo "Linking from new grub.conf name to menu.lst"
- ln -snf grub.conf "${dir}"/menu.lst
- fi
-
- if [[ -e ${dir}/stage2 ]] ; then
- mv "${dir}"/stage2{,.old}
- ewarn "*** IMPORTANT NOTE: you must run grub and install"
- ewarn "the new version's stage1 to your MBR. Until you do,"
- ewarn "stage1 and stage2 will still be the old version, but"
- ewarn "later stages will be the new version, which could"
- ewarn "cause problems such as an unbootable system."
- ewarn "This means you must use either grub-install or perform"
- ewarn "root/setup manually! For more help, see the handbook:"
- ewarn "http://www.gentoo.org/doc/en/handbook/handbook-${ARCH}.xml?part=1&chap=10#grub-install-auto"
- ebeep
- fi
-
- einfo "Copying files from /lib/grub, /usr/lib/grub and /usr/share/grub to ${dir}"
- for x in \
- "${ROOT}"/lib*/grub/*/* \
- "${ROOT}"/usr/lib*/grub/*/* \
- "${ROOT}"/usr/share/grub/* ; do
- [[ -f ${x} ]] && cp -p "${x}" "${dir}"/
- done
-
- if [[ ! -e ${dir}/grub.conf ]] ; then
- s="${ROOT}/usr/share/doc/${PF}/grub.conf.gentoo"
- [[ -e "${s}" ]] && cat "${s}" >${dir}/grub.conf
- [[ -e "${s}.gz" ]] && zcat "${s}.gz" >${dir}/grub.conf
- [[ -e "${s}.bz2" ]] && bzcat "${s}.bz2" >${dir}/grub.conf
- fi
-
- # Per bug 218599, we support grub.conf.install for users that want to run a
- # specific set of Grub setup commands rather than the default ones.
- grub_config=${dir}/grub.conf.install
- [[ -e ${grub_config} ]] || grub_config=${dir}/grub.conf
- if [[ -e ${grub_config} ]] ; then
- egrep \
- -v '^[[:space:]]*(#|$|default|fallback|initrd|password|splashimage|timeout|title)' \
- "${grub_config}" | \
- /sbin/grub --batch \
- --device-map="${dir}"/device.map \
- > /dev/null
- fi
-
- # the grub default commands silently piss themselves if
- # the default file does not exist ahead of time
- if [[ ! -e ${dir}/default ]] ; then
- grub-set-default --root-directory="${boot_dir}" default
- fi
- einfo "Grub has been installed to ${boot_dir} successfully."
-}
-
-pkg_postinst() {
- mount-boot_mount_boot_partition
-
- if [[ -n ${DONT_MOUNT_BOOT} ]]; then
- elog "WARNING: you have DONT_MOUNT_BOOT in effect, so you must apply"
- elog "the following instructions for your /boot!"
- elog "Neglecting to do so may cause your system to fail to boot!"
- elog
- else
- setup_boot_dir "${ROOT}"/boot
- # Trailing output because if this is run from pkg_postinst, it gets mixed into
- # the other output.
- einfo ""
- fi
- elog "To interactively install grub files to another device such as a USB"
- elog "stick, just run the following and specify the directory as prompted:"
- elog " emerge --config =${PF}"
- elog "Alternately, you can export GRUB_ALT_INSTALLDIR=/path/to/use to tell"
- elog "grub where to install in a non-interactive way."
-
- # needs to be after we call setup_boot_dir
- mount-boot_pkg_postinst
-}
-
-pkg_config() {
- local dir
- if [ ! -d "${GRUB_ALT_INSTALLDIR}" ]; then
- einfo "Enter the directory where you want to setup grub:"
- read dir
- else
- dir="${GRUB_ALT_INSTALLDIR}"
- fi
- setup_boot_dir "${dir}"
-}
diff --git a/sys-boot/grub/grub-0.97-r9.ebuild b/sys-boot/grub/grub-0.97-r9.ebuild
deleted file mode 100644
index 83e98b7b0158..000000000000
--- a/sys-boot/grub/grub-0.97-r9.ebuild
+++ /dev/null
@@ -1,280 +0,0 @@
-# Copyright 1999-2012 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub/grub-0.97-r9.ebuild,v 1.10 2012/05/31 00:01:18 vapier Exp $
-
-# XXX: we need to review menu.lst vs grub.conf handling. We've been converting
-# all systems to grub.conf (and symlinking menu.lst to grub.conf), but
-# we never updated any of the source code (it still all wants menu.lst),
-# and there is no indication that upstream is making the transition.
-
-inherit mount-boot eutils flag-o-matic toolchain-funcs autotools linux-info multilib
-
-PATCHVER="1.9" # Should match the revision ideally
-DESCRIPTION="GNU GRUB Legacy boot loader"
-HOMEPAGE="http://www.gnu.org/software/grub/"
-SRC_URI="mirror://gentoo/${P}.tar.gz
- mirror://gnu-alpha/${PN}/${P}.tar.gz
- mirror://gentoo/splash.xpm.gz
- mirror://gentoo/${P}-patches-${PATCHVER}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 x86 ~x86-fbsd"
-IUSE="custom-cflags ncurses netboot static"
-
-DEPEND="ncurses? (
- >=sys-libs/ncurses-5.2-r5
- amd64? ( app-emulation/emul-linux-x86-baselibs )
- )"
-
-pkg_setup() {
- local arch="$(tc-arch)"
- case ${arch} in
- amd64) CONFIG_CHECK='~IA32_EMULATION' check_extra_config ;;
- esac
-}
-
-src_unpack() {
- unpack ${A}
- cd "${S}"
-
- # patch breaks booting for some people #111885
- rm "${WORKDIR}"/patch/400_*
-
- # Grub will not handle a kernel larger than EXTENDED_MEMSIZE Mb as
- # discovered in bug 160801. We can change this, however, using larger values
- # for this variable means that Grub needs more memory to run and boot. For a
- # kernel of size N, Grub needs (N+1)*2. Advanced users should set a custom
- # value in make.conf, it is possible to make kernels ~16Mb in size, but it
- # needs the kitchen sink built-in.
- local t="custom"
- if [[ -z ${GRUB_MAX_KERNEL_SIZE} ]] ; then
- case $(tc-arch) in
- amd64) GRUB_MAX_KERNEL_SIZE=7 ;;
- x86) GRUB_MAX_KERNEL_SIZE=3 ;;
- esac
- t="default"
- fi
- einfo "Grub will support the ${t} maximum kernel size of ${GRUB_MAX_KERNEL_SIZE} Mb (GRUB_MAX_KERNEL_SIZE)"
-
- sed -i \
- -e "/^#define.*EXTENDED_MEMSIZE/s,3,${GRUB_MAX_KERNEL_SIZE},g" \
- "${S}"/grub/asmstub.c \
- || die "Failed to hack memory size"
-
- if [[ -n ${PATCHVER} ]] ; then
- EPATCH_SUFFIX="patch"
- epatch "${WORKDIR}"/patch
- eautoreconf
- fi
-}
-
-src_compile() {
- filter-flags -fPIE #168834
-
- use amd64 && multilib_toolchain_setup x86
-
- unset BLOCK_SIZE #73499
-
- ### i686-specific code in the boot loader is a bad idea; disabling to ensure
- ### at least some compatibility if the hard drive is moved to an older or
- ### incompatible system.
-
- # grub-0.95 added -fno-stack-protector detection, to disable ssp for stage2,
- # but the objcopy's (faulty) test fails if -fstack-protector is default.
- # create a cache telling configure that objcopy is ok, and add -C to econf
- # to make use of the cache.
- #
- # CFLAGS has to be undefined running econf, else -fno-stack-protector detection fails.
- # STAGE2_CFLAGS is not allowed to be used on emake command-line, it overwrites
- # -fno-stack-protector detected by configure, removed from netboot's emake.
- use custom-cflags || unset CFLAGS
-
- export grub_cv_prog_objcopy_absolute=yes #79734
- use static && append-ldflags -static
-
- # Per bug 216625, the emul packages do not provide .a libs for performing
- # suitable static linking
- if use amd64 && use static ; then
- if [ -z "${GRUB_STATIC_PACKAGE_BUILDING}" ]; then
- die "You must use the grub-static package if you want a static Grub on amd64!"
- else
- eerror "You have set GRUB_STATIC_PACKAGE_BUILDING. This"
- eerror "is specifically intended for building the tarballs for the"
- eerror "grub-static package via USE='static -ncurses'."
- eerror "All bets are now off."
- ebeep 10
- fi
- fi
-
- # build the net-bootable grub first, but only if "netboot" is set
- if use netboot ; then
- econf \
- --libdir=/lib \
- --datadir=/usr/lib/grub \
- --exec-prefix=/ \
- --disable-auto-linux-mem-opt \
- --enable-diskless \
- --enable-{3c{5{03,07,09,29,95},90x},cs89x0,davicom,depca,eepro{,100}} \
- --enable-{epic100,exos205,ni5210,lance,ne2100,ni{50,65}10,natsemi} \
- --enable-{ne,ns8390,wd,otulip,rtl8139,sis900,sk-g16,smc9000,tiara} \
- --enable-{tulip,via-rhine,w89c840} || die "netboot econf failed"
-
- emake w89c840_o_CFLAGS="-O" || die "making netboot stuff"
-
- mv -f stage2/{nbgrub,pxegrub} "${S}"/
- mv -f stage2/stage2 stage2/stage2.netboot
-
- make clean || die "make clean failed"
- fi
-
- # Now build the regular grub
- # Note that FFS and UFS2 support are broken for now - stage1_5 files too big
- econf \
- --libdir=/lib \
- --datadir=/usr/lib/grub \
- --exec-prefix=/ \
- --disable-auto-linux-mem-opt \
- $(use_with ncurses curses) \
- || die "econf failed"
-
- # sanity check due to common failure
- use ncurses && ! grep -qs "HAVE_LIBCURSES.*1" config.h && die "USE=ncurses but curses not found"
-
- emake || die "making regular stuff"
-}
-
-src_test() {
- # non-default block size also give false pass/fails.
- unset BLOCK_SIZE
- make check || die "make check failed"
-}
-
-src_install() {
- emake DESTDIR="${D}" install || die
- if use netboot ; then
- exeinto /usr/lib/grub/${CHOST}
- doexe nbgrub pxegrub stage2/stage2.netboot || die "netboot install"
- fi
-
- dodoc AUTHORS BUGS ChangeLog NEWS README THANKS TODO
- newdoc docs/menu.lst grub.conf.sample
- dodoc "${FILESDIR}"/grub.conf.gentoo
- prepalldocs
-
- [ -n "${GRUB_STATIC_PACKAGE_BUILDING}" ] && \
- mv \
- "${D}"/usr/share/doc/${PF} \
- "${D}"/usr/share/doc/grub-static-${PF/grub-}
-
- insinto /usr/share/grub
- doins "${DISTDIR}"/splash.xpm.gz
-}
-
-setup_boot_dir() {
- local boot_dir=$1
- local dir=${boot_dir}
-
- mkdir -p "${dir}"
- [[ ! -L ${dir}/boot ]] && ln -s . "${dir}/boot"
- dir="${dir}/grub"
- if [[ ! -e ${dir} ]] ; then
- mkdir "${dir}" || die "${dir} does not exist!"
- fi
-
- # change menu.lst to grub.conf
- if [[ ! -e ${dir}/grub.conf ]] && [[ -e ${dir}/menu.lst ]] ; then
- mv -f "${dir}"/menu.lst "${dir}"/grub.conf
- ewarn
- ewarn "*** IMPORTANT NOTE: menu.lst has been renamed to grub.conf"
- ewarn
- fi
-
- if [[ ! -e ${dir}/menu.lst ]]; then
- einfo "Linking from new grub.conf name to menu.lst"
- ln -snf grub.conf "${dir}"/menu.lst
- fi
-
- if [[ -e ${dir}/stage2 ]] ; then
- mv "${dir}"/stage2{,.old}
- ewarn "*** IMPORTANT NOTE: you must run grub and install"
- ewarn "the new version's stage1 to your MBR. Until you do,"
- ewarn "stage1 and stage2 will still be the old version, but"
- ewarn "later stages will be the new version, which could"
- ewarn "cause problems such as an unbootable system."
- ewarn "This means you must use either grub-install or perform"
- ewarn "root/setup manually! For more help, see the handbook:"
- ewarn "http://www.gentoo.org/doc/en/handbook/handbook-${ARCH}.xml?part=1&chap=10#grub-install-auto"
- ebeep
- fi
-
- einfo "Copying files from /lib/grub, /usr/lib/grub and /usr/share/grub to ${dir}"
- for x in \
- "${ROOT}"/lib*/grub/*/* \
- "${ROOT}"/usr/lib*/grub/*/* \
- "${ROOT}"/usr/share/grub/* ; do
- [[ -f ${x} ]] && cp -p "${x}" "${dir}"/
- done
-
- if [[ ! -e ${dir}/grub.conf ]] ; then
- s="${ROOT}/usr/share/doc/${PF}/grub.conf.gentoo"
- [[ -e "${s}" ]] && cat "${s}" >${dir}/grub.conf
- [[ -e "${s}.gz" ]] && zcat "${s}.gz" >${dir}/grub.conf
- [[ -e "${s}.bz2" ]] && bzcat "${s}.bz2" >${dir}/grub.conf
- fi
-
- # Per bug 218599, we support grub.conf.install for users that want to run a
- # specific set of Grub setup commands rather than the default ones.
- grub_config=${dir}/grub.conf.install
- [[ -e ${grub_config} ]] || grub_config=${dir}/grub.conf
- if [[ -e ${grub_config} ]] ; then
- egrep \
- -v '^[[:space:]]*(#|$|default|fallback|initrd|password|splashimage|timeout|title)' \
- "${grub_config}" | \
- /sbin/grub --batch \
- --device-map="${dir}"/device.map \
- > /dev/null
- fi
-
- # the grub default commands silently piss themselves if
- # the default file does not exist ahead of time
- if [[ ! -e ${dir}/default ]] ; then
- grub-set-default --root-directory="${boot_dir}" default
- fi
- einfo "Grub has been installed to ${boot_dir} successfully."
-}
-
-pkg_postinst() {
- mount-boot_mount_boot_partition
-
- if [[ -n ${DONT_MOUNT_BOOT} ]]; then
- elog "WARNING: you have DONT_MOUNT_BOOT in effect, so you must apply"
- elog "the following instructions for your /boot!"
- elog "Neglecting to do so may cause your system to fail to boot!"
- elog
- else
- setup_boot_dir "${ROOT}"/boot
- # Trailing output because if this is run from pkg_postinst, it gets mixed into
- # the other output.
- einfo ""
- fi
- elog "To interactively install grub files to another device such as a USB"
- elog "stick, just run the following and specify the directory as prompted:"
- elog " emerge --config =${PF}"
- elog "Alternately, you can export GRUB_ALT_INSTALLDIR=/path/to/use to tell"
- elog "grub where to install in a non-interactive way."
-
- # needs to be after we call setup_boot_dir
- mount-boot_pkg_postinst
-}
-
-pkg_config() {
- local dir
- if [ ! -d "${GRUB_ALT_INSTALLDIR}" ]; then
- einfo "Enter the directory where you want to setup grub:"
- read dir
- else
- dir="${GRUB_ALT_INSTALLDIR}"
- fi
- setup_boot_dir "${dir}"
-}
diff --git a/sys-boot/grub/grub-0.97.ebuild b/sys-boot/grub/grub-0.97.ebuild
deleted file mode 100644
index f36bdf426bdb..000000000000
--- a/sys-boot/grub/grub-0.97.ebuild
+++ /dev/null
@@ -1,147 +0,0 @@
-# Copyright 1999-2012 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub/grub-0.97.ebuild,v 1.6 2012/02/29 23:09:30 floppym Exp $
-
-inherit mount-boot eutils flag-o-matic toolchain-funcs
-
-PATCHVER=1.0
-DESCRIPTION="GNU GRUB boot loader"
-HOMEPAGE="http://www.gnu.org/software/grub/"
-SRC_URI="mirror://gentoo/${P}.tar.gz
- mirror://gnu-alpha/${PN}/${P}.tar.gz
- mirror://gentoo/splash.xpm.gz
- mirror://gentoo/${P}-patches-${PATCHVER}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="static netboot custom-cflags"
-
-RDEPEND=">=sys-libs/ncurses-5.2-r5"
-DEPEND="${RDEPEND}
- >=sys-devel/automake-1.7
- >=sys-devel/autoconf-2.5"
-
-pkg_setup() {
- if use amd64 ; then
- ABI_ALLOW="x86"
- ABI="x86"
- fi
-}
-
-src_unpack() {
- unpack ${A}
- cd "${S}"
-
- if [[ -n ${PATCHVER} ]] ; then
- EPATCH_SUFFIX="patch"
- epatch "${WORKDIR}"/patch
-
- # a bunch of patches apply to raw autotool files
- autoconf || die "autoconf failed"
- aclocal || die "aclocal failed"
- automake || die "automake failed"
- fi
-}
-
-src_compile() {
- unset BLOCK_SIZE #73499
-
- ### i686-specific code in the boot loader is a bad idea; disabling to ensure
- ### at least some compatibility if the hard drive is moved to an older or
- ### incompatible system.
-
- # grub-0.95 added -fno-stack-protector detection, to disable ssp for stage2,
- # but the objcopy's (faulty) test fails if -fstack-protector is default.
- # create a cache telling configure that objcopy is ok, and add -C to econf
- # to make use of the cache.
- #
- # CFLAGS has to be undefined running econf, else -fno-stack-protector detection fails.
- # STAGE2_CFLAGS is not allowed to be used on emake command-line, it overwrites
- # -fno-stack-protector detected by configure, removed from netboot's emake.
- use custom-cflags || unset CFLAGS
-
- export grub_cv_prog_objcopy_absolute=yes #79734
- use static && append-ldflags -static
-
- # build the net-bootable grub first, but only if "netboot" is set
- if use netboot ; then
- econf \
- --libdir=/lib \
- --datadir=/usr/lib/grub \
- --exec-prefix=/ \
- --disable-auto-linux-mem-opt \
- --enable-diskless \
- --enable-{3c{5{03,07,09,29,95},90x},cs89x0,davicom,depca,eepro{,100}} \
- --enable-{epic100,exos205,ni5210,lance,ne2100,ni{50,65}10,natsemi} \
- --enable-{ne,ns8390,wd,otulip,rtl8139,sis900,sk-g16,smc9000,tiara} \
- --enable-{tulip,via-rhine,w89c840} || die "netboot econf failed"
-
- emake w89c840_o_CFLAGS="-O" || die "making netboot stuff"
-
- mv -f stage2/{nbgrub,pxegrub} "${S}"/
- mv -f stage2/stage2 stage2/stage2.netboot
-
- make clean || die "make clean failed"
- fi
-
- # Now build the regular grub
- # Note that FFS and UFS2 support are broken for now - stage1_5 files too big
- econf \
- --libdir=/lib \
- --datadir=/usr/lib/grub \
- --exec-prefix=/ \
- --disable-auto-linux-mem-opt || die "econf failed"
- emake || die "making regular stuff"
-}
-
-src_test() {
- # non-default block size also give false pass/fails.
- unset BLOCK_SIZE
- make check || die "make check failed"
-}
-
-src_install() {
- make DESTDIR="${D}" install || die
- if use netboot ; then
- exeinto /usr/lib/grub/${CHOST}
- doexe nbgrub pxegrub stage2/stage2.netboot || die "netboot install"
- fi
-
- insinto /boot/grub
- doins "${DISTDIR}"/splash.xpm.gz
- newins docs/menu.lst grub.conf.sample
-
- dodoc AUTHORS BUGS ChangeLog NEWS README THANKS TODO
- newdoc docs/menu.lst grub.conf.sample
-
- docinto gentoo
- dodoc "${PATCHDIR}"/README*
-}
-
-pkg_postinst() {
- [[ "${ROOT}" != "/" ]] && return 0
-
- # change menu.lst to grub.conf
- if [[ ! -e /boot/grub/grub.conf && -e /boot/grub/menu.lst ]] ; then
- mv -f /boot/grub/menu.lst /boot/grub/grub.conf
- ewarn
- ewarn "*** IMPORTANT NOTE: menu.lst has been renamed to grub.conf"
- ewarn
- fi
- einfo "Linking from new grub.conf name to menu.lst"
- [[ ! -e /boot/grub/menu.lst ]] && ln -snf grub.conf /boot/grub/menu.lst
-
- [[ -e /boot/grub/stage2 ]] && mv /boot/grub/stage2{,.old}
-
- einfo "Copying files from /lib/grub and /usr/lib/grub to /boot"
- for x in /lib/grub/*/* /usr/lib/grub/*/* ; do
- [[ -f "${x}" ]] && cp -p "${x}" /boot/grub
- done
-
- [[ -e /boot/grub/grub.conf ]] \
- && /sbin/grub \
- --batch \
- --device-map=/boot/grub/device.map \
- < /boot/grub/grub.conf > /dev/null 2>&1
-}