perl/rakudo: Updated f/v 2018.06, moved from development/, new maint

Signed-off-by: David Spencer <idlemoor@slackbuilds.org>
This commit is contained in:
Andreas Voegele 2018-07-09 17:49:07 +01:00 committed by David Spencer
parent d877e3abdf
commit b8856d36b1
8 changed files with 160 additions and 115 deletions

View file

@ -1,7 +0,0 @@
This is Rakudo Perl, a Perl 6 compiler for the Parrot virtual machine.
This directory contains only the Rakudo Perl 6 compiler itself; it
does not contain any of the modules, documentation, or other items
that would normally come with a full Perl 6 distribution. If you're
after more than just the bare compiler, please download the latest
Rakudo Star package.

View file

@ -1,94 +0,0 @@
#!/bin/sh
# svatsan 2013/03/17
# Slackware build script for Rakudo
# Written by svatsan <nastavs [at] gmail [dot] com>
#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
#
# 1. Redistributions of this script must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=rakudo
VERSION=${VERSION:-2013.05}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i486 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i486" ]; then
SLKCFLAGS="-O2 -march=i486 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
fi
set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$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 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
perl Configure.pl \
--prefix=/usr \
--with-parrot=/usr/bin/parrot \
--with-nqp=/usr/bin/nqp
make
make DESTDIR=$PKG install
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
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
CREDITS README VERSION INSTALL.txt LICENSE docs/* \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
rm -rf $PKG/usr/share
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}

View file

@ -1,10 +0,0 @@
PRGNAM="rakudo"
VERSION="2013.05"
HOMEPAGE="https://rakudo.org/"
DOWNLOAD="https://rakudo.org/downloads/rakudo/rakudo-2013.05.tar.gz"
MD5SUM="3ff710984bb775186c78cec4f11abba3"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="nqp"
MAINTAINER="Shrivatsan V Sampathkumar"
EMAIL="nastavs@gmail.com"

21
perl/rakudo/README Normal file
View file

@ -0,0 +1,21 @@
Rakudo Perl 6 is a production-ready, stable implementation of the Perl
6 programming language.
Information on Perl 6 can be found at https://www.perl6.org/.
Install the perl6-Readline package or rlwrap to enable command line
editing in the perl6 interpreter.
Optional Dependencies
Install the zef package manager to manage your Perl 6 modules.
By default, Rakudo is built with support for MoarVM. The JVM backend is
experimental and requires JDK 8.
BACKENDS=moar,jvm ./rakudo.SlackBuild
Run the tests with:
MAKETEST=yes ./rakudo.SlackBuild

15
perl/rakudo/doinst.sh Normal file
View file

@ -0,0 +1,15 @@
config() {
NEW="$1"
OLD="$(dirname $NEW)/$(basename $NEW .new)"
# If there's no config file by that name, mv it over:
if [ ! -r $OLD ]; then
mv $NEW $OLD
elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
# toss the redundant copy
rm $NEW
fi
# Otherwise, we leave the .new copy for the admin to consider...
}
config etc/profile.d/rakudo.csh.new
config etc/profile.d/rakudo.sh.new

View file

@ -0,0 +1,110 @@
#!/bin/sh
# Slackware build script for rakudo
# Copyright 2018 Andreas Voegele <andreas@andreasvoegele.com>
#
# Permission to use, copy, modify, and distribute this software for any
# purpose with or without fee is hereby granted, provided that the above
# copyright notice and this permission notice appear in all copies.
#
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
PRGNAM=rakudo
VERSION=${VERSION:-2018.06}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
BACKENDS=${BACKENDS:-moar}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
fi
set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$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 {} \;
perl Configure.pl \
--prefix=/usr \
--backends=$BACKENDS
make
if [ "${MAKETEST:-no}" = "yes" ]; then
make test
fi
make install DESTDIR=$PKG
# Arch Linux uses the name perl6-install-dist.
cp tools/install-dist.p? $PKG/usr/bin/perl6-install-dist
chmod 755 $PKG/usr/bin/perl6-install-dist
# Create rakudo.csh and rakudo.sh in /etc/profile.d.
BINDIRS='$HOME/.perl6/bin:/usr/share/perl6/site/bin:/usr/share/perl6/vendor/bin'
mkdir -p $PKG/etc/profile.d
cat << EOF > $PKG/etc/profile.d/rakudo.csh.new
#!/bin/csh
setenv PATH \${PATH}:$BINDIRS
EOF
chmod 755 $PKG/etc/profile.d/rakudo.csh.new
cat << EOF > $PKG/etc/profile.d/rakudo.sh.new
#!/bin/sh
export PATH=\$PATH:$BINDIRS
EOF
chmod 755 $PKG/etc/profile.d/rakudo.sh.new
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
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
CREDITS LICENSE README.md \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}

10
perl/rakudo/rakudo.info Normal file
View file

@ -0,0 +1,10 @@
PRGNAM="rakudo"
VERSION="2018.06"
HOMEPAGE="https://rakudo.org/"
DOWNLOAD="https://rakudo.org/dl/rakudo/rakudo-2018.06.tar.gz"
MD5SUM="7b1490bd3ad690591b3c8cce8dc81b61"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="nqp"
MAINTAINER="Andreas Voegele"
EMAIL="andreas@andreasvoegele.com"

View file

@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
rakudo: rakudo (a Perl 6 compiler for the Parrot virtual machine)
rakudo: rakudo (compiler for the Perl 6 programming language)
rakudo:
rakudo: Rakudo Perl 6, or simply Rakudo, is a compiler for the Perl 6
rakudo: programming language.
rakudo: It runs on the Parrot virtual machine.
rakudo: Rakudo Perl 6 is a production-ready, stable implementation of the Perl
rakudo: 6 programming language.
rakudo:
rakudo: Homepage: https://rakudo.org/
rakudo:
rakudo:
rakudo:
rakudo:
rakudo: