diff options
author | Shahab Vahedi <list+sbo@vahedi.org> | 2024-06-12 23:53:29 +0700 |
---|---|---|
committer | Willy Sudiarto Raharjo <willysr@slackbuilds.org> | 2024-06-15 07:37:46 +0700 |
commit | e0df736bbc72311fa165c3a3aa3cf8986b162e17 (patch) | |
tree | 6d2cc33e76d4071cac3086d08730d820897ac988 | |
parent | a78e95d932fb787875fbef0afe42c9f5ed82ee4e (diff) |
perl/perl-Getopt-Tabular: Added (table-driven argument parsing).
Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
-rw-r--r-- | perl/perl-Getopt-Tabular/README | 16 | ||||
-rw-r--r-- | perl/perl-Getopt-Tabular/perl-Getopt-Tabular.SlackBuild | 94 | ||||
-rw-r--r-- | perl/perl-Getopt-Tabular/perl-Getopt-Tabular.info | 10 | ||||
-rw-r--r-- | perl/perl-Getopt-Tabular/slack-desc | 19 |
4 files changed, 139 insertions, 0 deletions
diff --git a/perl/perl-Getopt-Tabular/README b/perl/perl-Getopt-Tabular/README new file mode 100644 index 000000000000..8af346d7be99 --- /dev/null +++ b/perl/perl-Getopt-Tabular/README @@ -0,0 +1,16 @@ +Getopt::Tabular is a Perl 5 module for table-driven argument parsing, +vaguely inspired by John Ousterhout's Tk_ParseArgv. All you really need +to do to use the package is set up a table describing all your +command-line options, and call &GetOptions with three arguments: a +reference to your option table, a reference to @ARGV (or something like +it), and an optional third array reference (say, to @newARGV). +&GetOptions will process all arguments in @ARGV, and copy any leftover +arguments (i.e. those that are not options or arguments to some option) +to the @newARGV array. (If the @newARGV argument is not supplied, +GetOptions will replace @ARGV with the stripped-down argument list.) If +there are any invalid options, GetOptions will print an error message +and return 0. + +If you have local Perl set up and override the "install base" parameter +through the $PERL_MB_OPT or $PERL_MM_OPT variables then the build will +fail. diff --git a/perl/perl-Getopt-Tabular/perl-Getopt-Tabular.SlackBuild b/perl/perl-Getopt-Tabular/perl-Getopt-Tabular.SlackBuild new file mode 100644 index 000000000000..7112a413e77c --- /dev/null +++ b/perl/perl-Getopt-Tabular/perl-Getopt-Tabular.SlackBuild @@ -0,0 +1,94 @@ +#!/bin/bash + +# Slackware build script for Getopt-Tabular + +# Copyright 2024 Shahab Vahedi, NL +# All rights reserved. +# +# 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. + +cd $(dirname $0) ; CWD=$(pwd) + +PRGNAM=perl-Getopt-Tabular +VERSION=${VERSION:-0.3} +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} +PKGTYPE=${PKGTYPE:-tgz} +ARCH=noarch + +if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then + echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE" + exit 0 +fi + +TMP=${TMP:-/tmp/SBo} +PKG=$TMP/package-$PRGNAM +OUTPUT=${OUTPUT:-/tmp} + +set -e + +SRCNAM="$(printf $PRGNAM | cut -d- -f2-)" + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $TMP +rm -rf $SRCNAM-$VERSION +tar xvf $CWD/$SRCNAM-$VERSION.tar.gz +cd $SRCNAM-$VERSION +chown -R root:root . +find . -type f -exec chmod 644 {} + -o -type d -exec chmod 755 {} + + +# Sanity check before setting the PREFIX, else Perl is going to bail out +case "$PERL_MB_OPT" in + *--install_base*) + printf "There should be no '--install_base' in your PERL_MB_OPT variable.\n" + exit 1 + ;; +esac +case "$PERL_MM_OPT" in + *INSTALL_BASE=*) + printf "There should be no 'INSTALL_BASE=' in your PERL_MM_OPT variable.\n" + exit 1 + ;; +esac + +perl Makefile.PL \ + PREFIX=/usr \ + INSTALLDIRS=vendor \ + INSTALLVENDORMAN3DIR=/usr/man/man3 +make +make test +make install DESTDIR=$PKG +gzip -9 $PKG/usr/man/man*/* + +find $PKG -name perllocal.pod \ + -o -name ".packlist" \ + -o -name "*.bs" \ + | xargs rm -f + +find $PKG -depth -type d -empty -delete || true + +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +cp -a Changes README demo $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 diff --git a/perl/perl-Getopt-Tabular/perl-Getopt-Tabular.info b/perl/perl-Getopt-Tabular/perl-Getopt-Tabular.info new file mode 100644 index 000000000000..4ede07bbcb56 --- /dev/null +++ b/perl/perl-Getopt-Tabular/perl-Getopt-Tabular.info @@ -0,0 +1,10 @@ +PRGNAM="perl-Getopt-Tabular" +VERSION="0.3" +HOMEPAGE="https://metacpan.org/pod/Getopt::Tabular" +DOWNLOAD="https://cpan.metacpan.org/authors/id/G/GW/GWARD/Getopt-Tabular-0.3.tar.gz" +MD5SUM="5b24ed68318a749df3930d25b13dd436" +DOWNLOAD_x86_64="" +MD5SUM_x86_64="" +REQUIRES="" +MAINTAINER="Shahab Vahedi" +EMAIL="list+sbo@vahedi.org" diff --git a/perl/perl-Getopt-Tabular/slack-desc b/perl/perl-Getopt-Tabular/slack-desc new file mode 100644 index 000000000000..8d1dedac164b --- /dev/null +++ b/perl/perl-Getopt-Tabular/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------------------------------------------------------| +perl-Getopt-Tabular: perl-Getopt-Tabular (table-driven argument parsing for Perl 5) +perl-Getopt-Tabular: +perl-Getopt-Tabular: Getopt::Tabular is a Perl 5 module for table-driven argument parsing, +perl-Getopt-Tabular: vaguely inspired by John Ousterhout's Tk_ParseArgv. +perl-Getopt-Tabular: +perl-Getopt-Tabular: +perl-Getopt-Tabular: +perl-Getopt-Tabular: +perl-Getopt-Tabular: +perl-Getopt-Tabular: +perl-Getopt-Tabular: |