From 684862f3b6cdab8759235e729ad99216e7c05f48 Mon Sep 17 00:00:00 2001 From: Mike Frysinger Date: Wed, 3 Aug 2005 03:09:44 +0000 Subject: Add patch from upstream cvs to fix #83287 by Martin Mokrejs / David James. Package-Manager: portage-2.0.51.22-r2 --- sys-boot/grub/ChangeLog | 7 +- sys-boot/grub/Manifest | 24 +++-- sys-boot/grub/files/digest-grub-0.96-r3 | 3 + sys-boot/grub/grub-0.96-r3.ebuild | 154 ++++++++++++++++++++++++++++++++ 4 files changed, 181 insertions(+), 7 deletions(-) create mode 100644 sys-boot/grub/files/digest-grub-0.96-r3 create mode 100644 sys-boot/grub/grub-0.96-r3.ebuild (limited to 'sys-boot') diff --git a/sys-boot/grub/ChangeLog b/sys-boot/grub/ChangeLog index 624396cdca4e..9abdecd78cd4 100644 --- a/sys-boot/grub/ChangeLog +++ b/sys-boot/grub/ChangeLog @@ -1,6 +1,11 @@ # ChangeLog for sys-boot/grub # Copyright 1999-2005 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub/ChangeLog,v 1.49 2005/08/01 10:34:39 blubb Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub/ChangeLog,v 1.50 2005/08/03 03:09:44 vapier Exp $ + +*grub-0.96-r3 (03 Aug 2005) + + 03 Aug 2005; Mike Frysinger +grub-0.96-r3.ebuild: + Add patch from upstream cvs to fix #83287 by Martin Mokrejs / David James. 01 Aug 2005; Simon Stelling grub-0.96-r2.ebuild: stable on amd64 diff --git a/sys-boot/grub/Manifest b/sys-boot/grub/Manifest index 075badcea440..de1731b95de5 100644 --- a/sys-boot/grub/Manifest +++ b/sys-boot/grub/Manifest @@ -1,10 +1,22 @@ -MD5 c8d30bf5c47b6d9cb935d2adb12a9ac9 grub-0.92-r1.ebuild 2629 +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA1 + +MD5 b0eacbb6edb031d87f33ed0b08f5916d metadata.xml 226 MD5 0d0237e5ae0c9763cb910716bcbaf00f grub-0.96-r2.ebuild 4552 -MD5 52b747f4b18ebbbf107c529237382dc8 grub-0.94-r1.ebuild 3640 MD5 49ae7636425891125ae6cb623a4d6570 grub-0.96-r1.ebuild 4699 -MD5 b0eacbb6edb031d87f33ed0b08f5916d metadata.xml 226 -MD5 5db19c654bf7a01c94dc8427fa0d7be5 ChangeLog 15133 -MD5 5695c7ea410b6913901208938e05b1ad files/digest-grub-0.92-r1 190 +MD5 13da04f31e144cb6235533f9bc93fd98 grub-0.96-r3.ebuild 4533 +MD5 52b747f4b18ebbbf107c529237382dc8 grub-0.94-r1.ebuild 3640 +MD5 c8d30bf5c47b6d9cb935d2adb12a9ac9 grub-0.92-r1.ebuild 2629 +MD5 98a644fce6f7b8cf796fe6a79c527b6b ChangeLog 15313 +MD5 97d88870847fafcf5fe4162f6d273e74 files/digest-grub-0.96-r2 193 MD5 c5c746f1feb71d47fb2f5481590b83df files/digest-grub-0.94-r1 190 MD5 a098fd63c2d2748ecbbfe53aae07ed79 files/digest-grub-0.96-r1 193 -MD5 97d88870847fafcf5fe4162f6d273e74 files/digest-grub-0.96-r2 193 +MD5 9b6b79b2fbed61b893a1333b4f0e62c6 files/digest-grub-0.96-r3 191 +MD5 5695c7ea410b6913901208938e05b1ad files/digest-grub-0.92-r1 190 +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.4.1 (GNU/Linux) + +iD8DBQFC8DWLgIKl8Uu19MoRArQHAJ93kJm+Pg16GN/FrTaX9wR6fB71hACeJGHd +ec5x0joiIsPL6A5ddMMhlKc= +=6eTa +-----END PGP SIGNATURE----- diff --git a/sys-boot/grub/files/digest-grub-0.96-r3 b/sys-boot/grub/files/digest-grub-0.96-r3 new file mode 100644 index 000000000000..94ea928bcd5e --- /dev/null +++ b/sys-boot/grub/files/digest-grub-0.96-r3 @@ -0,0 +1,3 @@ +MD5 47c228c88f848873288ad1cd04cc93f0 grub-0.96.tar.gz 985761 +MD5 12665487d79f73748d9c6769b3d9dbbf grub-0.96-patches-1.0.tar.bz2 49828 +MD5 cdd6c89d48982ecd544c0b4774755afd splash.xpm.gz 33856 diff --git a/sys-boot/grub/grub-0.96-r3.ebuild b/sys-boot/grub/grub-0.96-r3.ebuild new file mode 100644 index 000000000000..981913b66750 --- /dev/null +++ b/sys-boot/grub/grub-0.96-r3.ebuild @@ -0,0 +1,154 @@ +# Copyright 1999-2005 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.1 2005/08/03 03:09:44 vapier 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 + ftp://alpha.gnu.org/gnu/${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" + +RDEPEND=">=sys-libs/ncurses-5.2-r5" +DEPEND="${RDEPEND} + >=sys-devel/automake-1.7 + >=sys-devel/autoconf-2.5" +PROVIDE="virtual/bootloader" + +pkg_setup() { + if use amd64 ; then + if ! has_m32 ; then + eerror "Your compiler seems to be unable to compile 32bit code." + eerror "If you are on amd64, make sure you compile gcc with:" + echo + eerror " USE=multilib FEATURES=-sandbox" + die "Cannot produce 32bit objects!" + fi + + 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. + 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 + 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 COPYING 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 +} -- cgit v1.2.3-65-gdbad