Fixing a few bugs, fixing digests, adding ~amd64, basically I've been having fun.
authorRobert Moss <robmoss@gentoo.org>
Mon, 22 Nov 2004 21:19:08 +0000 (21:19 +0000)
committerRobert Moss <robmoss@gentoo.org>
Mon, 22 Nov 2004 21:19:08 +0000 (21:19 +0000)
sys-boot/grub/ChangeLog
sys-boot/grub/Manifest
sys-boot/grub/files/grub-0.95.20040823-warnings.patch [new file with mode: 0644]
sys-boot/grub/grub-0.95.20040823.ebuild

index 006b949f8f3f4274248d789fe95c8b7d90ea47c7..e38682e6773bd41d95424951a96bf2a1aeb7f699 100644 (file)
@@ -1,6 +1,14 @@
 # ChangeLog for sys-boot/grub
 # Copyright 2002-2004 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub/ChangeLog,v 1.26 2004/10/13 20:56:53 lv Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub/ChangeLog,v 1.27 2004/11/22 21:19:08 robmoss Exp $
+
+  22 Nov 2004; <robmoss@gentoo.org>
+  +files/grub-0.95.20040823-warnings.patch, grub-0.95.20040823.ebuild:
+  USE flagging the network booting stuff with a new local "netboot" USE flag.
+  Adding ~amd64. General tidying up of the ebuild. Adding a patch to prevent
+  use of -fwritable-strings, which doesn't do anything but throw up warnings.
+  Adding a comment to explain that FFS and UFS2 support is broken still.
+  Fixing the amd64 installation procedure.
 
   13 Oct 2004; Travis Tilley <lv@gentoo.org> grub-0.94-r1.ebuild:
   stable on amd64
index 89c9ef9bc5f6df8fe3c9a83b800eed2ef2f1d9c8..397f1668e87616cfa5fffb49556061f14753dfc6 100644 (file)
@@ -1,16 +1,17 @@
-MD5 d6e92417000045f21bacc7f72aea5203 ChangeLog 10389
-MD5 d2c5f3ba084defee6f806a4eab5d3e36 grub-0.92-r1.ebuild 2526
-MD5 fc967cbfa21d5efadccfe2146dfa03df grub-0.93.20030118.ebuild 2512
 MD5 0dd299714e769591e7e0b6aed01908e6 grub-0.94-r1.ebuild 3431
+MD5 d2c5f3ba084defee6f806a4eab5d3e36 grub-0.92-r1.ebuild 2526
 MD5 ebff7c57fe55cb10fa55ec38f85c02da grub-0.94-r2.ebuild 3545
-MD5 dba7400175db1f2ffd232172f19823db grub-0.95.20040823.ebuild 3558
+MD5 424d154ee6df841b57536662917d88c5 ChangeLog 10851
+MD5 fc967cbfa21d5efadccfe2146dfa03df grub-0.93.20030118.ebuild 2512
 MD5 b0eacbb6edb031d87f33ed0b08f5916d metadata.xml 226
-MD5 16039704cf1e6b6f46b4413532af082c files/digest-grub-0.92-r1 133
+MD5 eddf2c7128a14b8ce7286123c7379117 grub-0.95.20040823.ebuild 4038
+MD5 3a653f86b731c2a17482d25f57b2d041 files/digest-grub-0.95.20040823 149
+MD5 cdd6c89d48982ecd544c0b4774755afd files/splash.xpm.gz 33856
+MD5 e9e73f57d9f9d5c550792980b2635f94 files/grub-0.94-gcc3.4.patch 479
+MD5 7357395b0d223c0bbf0675a9af31f9c3 files/grub-0.94-grub.conf.patch 7574
 MD5 5d1c8e582496db9d7a9b77e76f09f7d8 files/digest-grub-0.93.20030118 139
+MD5 16039704cf1e6b6f46b4413532af082c files/digest-grub-0.92-r1 133
 MD5 0b52e1b3a6a9f3c9b86742580eabf28d files/digest-grub-0.94-r1 131
 MD5 0b52e1b3a6a9f3c9b86742580eabf28d files/digest-grub-0.94-r2 131
-MD5 3a653f86b731c2a17482d25f57b2d041 files/digest-grub-0.95.20040823 149
 MD5 8d898cd9d1928916596cc3f9883eac67 files/grub-0.93-gcc3.3.diff 639
