?mode=patch&uid=2006041117050726972
Applied Patch: 2006041117050726972 (by clifford)
+ clifford
Votecheck 'core-relaxed': OK (clifford)
package/x86/grub/stone_mod_grub.sh
package/x86/grub/grub.conf
package/x86/grub/grub.desc
package/x86/grub/gcc40.patch
Clifford Wolf:
Downgraded grub to good old grub-0.97
Clifford Wolf:
Downgraded grub to good old grub-0.97
--- package/x86/grub/stone_mod_grub.sh (revision 48)
+++ package/x86/grub/stone_mod_grub.sh (revision 49)
@@ -24,9 +24,8 @@
create_device_map() {
gui_cmd '(Re-)Create GRUB Device Map' "$( cat << "EOT"
-( set -x
-rm -f /boot/grub/device.map
-grub-mkdevicemap --no-floppy; )
+rm -vf /boot/grub/device.map
+echo quit | grub --batch --device-map=/boot/grub/device.map
EOT
)"
}
@@ -92,35 +91,30 @@
}
create_boot_menu() {
- cat << EOT > /boot/grub/grub.cfg
+ cat << EOT > /boot/grub/menu.lst
timeout 8
default 0
fallback 1
title ROCK Linux
-linux $bootdrive$bootpath/vmlinuz root=/dev/ram0 ro
+kernel $bootdrive$bootpath/vmlinuz root=/dev/ram0 ro
initrd $bootdrive$bootpath/initrd.img
EOT
if [ -f /boot/memtest86.bin ] ; then
- cat << EOT >> /boot/grub/grub.cfg
+ cat << EOT >> /boot/grub/menu.lst
title MemTest86 (SGI memory tester)
-linux $bootdrive$bootpath/memtest86.bin
+kernel $bootdrive$bootpath/memtest86.bin
EOT
fi
- gui_message "This is the new /boot/grub/grub.cfg file:
+ gui_message "This is the new /boot/grub/menu.lst file:
-$( cat /boot/grub/grub.cfg )"
+$( cat /boot/grub/menu.lst )"
}
grub_install() {
- gui_cmd 'Installing GRUB' "$( cat << "EOT"
-( set -x
-grub-mkimage -o /boot/grub/core.img _chain pc ext2
-grub-setup -r $bootdrive '(hd0)'; )
-EOT
- )"
+ gui_cmd 'Installing GRUB' "echo -e 'root $bootdrive\\nsetup (hd0)\\nquit' | grub --batch --device-map=/boot/grub/device.map"
}
grub_init() {
@@ -191,8 +185,8 @@
'' '' \
"Edit /boot/grub/device.map (Device Map)" \
"gui_edit 'GRUB Device Map' /boot/grub/device.map" \
- "Edit /boot/grub/grub.cfg (Boot Menu)" \
- "gui_edit 'GRUB Boot Menu' /boot/grub/grub.cfg"
+ "Edit /boot/grub/menu.lst (Boot Menu)" \
+ "gui_edit 'GRUB Boot Menu' /boot/grub/menu.lst"
do : ; done
}
--- package/x86/grub/grub.conf (revision 48)
+++ package/x86/grub/grub.conf (revision 49)
@@ -23,10 +23,18 @@
grub_postmake() {
mkdir -p $root/boot/grub
- cp -v $datadir/grub/i386-pc/* $root/boot/grub/
+ trg=${arch_target/-linux-gnu}
+ trg=i386-${trg/i*-/}
+
+ cp -v $libdir/grub/$trg/* $root/boot/grub/
cp $confdir/stone_mod_grub.sh $root/etc/stone.d/mod_grub.sh
echo '$STONE grub grub_setup' > $root/etc/stone.d/setup_grub.sh
+ if [ ! -f $root/boot/grub/menu.lst ] ; then
+ cp docs/menu.lst $root/boot/grub/
+ fi
+ cp docs/menu.lst $root/boot/grub/menu.lst.example
+
counter=1
confopt="$confopt --enable-diskless"
{ echo
--- package/x86/grub/grub.desc (revision 48)
+++ package/x86/grub/grub.desc (revision 49)
@@ -46,8 +46,8 @@
[L] GPL
[S] Stable
-[V] 1.93
+[V] 0.97
[P] X -?---5---9 203.900
-[D] 928182752 grub-1.93.tar.gz ftp://alpha.gnu.org/gnu/grub/
+[D] 3065767847 grub-0.97.tar.gz ftp://alpha.gnu.org/gnu/grub/
--- package/x86/grub/gcc40.patch (revision 0)
+++ package/x86/grub/gcc40.patch (revision 49)
@@ -0,0 +1,55 @@
+diff -dur grub-0.97/netboot/main.c src.grub.1130286324.30284.3996273791/grub-0.97/netboot/main.c
+--- grub-0.97/netboot/main.c 2004-05-21 00:19:33.000000000 +0200
++++ src.grub.1130286324.30284.3996273791/grub-0.97/netboot/main.c 2005-10-26 02:37:58.000000000 +0200
+@@ -54,9 +54,9 @@
+
+ static int vendorext_isvalid;
+ static unsigned long netmask;
+-static struct bootpd_t bootp_data;
++struct bootpd_t bootp_data;
+ static unsigned long xid;
+-static unsigned char *end_of_rfc1533 = NULL;
++unsigned char *end_of_rfc1533 = NULL;
+
+ #ifndef NO_DHCP_SUPPORT
+ #endif /* NO_DHCP_SUPPORT */
+--- grub-0.97/netboot/natsemi.c 2003-07-09 13:45:38.000000000 +0200
++++ src.grub.1130288662.25040.1734126933/grub-0.97/netboot/natsemi.c 2005-10-26 03:18:03.000000000 +0200
+@@ -608,7 +608,7 @@
+ const char *p) /* Packet */
+ {
+ u32 status, to, nstype;
+- u32 tx_status;
++ volatile u32 tx_status;
+
+ /* Stop the transmitter */
+ outl(TxOff, ioaddr + ChipCmd);
+@@ -647,7 +647,7 @@
+
+ to = currticks() + TX_TIMEOUT;
+
+- while ((((volatile u32) tx_status=txd.cmdsts) & OWN) && (currticks() < to))
++ while (((tx_status=txd.cmdsts) & OWN) && (currticks() < to))
+ /* wait */ ;
+
+ if (currticks() >= to) {
+--- grub-0.97/netboot/sis900.c~ 2003-07-09 13:45:38.000000000 +0200
++++ grub-0.97/netboot/sis900.c 2005-10-26 03:30:39.000000000 +0200
+@@ -901,7 +901,7 @@
+ const char *p) /* Packet */
+ {
+ u32 status, to, nstype;
+- u32 tx_status;
++ volatile u32 tx_status;
+
+ /* Stop the transmitter */
+ outl(TxDIS, ioaddr + cr);
+@@ -940,7 +940,7 @@
+
+ to = currticks() + TX_TIMEOUT;
+
+- while ((((volatile u32) tx_status=txd.cmdsts) & OWN) && (currticks() < to))
++ while (((tx_status=txd.cmdsts) & OWN) && (currticks() < to))
+ /* wait */ ;
+
+ if (currticks() >= to) {
[Download this patch]