From 5c3a60f363f020b032d8bc2a6f4e28874deeb66e Mon Sep 17 00:00:00 2001 From: Steven Pledger Date: Mon, 13 Dec 2010 14:31:30 -0200 Subject: system/grub4dos: Updated for version 0.4.5b_2010_10_31) Signed-off-by: Niels Horn --- system/grub4dos/README | 14 ++++--- system/grub4dos/grub4dos.SlackBuild | 77 +++++++++++++------------------------ system/grub4dos/grub4dos.info | 12 +++--- system/grub4dos/slack-desc | 2 +- 4 files changed, 43 insertions(+), 62 deletions(-) (limited to 'system/grub4dos') diff --git a/system/grub4dos/README b/system/grub4dos/README index f6a7862061..adafdc564c 100644 --- a/system/grub4dos/README +++ b/system/grub4dos/README @@ -3,10 +3,10 @@ and new features such as built-in BIOS disk emulation, ATAPI CDROM driver, and Chinese support. It can be loaded from DOS/LINUX, via Windows boot manager/syslinux/lilo, or from MBR/CD. -To build the Chinese version, run the script like this: +To package the Chinese version, run the script like this: CHINESE="yes" ./grub4dos.SlackBuild -To chainload Grub4dos from LILO, copy /usr/share/grub4dos/grub.exe to +To chainload Grub4dos from LILO, copy /usr/lib/grub4dos/grub.exe to your /boot folder and add the following to your lilo.conf: image = /boot/grub.exe label = Grub4dos @@ -14,7 +14,11 @@ image = /boot/grub.exe It can be useful as a back up boot loader if you, for example, forget to run 'lilo' after a kernel update. -This package does not conflict with the Grub package in /extra. -It is safe to have both installed. +Read the Grub4dos guide for information on installing/using Grub4dos: +http://diddy.boot-land.net/grub4dos/Grub4dos.htm -Note: this will not build on x86_64. +Note: bootlace.com is a 32-Bit binary. +It will not run on a pure x86_64 system + +Note2: Though grub4dos has ext4 support, its MBR code CANNOT load +grldr (The main boot loader file) from an ext4 partition. diff --git a/system/grub4dos/grub4dos.SlackBuild b/system/grub4dos/grub4dos.SlackBuild index 4c9d628f87..d800696dab 100644 --- a/system/grub4dos/grub4dos.SlackBuild +++ b/system/grub4dos/grub4dos.SlackBuild @@ -2,43 +2,25 @@ # Slackware build script for grub4dos -# Written by Steven Pledger +# Written by Steven Pledger PRGNAM=grub4dos -VERSION=${VERSION:-0.4.4} +VERSION=${VERSION:-0.4.5b_2010_10_31} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} -# Automatically determine the architecture we're building on: -if [ -z "$ARCH" ]; then - case "$( uname -m )" in - i?86) ARCH=i486 ;; - arm*) ARCH=arm ;; - # Unless $ARCH is already set, use uname -m for all other archs: - *) ARCH=$( uname -m ) ;; - esac -fi +TARVERSION=$(echo $VERSION | tr '_' '-') +SRCVERSION=$(echo $VERSION | cut -f1 -d_ ) + +# Now using the precompiled binary since Grub4dos doesn't build on other archs anyway +ARCH="i386" CWD=$(pwd) TMP=${TMP:-/tmp/SBo} PKG=$TMP/package-$PRGNAM OUTPUT=${OUTPUT:-/tmp} -if [ "$ARCH" = "i486" ]; then - SLKCFLAGS="-O2 -march=i486 -mtune=i686" - LIBDIRSUFFIX="" -elif [ "$ARCH" = "i686" ]; then - SLKCFLAGS="-O2 -march=i686 -mtune=i686" - LIBDIRSUFFIX="" -elif [ "$ARCH" = "x86_64" ]; then - SLKCFLAGS="-O2 -fPIC" - LIBDIRSUFFIX="64" -else - SLKCFLAGS="-O2" - LIBDIRSUFFIX="" -fi - -# Build Chinese version +# Package Chinese version CHINESE="${CHINESE:-no}" set -e @@ -46,9 +28,9 @@ set -e rm -rf $PKG mkdir -p $TMP $PKG $OUTPUT cd $TMP -rm -rf $PRGNAM-$VERSION -unzip $CWD/$PRGNAM-$VERSION-src.zip -cd $PRGNAM-$VERSION +rm -rf $PRGNAM-$SRCVERSION +unzip $CWD/$PRGNAM-$TARVERSION.zip +cd $PRGNAM-$SRCVERSION chown -R root:root . find . \ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ @@ -56,37 +38,32 @@ find . \ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ -exec chmod 644 {} \; -# Included patch that translates to Chinese -[ "$CHINESE" = "yes" ] && patch -p1 < patch-chinese.diff - -CFLAGS="$SLKCFLAGS" \ -CXXFLAGS="$SLKCFLAGS" \ -sh configure \ - --enable-preset-menu=preset_menu.lst \ - --build=$ARCH-slackware-linux - -make - -# "make install" installs a lot of Grub legacy stuff not used by grub4dos, so install manually - -# hybrid DOS/Linux executable for installing grub4dos +# bootlace.com is a hybrid DOS/Linux executable for installing grub4dos to MBR/PBR mkdir -p $PKG/usr/sbin -install -m 0755 stage2/bootlace.com $PKG/usr/sbin +install -m 0755 bootlace.com $PKG/usr/sbin -mkdir -p $PKG/usr/share/$PRGNAM -cp -a \ - config.sys default menu.lst grub.pif stage2/grldr stage2/grub.exe \ - stage2/badgrub.exe stage2/grldr.mbr stage2/hmload.com \ - $PKG/usr/share/$PRGNAM +# grldr is the main bootloader file +# grub.exe is a modified version of grldr that can be loaded just like a Linux kernel +mkdir -p $PKG/usr/lib/$PRGNAM +if [ "$CHINESE" = "yes" ]; then + cp -a chinese/grldr chinese/grub.exe $PKG/usr/lib/$PRGNAM +else + cp -a grldr grub.exe $PKG/usr/lib/$PRGNAM +fi + +# This file is needed to savedefault menu entry +cp -a default $PKG/usr/lib/$PRGNAM find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION cp -a \ - COPYING README_GRUB4DOS.txt ChangeLog_GRUB4DOS.txt \ + COPYING README_GRUB4DOS.txt ChangeLog_GRUB4DOS.txt ChangeLog_chenall.txt \ + Get_Source_of_This_Build.txt grub4dos_r55.diff \ $PKG/usr/doc/$PRGNAM-$VERSION cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild +cat menu.lst > $PKG/usr/doc/$PRGNAM-$VERSION/menu.lst.SAMPLE mkdir -p $PKG/install cat $CWD/slack-desc > $PKG/install/slack-desc diff --git a/system/grub4dos/grub4dos.info b/system/grub4dos/grub4dos.info index ad6e7edae1..22362e4df8 100644 --- a/system/grub4dos/grub4dos.info +++ b/system/grub4dos/grub4dos.info @@ -1,10 +1,10 @@ PRGNAM="grub4dos" -VERSION="0.4.4" -HOMEPAGE="https://gna.org/projects/grub4dos/" -DOWNLOAD="http://download.gna.org/grub4dos/grub4dos-0.4.4-src.zip" -MD5SUM="984c52f435d4e5f80af5410a900b1e44" +VERSION="0.4.5b_2010_10_31" +HOMEPAGE="http://code.google.com/p/grub4dos-chenall/" +DOWNLOAD="http://grub4dos-chenall.googlecode.com/files/grub4dos-0.4.5b-2010-10-31.zip" +MD5SUM="063fc9dfa6d02ae578f113b0ce6f64ec" DOWNLOAD_x86_64="UNSUPPORTED" MD5SUM_x86_64="" MAINTAINER="Steven Pledger" -EMAIL="slacker4life@rocketmail.com" -APPROVED="rworkman" +EMAIL="spledger91@yahoo.com" +APPROVED="Niels Horn" diff --git a/system/grub4dos/slack-desc b/system/grub4dos/slack-desc index 05c3637223..982ce9cbf5 100644 --- a/system/grub4dos/slack-desc +++ b/system/grub4dos/slack-desc @@ -13,7 +13,7 @@ grub4dos: and new features such as built-in BIOS disk emulation, ATAPI CDROM grub4dos: driver, and Chinese support. It can be loaded from DOS/LINUX, grub4dos: via Windows boot manager/syslinux/lilo, or from MBR/CD. grub4dos: -grub4dos: Homepage: https://gna.org/projects/grub4dos/ +grub4dos: Homepage: http://code.google.com/p/grub4dos-chenall/ grub4dos: grub4dos: grub4dos: -- cgit v1.2.3-65-gdbad