-MD5 e9e73f57d9f9d5c550792980b2635f94 files/grub-0.94-gcc3.4.patch 479
-MD5 7357395b0d223c0bbf0675a9af31f9c3 files/grub-0.94-grub.conf.patch 7574
-MD5 cdd6c89d48982ecd544c0b4774755afd files/splash.xpm.gz 33856
+MD5 9c1ec8bfdc5f20ce965c2d2167a43162 files/grub-0.95.20040823-warnings.patch 2529
diff --git a/sys-boot/grub/files/grub-0.95.20040823-warnings.patch b/sys-boot/grub/files/grub-0.95.20040823-warnings.patch
new file mode 100644 (file)
index 0000000..a049259
--- /dev/null
@@ -0,0 +1,50 @@
+diff -Naur grub-0.95.20040823.old/grub/Makefile.am grub-0.95.20040823/grub/Makefile.am
+--- grub-0.95.20040823.old/grub/Makefile.am    2004-08-24 00:21:31.000000000 +0100
++++ grub-0.95.20040823/grub/Makefile.am        2004-11-21 22:05:06.921259824 +0000
+@@ -13,7 +13,7 @@
+       $(SERIAL_FLAGS) -I$(top_srcdir)/stage2 \
+       -I$(top_srcdir)/stage1 -I$(top_srcdir)/lib
+ 
+-AM_CFLAGS = $(GRUB_CFLAGS) -fwritable-strings
++AM_CFLAGS = $(GRUB_CFLAGS)
+ 
+ grub_SOURCES = main.c asmstub.c
+ grub_LDADD = ../stage2/libgrub.a  ../lib/libcommon.a $(GRUB_LIBS)
+diff -Naur grub-0.95.20040823.old/grub/Makefile.in grub-0.95.20040823/grub/Makefile.in
+--- grub-0.95.20040823.old/grub/Makefile.in    2004-08-24 00:21:31.000000000 +0100
++++ grub-0.95.20040823/grub/Makefile.in        2004-11-21 22:05:14.233148248 +0000
+@@ -185,7 +185,7 @@
+       $(SERIAL_FLAGS) -I$(top_srcdir)/stage2 \
+       -I$(top_srcdir)/stage1 -I$(top_srcdir)/lib
+ 
+-AM_CFLAGS = $(GRUB_CFLAGS) -fwritable-strings
++AM_CFLAGS = $(GRUB_CFLAGS)
+ grub_SOURCES = main.c asmstub.c
+ grub_LDADD = ../stage2/libgrub.a  ../lib/libcommon.a $(GRUB_LIBS)
+ all: all-am
+diff -Naur grub-0.95.20040823.old/stage2/Makefile.am grub-0.95.20040823/stage2/Makefile.am
+--- grub-0.95.20040823.old/stage2/Makefile.am  2004-11-21 22:03:48.225223000 +0000
++++ grub-0.95.20040823/stage2/Makefile.am      2004-11-21 22:05:28.105039400 +0000
+@@ -24,8 +24,7 @@
+       -DGRUB_UTIL=1 -DFSYS_EXT2FS=1 -DFSYS_FAT=1 -DFSYS_FFS=1 \
+       -DFSYS_ISO9660=1 -DFSYS_JFS=1 -DFSYS_MINIX=1 -DFSYS_REISERFS=1 \
+       -DFSYS_UFS2=1 -DFSYS_VSTAFS=1 -DFSYS_XFS=1 \
+-      -DUSE_MD5_PASSWORDS=1 -DSUPPORT_SERIAL=1 -DSUPPORT_HERCULES=1 \
+-      -fwritable-strings
++      -DUSE_MD5_PASSWORDS=1 -DSUPPORT_SERIAL=1 -DSUPPORT_HERCULES=1
+ 
+ # Stage 2 and Stage 1.5's.
+ pkglibdir = $(libdir)/$(PACKAGE)/$(host_cpu)-$(host_vendor)
+diff -Naur grub-0.95.20040823.old/stage2/Makefile.in grub-0.95.20040823/stage2/Makefile.in
+--- grub-0.95.20040823.old/stage2/Makefile.in  2004-08-24 00:21:32.000000000 +0100
++++ grub-0.95.20040823/stage2/Makefile.in      2004-11-21 22:05:35.523911560 +0000
+@@ -579,8 +579,7 @@
+       -DGRUB_UTIL=1 -DFSYS_EXT2FS=1 -DFSYS_FAT=1 -DFSYS_FFS=1 \
+       -DFSYS_ISO9660=1 -DFSYS_JFS=1 -DFSYS_MINIX=1 -DFSYS_REISERFS=1 \
+       -DFSYS_UFS2=1 -DFSYS_VSTAFS=1 -DFSYS_XFS=1 \
+-      -DUSE_MD5_PASSWORDS=1 -DSUPPORT_SERIAL=1 -DSUPPORT_HERCULES=1 \
+-      -fwritable-strings
++      -DUSE_MD5_PASSWORDS=1 -DSUPPORT_SERIAL=1 -DSUPPORT_HERCULES=1
+ 
+ @DISKLESS_SUPPORT_FALSE@pkglib_DATA = stage2 stage2_eltorito e2fs_stage1_5 fat_stage1_5 \
+ @DISKLESS_SUPPORT_FALSE@      ffs_stage1_5 iso9660_stage1_5 jfs_stage1_5 minix_stage1_5 \
index de27e6e1ad7b5f695e092892379db70dc31bc006..997f0e9b44cd05ac8c07c830171500904c347429 100644 (file)
@@ -1,8 +1,8 @@
 # Copyright 1999-2004 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub/grub-0.95.20040823.ebuild,v 1.5 2004/09/12 16:59:34 robmoss Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub/grub-0.95.20040823.ebuild,v 1.6 2004/11/22 21:19:08 robmoss Exp $
 
