summaryrefslogtreecommitdiff
path: root/source/d/ruby
diff options
context:
space:
mode:
Diffstat (limited to 'source/d/ruby')
-rwxr-xr-xsource/d/ruby/ruby.SlackBuild47
-rw-r--r--source/d/ruby/ruby.x86_64.diff11
2 files changed, 37 insertions, 21 deletions
diff --git a/source/d/ruby/ruby.SlackBuild b/source/d/ruby/ruby.SlackBuild
index 96234b8f..0ff66210 100755
--- a/source/d/ruby/ruby.SlackBuild
+++ b/source/d/ruby/ruby.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/sh
-# Copyright 2008, 2009 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,11 +21,22 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-VERSION=1.8.7-p174
-ARCH=${ARCH:-x86_64}
-NUMJOBS=${NUMJOBS:-" -j7 "}
+PKGNAM=ruby
+VERSION=$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1,2 -d - | rev)
BUILD=${BUILD:-1}
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) export ARCH=i486 ;;
+ arm*) export ARCH=arm ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) export ARCH=$( uname -m ) ;;
+ esac
+fi
+
+NUMJOBS=${NUMJOBS:-" -j7 "}
+
CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-ruby
@@ -48,10 +59,6 @@ rm -rf ruby-$VERSION
tar xvf $CWD/ruby-$VERSION.tar.?z* || exit 1
cd ruby-$VERSION || exit 1
-if [ "$ARCH" = "x86_64" ]; then
- zcat $CWD/ruby.x86_64.diff.gz | patch -p1 --verbose || exit 1
-fi
-
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -70,20 +77,40 @@ CFLAGS="$SLKCFLAGS" \
--datadir=/usr/share \
--docdir=/usr/doc/ruby-$VERSION \
--enable-shared \
+ --enable-pthread \
--enable-install-doc \
- --enable-static \
--build=$ARCH-slackware-linux
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
+# This symlink is needed by things that include ruby/config.h.
+( cd $PKG/usr/include/
+ if [ ! -e ruby -a -d ruby-*/*-*/ruby ]; then
+ ln -s ruby-*/*-*/ruby .
+ fi
+)
+
+# These include files are no longer installed as of ruby-1.9.1, but
+# kdebindings will not compile without them. Try to remove these
+# from the package later if the situation changes.
+mkdir -p $PKG/usr/include/ruby-$(echo $VERSION | cut -f 1 -d -)/ruby
+cp -a node.h version.h revision.h \
+ $PKG/usr/include/ruby-$(echo $VERSION | cut -f 1 -d -)/ruby
+
mkdir -p $PKG/usr/doc/ruby-$VERSION
cp -a \
- COPYING* *GPL* LEGAL NEWS README* ToDo \
+ COPYING* *GPL* ChangeLog LEGAL NEWS README* ToDo \
$PKG/usr/doc/ruby-$VERSION
+# The entire ChangeLog is excessive for most users:
+cat $PKG/usr/doc/ruby-$VERSION/ChangeLog | head -n 1000 > $PKG/usr/doc/ruby-$VERSION/CL
+mv $PKG/usr/doc/ruby-$VERSION/CL $PKG/usr/doc/ruby-$VERSION/ChangeLog
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+find $PKG | xargs file | grep -e "current ar archive" \
+ | cut -f 1 -d : | xargs strip --strip-debug 2> /dev/null
# Compress and if needed symlink the man pages:
if [ -d $PKG/usr/man ]; then
diff --git a/source/d/ruby/ruby.x86_64.diff b/source/d/ruby/ruby.x86_64.diff
deleted file mode 100644
index c557546d..00000000
--- a/source/d/ruby/ruby.x86_64.diff
+++ /dev/null
@@ -1,11 +0,0 @@
---- ruby-1.8.7-p160.orig/mkconfig.rb 2008-06-06 12:39:57.000000000 +0200
-+++ ruby-1.8.7-p160/mkconfig.rb 2009-04-29 20:33:58.000000000 +0200
-@@ -102,7 +102,7 @@
-
- drive = File::PATH_SEPARATOR == ';'
-
--prefix = '/lib/ruby/' + RUBY_VERSION.sub(/\.\d+$/, '') + '/' + RUBY_PLATFORM
-+prefix = '/lib64/ruby/' + RUBY_VERSION.sub(/\.\d+$/, '') + '/' + RUBY_PLATFORM
- print " TOPDIR = File.dirname(__FILE__).chomp!(#{prefix.dump})\n"
- print " DESTDIR = ", (drive ? "TOPDIR && TOPDIR[/\\A[a-z]:/i] || " : ""), "'' unless defined? DESTDIR\n"
- print " CONFIG = {}\n"