compress() { if [ -d $P/usr/lib ] ; then ( cd $P/usr/lib ; strip -g *.so *.a ) fi if [ -d $P/usr/bin ]; then ( cd $P/usr/bin ; strip * ) fi if [ -d $P/usr/sbin ]; then ( cd $P/usr/sbin ; strip * ) fi if [ -d $P/usr/info ]; then ( cd $P/usr/info ; gzip -f *info*) fi for i in 1 2 3 4 5 6 7 8 ; do if [ -d $P/usr/man/man$i ]; then ( cd $P/usr/man/man$i ; for j in *.$i ; do if [ -h $j ] ; then LN_TARGET=`ls -l $j | awk '{print $11}'` rm $j ln -sf $LN_TARGET.gz $j.gz else gzip $j fi done ) fi done } ################### URI=ftp://alpha.gnu.org/gnu/grub/grub-0.93.tar.gz src=grub-0.93 src2=grubconfig src3=egrubconfig src4=setup.bootloader src5=esetup.bootloader src6=grubimg.xpm.gz patch=grub-0.93-splashimage.patch patch2=grub-static.patch # compatibility for automake 1.6 patch101=grub-0.92-automake16.patch # patches submitted upstream and pending approval # change the message so that how to accept changes is clearer (#53846) patch11=grub-0.93-endedit.patch # support large disks (#80980, #63848) (applied upstream) patch12=grub-0.93-largedisk.patch # patches 21 and 22 are for features proposed but not accepted upstream # add support for appending kernel arguments patch21=grub-0.90-append.patch # add support for lilo -R-esque select a new os to boot into patch22=grub-0.91-bootonce.patch pkg=grub.tgz ################### #AUTOMAKE=`/usr/local/bin/automake --version | grep "^automake" | sed "s/automake (GNU automake) //"` #if [ ! $AUTOMAKE = "1.5" ]; then # echo "you use automake $AUTOMAKE" # echo "but $src need automake-1.5" # exit #fi P=`pwd`/work rm -rf $P mkdir -p $P/usr make clean rm -rf config.cache config.log echo ==== $patch patch -p1 < ../$patch echo ==== $patch101 patch -p1 < ../$patch101 echo ==== $patch11 patch -p0 < ../$patch11 echo ==== $patch12 patch -p0 < ../$patch12 echo ==== $patch21 patch -p1 < ../$patch21 echo ==== $patch22 patch -p1 < ../$patch22 #automake #autoconf autoreconf --install --force LDFLAGS="-static" export LDFLAGS ./configure --prefix=/usr --build=i386-pc-linux #patch -p0 < ../$patch2 make make install prefix=$P/usr mkdir -p $P/usr/doc/$src for i in AUTHORS BUGS COPYING ChangeLog INSTALL MAINTENANCE NEWS README THANKS TODO ; do cp -p $i $P/usr/doc/$src chown root:root $P/usr/doc/$src/$i gzip -f $P/usr/doc/$src/$i done mkdir -p $P/sbin install ../$src2 $P/sbin install ../$src3 $P/sbin mkdir -p $P/var/adm/setup install ../$src4 $P/var/adm/setup install ../$src5 $P/var/adm/setup mkdir -p $P/boot/grub cp -a $P/usr/share/grub/i386-pc/* $P/boot/grub cp ../$src6 $P/boot/grub compress cd $P /sbin/makepkg $pkg << EOF y y EOF