diff options
author | Andreas Voegele <andreas@andreasvoegele.com> | 2018-07-09 18:15:36 +0100 |
---|---|---|
committer | David Spencer <idlemoor@slackbuilds.org> | 2018-07-09 18:15:36 +0100 |
commit | d065901797a0e68476700911bb631252233a82c0 (patch) | |
tree | ed7bfb01ccecb9348151241638ce4c70d479ab93 /perl | |
parent | b8856d36b1d2a75e64cf4d75674611583547198a (diff) | |
download | slackbuilds-d065901797a0e68476700911bb631252233a82c0.tar.gz |
perl/perl6-Readline: Added (Perl 6 interface to GNU Readline).
Signed-off-by: David Spencer <idlemoor@slackbuilds.org>
Diffstat (limited to 'perl')
-rw-r--r-- | perl/perl6-Readline/README | 9 | ||||
-rw-r--r-- | perl/perl6-Readline/ncurses.patch | 19 | ||||
-rw-r--r-- | perl/perl6-Readline/perl6-Readline.SlackBuild | 94 | ||||
-rw-r--r-- | perl/perl6-Readline/perl6-Readline.info | 10 | ||||
-rw-r--r-- | perl/perl6-Readline/slack-desc | 19 |
5 files changed, 151 insertions, 0 deletions
diff --git a/perl/perl6-Readline/README b/perl/perl6-Readline/README new file mode 100644 index 0000000000..e02a33fd9e --- /dev/null +++ b/perl/perl6-Readline/README @@ -0,0 +1,9 @@ +A thin OO wrapper around the GNU Readline library for the Perl 6 +programming language. + +This module adds command line editing to the perl6 interpreter. + +Create the file ~/.perl6/rakudo-history if you would like to keep your +command history: + + mkdir -p ~/.perl6 && touch ~/.perl6/rakudo-history diff --git a/perl/perl6-Readline/ncurses.patch b/perl/perl6-Readline/ncurses.patch new file mode 100644 index 0000000000..3f6eba9cf9 --- /dev/null +++ b/perl/perl6-Readline/ncurses.patch @@ -0,0 +1,19 @@ +From: https://github.com/drforr/perl6-readline/issues/23 + +On Slackware 14.2, symbols from ncurses need to be loaded before symbols from +readline can be used. + +--- lib/Readline.pm.orig 2017-09-21 10:14:05.000000000 +0200 ++++ lib/Readline.pm 2018-07-02 22:14:26.473664202 +0200 +@@ -1,5 +1,11 @@ + use v6; + use NativeCall; ++ ++INIT { ++ my sub tgetnum(Str) returns int32 is native('ncurses') { * } ++ tgetnum(''); ++} ++ + # + # XXX &cglobal.signature -> (Any $libname, Any $symbol, Any $target-type) + # diff --git a/perl/perl6-Readline/perl6-Readline.SlackBuild b/perl/perl6-Readline/perl6-Readline.SlackBuild new file mode 100644 index 0000000000..fd12dc53c2 --- /dev/null +++ b/perl/perl6-Readline/perl6-Readline.SlackBuild @@ -0,0 +1,94 @@ +#!/bin/sh + +# Slackware build script for perl6-Readline + +# 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=perl6-Readline +VERSION=${VERSION:-0.0.2+e2cf431} +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} + +SRCNAM=perl6-readline +GITREF=${GITREF:-e2cf431a87c36d420a3f2737b2cbc160efeb9233} + +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 $SRCNAM-$GITREF +tar xvf $CWD/$SRCNAM-$GITREF.tar.gz +cd $SRCNAM-$GITREF +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 {} \; + +if [ "$(readlink /usr/lib${LIBDIRSUFFIX}/libreadline.so)" = "libreadline.so.6" ]; then + patch -b -p0 < $CWD/ncurses.patch +fi + +if [ "${MAKETEST:-no}" = "yes" ]; then + env PERL6LIB=lib prove -e perl6 +fi + +RAKUDO_LOG_PRECOMP=1 \ +RAKUDO_RERESOLVE_DEPENDENCIES=0 \ +perl6-install-dist \ + --to="$PKG/usr/share/perl6/vendor" \ + --for=vendor \ + --from=. + +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +cp -a \ + 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 + +cd $PKG +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz} diff --git a/perl/perl6-Readline/perl6-Readline.info b/perl/perl6-Readline/perl6-Readline.info new file mode 100644 index 0000000000..e026776833 --- /dev/null +++ b/perl/perl6-Readline/perl6-Readline.info @@ -0,0 +1,10 @@ +PRGNAM="perl6-Readline" +VERSION="0.0.2+e2cf431" +HOMEPAGE="https://github.com/drforr/perl6-readline" +DOWNLOAD="https://github.com/drforr/perl6-readline/archive/e2cf431/perl6-readline-e2cf431a87c36d420a3f2737b2cbc160efeb9233.tar.gz" +MD5SUM="b43e7c8947b2c6506bcf84827a3bff2f" +DOWNLOAD_x86_64="" +MD5SUM_x86_64="" +REQUIRES="rakudo" +MAINTAINER="Andreas Voegele" +EMAIL="andreas@andreasvoegele.com" diff --git a/perl/perl6-Readline/slack-desc b/perl/perl6-Readline/slack-desc new file mode 100644 index 0000000000..de6d3d2a0a --- /dev/null +++ b/perl/perl6-Readline/slack-desc @@ -0,0 +1,19 @@ +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. +# Line up the first '|' above the ':' following the base package name, and +# the '|' on the right side marks the last column you can put a character in. +# You must make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':' except on otherwise blank lines. + + |-----handy-ruler------------------------------------------------------| +perl6-Readline: perl6-Readline (Perl 6 interface to the GNU Readline library) +perl6-Readline: +perl6-Readline: A thin OO wrapper around the GNU Readline library for the Perl 6 +perl6-Readline: programming language. +perl6-Readline: +perl6-Readline: This module adds command line editing to the perl6 interpreter. +perl6-Readline: +perl6-Readline: Homepage: https://github.com/drforr/perl6-readline +perl6-Readline: +perl6-Readline: +perl6-Readline: |