#!/bin/sh CWD=`pwd` TMP=${TMP:-/tmp} PKG=$TMP/package-ruby VERSION=1.8.6 ARCH=${ARCH:-x86_64} BUILD=${BUILD:-1} DISTRO=${DISTRO:-slamd64} if [ $DISTRO = slackware ]; then PKGARCH=$ARCH else PKGARCH=${ARCH}_${DISTRO} fi if [ $DISTRO = slamd64 ]; then LIBSUFFIX=64 else LIBSUFFIX= fi if [ ! -d $TMP ]; then mkdir -p $TMP fi rm -rf $PKG mkdir -p $PKG if [ "$ARCH" = "i386" ]; then SLKCFLAGS="-O2 -march=i386 -mcpu=i686" elif [ "$ARCH" = "i486" ]; then SLKCFLAGS="-O2 -march=i486 -mtune=i686" elif [ "$ARCH" = "s390" ]; then SLKCFLAGS="-O2" elif [ "$ARCH" = "x86_64" ]; then SLKCFLAGS="-O2 -fPIC" fi cd $TMP rm -rf ruby-$VERSION tar xjvf $CWD/ruby-$VERSION.tar.bz2 || exit 1 cd ruby-$VERSION chown -R root:root . find . -perm 666 -exec chmod 644 {} \; find . -perm 664 -exec chmod 644 {} \; find . -perm 600 -exec chmod 644 {} \; find . -perm 444 -exec chmod 644 {} \; find . -perm 400 -exec chmod 644 {} \; find . -perm 440 -exec chmod 644 {} \; find . -perm 777 -exec chmod 755 {} \; find . -perm 775 -exec chmod 755 {} \; find . -perm 511 -exec chmod 755 {} \; find . -perm 711 -exec chmod 755 {} \; find . -perm 555 -exec chmod 755 {} \; if [ "x$LIBSUFFIX" = "x64" ]; then zcat $CWD/ruby-multilib.patch.gz | patch -p1 --verbose || exit 1 zcat $CWD/ruby-tcltk-multilib.patch.gz | patch -p1 --verbose || exit 1 fi CFLAGS="$SLKCFLAGS" \ ./configure \ --prefix=/usr \ --libdir=/usr/lib$LIBSUFFIX \ --mandir=/usr/man \ --datadir=/usr/share \ --enable-shared \ --enable-install-doc \ --disable-static \ $ARCH-$DISTRO-linux make -j12 || exit 1 make install DESTDIR=$PKG mkdir -p $PKG/usr/doc/ruby-$VERSION cp -a \ COPYING COPYING.ja GPL LEGAL LGPL README README.EXT README.EXT.ja README.ja ToDo \ $PKG/usr/doc/ruby-$VERSION ( cd $PKG find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null ) strip -g $PKG/usr/lib$LIBSUFFIX/*.a # Gzip the man pages: gzip -9 $PKG/usr/man/man?/*.? # Fun for later #( cd $PKG/usr/man # for i in `find . -type l` ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done # gzip -9 */*.? #) mkdir -p $PKG/install cat $CWD/slack-desc > $PKG/install/slack-desc cd $PKG makepkg -l y -c n $TMP/ruby-$(echo $VERSION | tr - _)-$PKGARCH-$BUILD.tgz