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 Ruby is an interpreted scripting language for quick and easy
object-oriented programming. It has many features to process text object-oriented programming. It has many features to process text
files and to do system management tasks (as in Perl). It is simple, files and to do system management tasks (as in Perl). It is simple,
straight-forward, and extensible. 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 #!/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 # Copyright 2013 Daniel Romero <infoslack@gmail.com>, Fortaleza, CE, BRA
# All rights reserved. # All rights reserved.
# #
@ -23,13 +30,11 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=ruby2 PRGNAM=ruby2
VERSION=${VERSION:-2.0.0_p353} SRCNAM=ruby
VERSION=${VERSION:-2.2.2}
BUILD=${BUILD:-1} BUILD=${BUILD:-1}
TAG=${TAG:-_SBo} TAG=${TAG:-_SBo}
SRCNAM=ruby
SRCVER=$(echo $VERSION | tr _ - )
if [ -z "$ARCH" ]; then if [ -z "$ARCH" ]; then
case "$( uname -m )" in case "$( uname -m )" in
i?86) ARCH=i486 ;; i?86) ARCH=i486 ;;
@ -43,41 +48,37 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp} OUTPUT=${OUTPUT:-/tmp}
# set any SLKCFLAGS here
if [ "$ARCH" = "i486" ]; then if [ "$ARCH" = "i486" ]; then
LIBDIRSUFFIX="" SLKCFLAGS="-march=i486 -mtune=i686 -O3 -fno-strict-aliasing"
elif [ "$ARCH" = "i686" ]; then OPTFLAGS=-O3
LIBDIRSUFFIX="" LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O3 -fno-strict-aliasing"
OPTFLAGS=-O3
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then elif [ "$ARCH" = "x86_64" ]; then
LIBDIRSUFFIX="64" SLKCFLAGS="-O3 -fPIC -fno-strict-aliasing"
else OPTFLAGS=-O3
LIBDIRSUFFIX="" LIBDIRSUFFIX="64"
fi fi
set -eu set -e
if [ ! $UID = 0 ]; then
cat << EOF
This script must be run as root
EOF
exit 1
fi
rm -rf $PKG rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT mkdir -p $TMP $PKG $OUTPUT
cd $TMP cd $TMP
rm -rf $SRCNAM-$SRCVER rm -rf $SRCNAM-$VERSION
tar xvf $CWD/$SRCNAM-$SRCVER.tar.gz tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
cd $SRCNAM-$SRCVER cd $SRCNAM-$VERSION
chown -R root:root . chown -R root:root .
find -L . \ find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
-o -perm 511 \) -exec chmod 755 {} \; -o \ -o -perm 511 \) -exec chmod 755 {} \; -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ \( -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 \ ./configure \
--prefix=/usr \ --prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \ --libdir=/usr/lib${LIBDIRSUFFIX} \
@ -95,22 +96,34 @@ make install DESTDIR=$PKG
# Maintaining compatibility with another version of Ruby that is already installed # Maintaining compatibility with another version of Ruby that is already installed
# Remove this block if you want to just keep this version # Remove this block if you want to just keep this version
( cd $PKG/usr/bin ( cd $PKG/usr/bin
mv ruby ruby2 mv ruby ruby2
mv rake rake2 mv rake rake2
mv irb irb2 mv irb irb2
mv gem gem2 mv gem gem2
mv erb erb2 mv erb erb2
mv rdoc rdoc2 mv rdoc rdoc2
mv testrb testrb2 mv ri ri2
mv ri ri2
) )
# Install docs
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \ cp -a BSDL CONTRIBUTING* COPYING* *GPL* ChangeLog LEGAL NEWS README* \
BSDL COPYING* *GPL* ChangeLog LEGAL NEWS README* \ $PKG/usr/doc/$PRGNAM-$VERSION
$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 {} \; 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 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" PRGNAM="ruby2"
VERSION="2.0.0-p353" VERSION="2.2.2"
HOMEPAGE="http://www.ruby-lang.org" HOMEPAGE="http://www.ruby-lang.org"
DOWNLOAD="http://cache.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0-p353.tar.gz" DOWNLOAD="http://cache.ruby-lang.org/pub/ruby/2.2/ruby-2.2.2.tar.gz"
MD5SUM="78282433fb697dd3613613ff55d734c1" MD5SUM="326e99ddc75381c7b50c85f7089f3260"
DOWNLOAD_x86_64="" DOWNLOAD_x86_64=""
MD5SUM_x86_64="" MD5SUM_x86_64=""
REQUIRES="" REQUIRES="%README%"
MAINTAINER="Daniel Romero" MAINTAINER="Brenton Earl"
EMAIL="infoslack@gmail.com" EMAIL="brent@exitstatusone.com"