ruby/ruby2: Updated for version 2.2.2 + new maintainer.

Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
This commit is contained in:
Brenton Earl 2015-06-16 22:35:17 +07:00 committed by Willy Sudiarto Raharjo
parent 500401970a
commit 65ef658c49
3 changed files with 75 additions and 49 deletions

View File

@ -1,11 +1,24 @@
Ruby 2.0
============
Ruby 2.2.2
============
Ruby is an interpreted scripting language for quick and easy
object-oriented programming. It has many features to process text
files and to do system management tasks (as in Perl). It is simple,
straight-forward, and extensible.
Is it safe to install on a system that already has another version
of Ruby.
============
Notes
============
Visit the Ruby project online at http://www.ruby-lang.org/
This build script will install a newer version of ruby alongside
the provided official Slackware ruby package, however it will overwrite
/usr/lib{64}/libruby.so, so make sure to reinstall ruby package
when you remove this package.
This package is not required, as the standard Slackware
system does provide a version of ruby.
Execute using '/usr/bin/ruby2' to utilize. All binaries
installed by this package are installed with an added "2" at the
end of each. (ruby2, rake2, irb2, gem2, erb2, rdoc2, ri2)

View File

@ -1,7 +1,14 @@
#!/bin/sh
# Slackware build script for Ruby 2.0
# Copyright 2015 Brenton Earl <brent@exitstatusone.com>, Tooele, UT, USA
# All rights reserved.
#
# Modified the Official Slackware 14.1 Slackbuild
#
# Copyright 2008, 2009, 2010, 2011, 2012, 2013 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Parts taken from Daniel Romero's Ruby 2.0 Slackbuild script
# Copyright 2013 Daniel Romero <infoslack@gmail.com>, Fortaleza, CE, BRA
# All rights reserved.
#
@ -23,13 +30,11 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=ruby2
VERSION=${VERSION:-2.0.0_p353}
SRCNAM=ruby
VERSION=${VERSION:-2.2.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
SRCNAM=ruby
SRCVER=$(echo $VERSION | tr _ - )
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i486 ;;
@ -43,41 +48,37 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
# set any SLKCFLAGS here
if [ "$ARCH" = "i486" ]; then
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
LIBDIRSUFFIX=""
SLKCFLAGS="-march=i486 -mtune=i686 -O3 -fno-strict-aliasing"
OPTFLAGS=-O3
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O3 -fno-strict-aliasing"
OPTFLAGS=-O3
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
LIBDIRSUFFIX="64"
else
LIBDIRSUFFIX=""
SLKCFLAGS="-O3 -fPIC -fno-strict-aliasing"
OPTFLAGS=-O3
LIBDIRSUFFIX="64"
fi
set -eu
if [ ! $UID = 0 ]; then
cat << EOF
This script must be run as root
EOF
exit 1
fi
set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $SRCNAM-$SRCVER
tar xvf $CWD/$SRCNAM-$SRCVER.tar.gz
cd $SRCNAM-$SRCVER
rm -rf $SRCNAM-$VERSION
tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
cd $SRCNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
-o -perm 511 \) -exec chmod 755 {} \; -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
CFLAGS="$SLKCFLAGS" \
optflags=$OPTFLAGS \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
@ -95,22 +96,34 @@ make install DESTDIR=$PKG
# Maintaining compatibility with another version of Ruby that is already installed
# Remove this block if you want to just keep this version
( cd $PKG/usr/bin
mv ruby ruby2
mv rake rake2
mv irb irb2
mv gem gem2
mv erb erb2
mv rdoc rdoc2
mv testrb testrb2
mv ri ri2
mv ruby ruby2
mv rake rake2
mv irb irb2
mv gem gem2
mv erb erb2
mv rdoc rdoc2
mv ri ri2
)
# Install docs
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
BSDL COPYING* *GPL* ChangeLog LEGAL NEWS README* \
$PKG/usr/doc/$PRGNAM-$VERSION
cp -a BSDL CONTRIBUTING* COPYING* *GPL* ChangeLog LEGAL NEWS README* \
$PKG/usr/doc/$PRGNAM-$VERSION
# Remove static file so it will not overwrite Slackware's ruby
rm -f $PKG/usr/lib${LIBDIRSUFFIX}/libruby-static.a
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
# Rename man files so it will not overwrite Slackware's ruby man files
cd $PKG/usr/man/man1
mv erb.1 erb2.1
mv irb.1 irb2.1
mv rake.1 rake2.1
mv ri.1 ri2.1
mv ruby.1 ruby2.1
cd $TMP/$SRCNAM-$VERSION
find $PKG/usr/man -type f -exec gzip -9 {} \;
for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done

View File

@ -1,10 +1,10 @@
PRGNAM="ruby2"
VERSION="2.0.0-p353"
VERSION="2.2.2"
HOMEPAGE="http://www.ruby-lang.org"
DOWNLOAD="http://cache.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0-p353.tar.gz"
MD5SUM="78282433fb697dd3613613ff55d734c1"
DOWNLOAD="http://cache.ruby-lang.org/pub/ruby/2.2/ruby-2.2.2.tar.gz"
MD5SUM="326e99ddc75381c7b50c85f7089f3260"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="Daniel Romero"
EMAIL="infoslack@gmail.com"
REQUIRES="%README%"
MAINTAINER="Brenton Earl"
EMAIL="brent@exitstatusone.com"