-inherit mount-boot eutils flag-o-matic gcc gnuconfig
+inherit mount-boot eutils flag-o-matic gcc gnuconfig toolchain-funcs
 
 DESCRIPTION="GNU GRUB boot loader"
 HOMEPAGE="http://www.gnu.org/software/grub/"
@@ -11,8 +11,8 @@ SRC_URI="mirror://gentoo/${P}.tar.gz
 
 LICENSE="GPL-2"
 SLOT="0"
-KEYWORDS="~x86"
-IUSE="static"
+KEYWORDS="~x86 ~amd64"
+IUSE="static netboot"
 
 DEPEND=">=sys-libs/ncurses-5.2-r5
        >=sys-devel/automake-1.7
@@ -20,7 +20,7 @@ DEPEND=">=sys-libs/ncurses-5.2-r5
 PROVIDE="virtual/bootloader"
 
 src_unpack() {
-       has_m32 || die "your compiler seems to be unable to compile 32bit code. if you are on amd64, make sure you compile gcc with USE=multilib FEATURES=-sandbox"
+       has_m32 || die "Your compiler seems to be unable to compile 32-bit code. If you are on amd64, make sure you compile gcc with USE=multilib FEATURES=-sandbox"
 
        unpack ${A}
        cd ${S}
@@ -37,6 +37,9 @@ src_unpack() {
        # And should add some boot prettification
        # epatch ${WORKDIR}/${PF}-gentoo.diff
        # epatch ${FILESDIR}/${P}-test.patch
+
+       # -fwritable-strings is deprecated; testing to see if we need it any more
+       epatch ${FILESDIR}/${P}-warnings.patch
 }
 
 src_compile() {
@@ -50,16 +53,17 @@ src_compile() {
        [ `gcc-major-version` -eq 3 ] && append-flags -minline-all-stringops
        use static && append-ldflags -static
 
-       has_pie && CC="${CC} `test_flag -fno-pic` `test_flag -nopie`"
-       has_ssp && CC="${CC} `test_flag -fno-stack-protector`"
+       has_pie && CC="${tc-getCC} `test_flag -fno-pic` `test_flag -nopie`"
+       has_ssp && CC="${tc-getCC} `test_flag -fno-stack-protector`"
 
-       autoconf || die
-       aclocal || die
-       WANT_AUTOMAKE=1.7 automake || die
+       autoconf || die "autoconf failed"
+       aclocal || die "aclocal failed"
+       WANT_AUTOMAKE=1.7 automake || die "automake failed"
 
-       # build the net-bootable grub first
-       CFLAGS="" \
-       econf \
+       # build the net-bootable grub first, but only if "netboot" is set
+       if [ -n "$(use netboot)" ]
+               then CFLAGS="" \
+               econf \
                --datadir=/usr/lib/grub \
                --exec-prefix=/ \
                --disable-auto-linux-mem-opt \
@@ -67,28 +71,31 @@ src_compile() {
                --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
+               --enable-{tulip,via-rhine,w89c840} || die "netboot econf failed"
 
-       emake w89c840_o_CFLAGS="-O" || die "making netboot stuff"
+               emake w89c840_o_CFLAGS="-O" || die "making netboot stuff"
 
-       mv stage2/{nbgrub,pxegrub} ${S}
-       mv stage2/stage2 stage2/stage2.netboot
+               mv stage2/{nbgrub,pxegrub} ${S}
+               mv stage2/stage2 stage2/stage2.netboot
 
-       make clean || die
+               make clean || die "make clean failed"
+       fi
 
-       # now build the regular grub
+       # Now build the regular grub
+       # Note that FFS and UFS2 support are broken for now - stage1_5 files too big
        CFLAGS="${CFLAGS}" \
        econf \
                        --datadir=/usr/lib/grub \
                        --exec-prefix=/ \
-                       --disable-auto-linux-mem-opt || die
+                       --disable-auto-linux-mem-opt || die "econf failed"
        emake || die "making regular stuff"
 }
 
 src_install() {
        make DESTDIR=${D} install || die
        exeinto /usr/lib/grub
-       doexe nbgrub pxegrub stage2/stage2 stage2/stage2.netboot
+       doexe stage2/stage2
+       use netboot && doexe nbgrub pxegrub stage2/stage2.netboot
 
        insinto /boot/grub
        doins ${FILESDIR}/splash.xpm.gz
@@ -117,6 +124,7 @@ pkg_postinst() {
        einfo "Copying files from /usr/lib/grub to /boot"
        cp -p /usr/lib/grub/* /boot/grub
        cp -p /lib/grub/*/* /boot/grub
+       cp -p /usr/lib/grub/*/* /boot/grub
 
        [ -e /boot/grub/grub.conf ] \
                && /sbin/grub \