aboutsummaryrefslogtreecommitdiff
path: root/dev
diff options
context:
space:
mode:
authorrhatto <rhatto@370017ae-e619-0410-ac65-c121f96126d4>2009-07-22 02:25:31 +0000
committerrhatto <rhatto@370017ae-e619-0410-ac65-c121f96126d4>2009-07-22 02:25:31 +0000
commit5491100afa473c45f96667ce6f89703d42e01503 (patch)
tree3341e9ea6b9672228ab1019b6b0cebbc97c142cd /dev
parent5158fb5c0ffc7fa2591d3ea639095816ca4f01fd (diff)
downloadslackbuilds-5491100afa473c45f96667ce6f89703d42e01503.tar.gz
slackbuilds-5491100afa473c45f96667ce6f89703d42e01503.tar.bz2
newsbeuter: adding newsbeuter; wyrd: adding wyrd; remind: adding remind; ddclient: adding ddclient; inadyn: adding inadyn
git-svn-id: svn+slack://slack.fluxo.info/var/svn/slackbuilds@2230 370017ae-e619-0410-ac65-c121f96126d4
Diffstat (limited to 'dev')
-rw-r--r--dev/libs/stfl/Manifest24
-rw-r--r--dev/libs/stfl/stfl-0.21.diff24
-rw-r--r--dev/libs/stfl/stfl.SlackBuild246
-rw-r--r--dev/perl/perl-array-compare/Manifest24
-rwxr-xr-xdev/perl/perl-array-compare/perl-array-compare.SlackBuild78
-rw-r--r--dev/perl/perl-io-socket-ssl/Manifest24
-rwxr-xr-xdev/perl/perl-io-socket-ssl/perl-io-socket-ssl.SlackBuild74
-rw-r--r--dev/perl/perl-mime-base64/Manifest23
-rwxr-xr-xdev/perl/perl-mime-base64/perl-mime-base64.SlackBuild78
-rw-r--r--dev/perl/perl-module-build/Manifest23
-rwxr-xr-xdev/perl/perl-module-build/perl-module-build.SlackBuild74
-rw-r--r--dev/perl/perl-net-ssleay/Manifest24
-rwxr-xr-xdev/perl/perl-net-ssleay/perl-net-ssleay.SlackBuild74
-rw-r--r--dev/perl/perl-sub-uplevel/Manifest23
-rwxr-xr-xdev/perl/perl-sub-uplevel/perl-sub-uplevel.SlackBuild74
-rw-r--r--dev/perl/perl-test-exception/Manifest23
-rwxr-xr-xdev/perl/perl-test-exception/perl-test-exception.SlackBuild74
-rw-r--r--dev/perl/perl-test-warn/Manifest23
-rwxr-xr-xdev/perl/perl-test-warn/perl-test-warn.SlackBuild74
-rw-r--r--dev/perl/perl-tree-dag_node/Manifest23
-rwxr-xr-xdev/perl/perl-tree-dag_node/perl-tree-dag_node.SlackBuild74
21 files changed, 1156 insertions, 22 deletions
diff --git a/dev/libs/stfl/Manifest b/dev/libs/stfl/Manifest
new file mode 100644
index 00000000..00551991
--- /dev/null
+++ b/dev/libs/stfl/Manifest
@@ -0,0 +1,24 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA256
+
+DIST stfl-0.21.tar.gz 41093 MD5 888502c3f332a0ee66e490690d79d404 RMD160 d8b56cc97b4d76adba8034ce9bbae631e6e9d17e SHA1 0313eafa1fe4dcfea1f2edd34d453baaa46df277 SHA256 bf0ead0a66b635602222bc9089414b99f99081b956c92baf77699d283bcc88eb SHA512 c8c2f3ce11259abad66e772c78b7e50fef2cb465807826542250626fef36ec798f7173d63a5647142bddf9feb9afaf2ea2871b0aa6732344b27e538db6fe5b2d
+MKBUILD stfl.mkbuild 5045 MD5 239030bc8bc48e0604955899b866d8f7 RMD160 816462174dc7323ca4704f2561c626bfc2bceeca SHA1 5fb9d46524818dbb3d843ab026f7dcc2d3ec3b0c SHA256 a222986d42f73cd5bd0604bf1d6f4ed3ea3eb8e9e700f6b6dc69af2b71ac59cc SHA512 6161c0f441dad899fa025303a21aa2980a8b93d79000b24dc0d208a2e64ea6fd4f7a37620b5a80569acffb952714fb290a234f27dc8406b37193c0269be0f5c0
+PATCH stfl-0.21.diff 1055 MD5 428bac68230c2f48b7379843b7fb6e7e RMD160 400ec767b14bbdfe79252eb183042e783944f18d SHA1 819333e501d6cc11441093db7169cb8c323e3d4e SHA256 4ac7cc4b98e72850f477a2473ec922b5f03b6875af1430709eb63ba4fbea86d1 SHA512 0441b9bad60af484a18576970c8cf377f7023e55847810f17a2fa537cbb8faa816ceb597bb5e1ab3612928ee2eeaf31049954e34be4c4e2399536305dad24ad6
+SLACKBUILD stfl.SlackBuild 7803 MD5 327f97318da473ddbc001865506532e5 RMD160 b2354d55143c5392f3d39180f7eb2ab13ee361cc SHA1 0553023456f850a41249f13f3897c1ca9af0402d SHA256 63f8ee6fcad4233e48e92c0ea3edd9f8ac7975990d7ea183f6c6688b4e61024a SHA512 5be32237b64704c71a9a92a68783645848c2fab825c81312b3084ce950e6d824c515218f8f88da54fcba5a1d482de981e21079f68ce7f6fe56082906640b1c79
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.9 (GNU/Linux)
+
+iQIcBAEBCAAGBQJKZKASAAoJEEHL93ESzgeirn8QALmu+XKBoISXvDH7o3muSilO
+URv7lnMLPYYuxn/5Y4kgNnh7/TNMwtwzPc+y/R9qfqN4IfZVQvsCeHL0vyUH47MG
+pOEA2Ex14QtOgAJ7yzTQRJxcSDlV9fXzPWxf4+y/dTUNA1msR81yE1wwGR9v41ak
++fuuh47PNaBURHtmtAU4RIX9gF8NUkdHvGZ1tC5zIvW9WEpEa7IUhWKNm63B4FOT
+Bz2MMdCVlCiWWGWk05SGnX0ldmr5EVgy5tyXbWEVu4AYahVINv2Vj7iNprh+4lSH
+jCj2zznIwfdfk28UBpaC0J6676xkEYNMH19AosBJpmD1GVG0VCjZGeDCHywfWSt7
+uuLZN0ToRPK306d/Z+rTukvrddijwsdvHuEIDo501BvnQKafUzApP52JHLYaYvT0
+tAvJYZml+4V39zZVcBdBpw6jk6gbRoibxPIHDHM4BuhtM6MOIAa0YStKGPmawiEV
+SyTRA5pTZcPlVcDLEFdPiLQpUGUfBxC40UD+hsbw/hz11iVwlCoSghMvlGDK4/KY
+mNxv4oIrJXAg9nsNndvE3nWdKh/HEj1oXkYsJ180F3BZV4SA7MHmqMLg+RC1f0PB
+nF55iZZBhhh0TBKcAvmkFo7BpP6LZd0daKeWOF7xeLDWIT2FnQoRw3QLN+xZPcIe
+hmYda15EsZsUW0q1O285
+=QQA2
+-----END PGP SIGNATURE-----
diff --git a/dev/libs/stfl/stfl-0.21.diff b/dev/libs/stfl/stfl-0.21.diff
new file mode 100644
index 00000000..f549de89
--- /dev/null
+++ b/dev/libs/stfl/stfl-0.21.diff
@@ -0,0 +1,24 @@
+diff -Naur stfl-0.21.orig/Makefile stfl-0.21/Makefile
+--- stfl-0.21.orig/Makefile 2009-06-19 14:30:52.000000000 -0300
++++ stfl-0.21/Makefile 2009-07-20 13:13:43.000000000 -0300
+@@ -22,7 +22,7 @@
+
+ export CC = gcc -pthread
+ export CFLAGS += -I. -Wall -Os -ggdb -D_GNU_SOURCE -fPIC
+-export LDLIBS += -lncursesw
++export LDLIBS += -lncursesw -liconv
+
+ SONAME := libstfl.so.0
+ VERSION := 0.21
+diff -Naur stfl-0.21.orig/python/Makefile.snippet stfl-0.21/python/Makefile.snippet
+--- stfl-0.21.orig/python/Makefile.snippet 2009-06-18 05:27:16.000000000 -0300
++++ stfl-0.21/python/Makefile.snippet 2009-07-20 13:14:02.000000000 -0300
+@@ -27,7 +27,7 @@
+
+ python/_stfl.so python/stfl.py python/stfl.pyc: libstfl.a stfl.h python/stfl.i swig/*.i
+ cd python && swig -python -threads stfl.i
+- gcc -shared -pthread -fPIC python/stfl_wrap.c -I/usr/include/python$(PYTHON_VERSION) \
++ gcc -shared -pthread -fPIC -liconv python/stfl_wrap.c -I/usr/include/python$(PYTHON_VERSION) \
+ -I. libstfl.a -lncursesw -o python/_stfl.so
+ cd python && python -c 'import stfl'
+
diff --git a/dev/libs/stfl/stfl.SlackBuild b/dev/libs/stfl/stfl.SlackBuild
new file mode 100644
index 00000000..8c683af7
--- /dev/null
+++ b/dev/libs/stfl/stfl.SlackBuild
@@ -0,0 +1,246 @@
+#!/bin/bash
+#
+# stfl.SlackBuild is free software; you can redistribute
+# it and/or modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2 of the License,
+# or any later version.
+#
+# stfl.SlackBuild is distributed in the hope that it will
+# be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
+# Public License for more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with this program; if not, write to the Free Software Foundation, Inc.,
+# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+#
+# slackbuild for stfl, by Silvio Rhatto
+# requires:
+# tested: stfl-0.21
+# model: generic.mkSlackBuild $Rev: 805 $
+#
+
+# Look for slackbuildrc
+if [ -f ~/.slackbuildrc ]; then
+ source ~/.slackbuildrc
+elif [ -f /etc/slackbuildrc ]; then
+ source /etc/slackbuildrc
+fi
+
+# Set variables
+CWD="$(pwd)"
+SRC_NAME="stfl"
+PKG_NAME="stfl"
+ARCH=${ARCH:=i486}
+SRC_VERSION=${VERSION:=0.21}
+PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')"
+BUILD=${BUILD:=1rha}
+SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME
+TMP=${TMP:=/tmp}
+PKG=${PKG:=$TMP/package-$PKG_NAME}
+REPOS=${REPOS:=$TMP}
+SLACKBUILD_PATH=${SLACKBUILD_PATH:="dev/libs/stfl"}
+PREFIX=${PREFIX:=/usr}
+PKG_WORK="$TMP/$SRC_NAME"
+CONF_OPTIONS=${CONF_OPTIONS:=""}
+NUMJOBS=${NUMJOBS:=""}
+
+# Set system libraries' path and optmization flags based on $ARCH
+LIBDIR="$PREFIX/lib"
+
+if [ "$ARCH" = "i386" ]; then
+ SLKCFLAGS="-O2 -march=i386 -mtune=i686"
+elif [ "$ARCH" = "i486" ]; then
+ SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIR="$PREFIX/lib64"
+ LDFLAGS="-L/lib64 -L/usr/lib64"
+fi
+
+# Set error codes (used by createpkg)
+ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33
+ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36
+ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39
+ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42
+ERROR_MANIFEST=43;
+
+# Clean up any leftovers of previous builds
+rm -rf "$PKG_WORK" 2> /dev/null
+rm -rf "$PKG" 2> /dev/null
+
+# Create directories if necessary
+mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR
+mkdir -p "$PKG" || exit $ERROR_MKDIR
+mkdir -p "$REPOS" || exit $ERROR_MKDIR
+mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR
+
+# Dowload source if necessary
+SRC="$SRC_NAME-$VERSION.tar.gz"
+URL="http://www.clifford.at/stfl/$SRC"
+
+if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then
+ wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET
+fi
+
+# Check Manifest file
+if [ -e "$CWD/Manifest" ]; then
+
+ # Manifest signature checking
+ if grep -q -- "-----BEGIN PGP SIGNED MESSAGE-----" $CWD/Manifest; then
+ echo "Checking Manifest signature..."
+ gpg --verify $CWD/Manifest
+ if [ "$?" != "0" ]; then
+ exit $ERROR_MANIFEST
+ fi
+ fi
+
+ MANIFEST_LINES="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | wc -l`"
+
+ for ((MANIFEST_COUNT=1; MANIFEST_COUNT <= $MANIFEST_LINES; MANIFEST_COUNT++)); do
+
+ MANIFEST_LINE="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | head -n $MANIFEST_COUNT | tail -n 1`"
+ MANIFEST_FILE="`echo $MANIFEST_LINE | awk '{ print $2 }'`"
+ MANIFEST_FILE_TYPE="`echo $MANIFEST_LINE | awk '{ print $1 }'`"
+
+ if [ -e "$SRC_DIR/$MANIFEST_FILE" ]; then
+ MANIFEST_FILE="$SRC_DIR/$MANIFEST_FILE"
+ else
+ MANIFEST_FILE="`find $CWD -name $MANIFEST_FILE`"
+ fi
+
+ if [ ! -e "$MANIFEST_FILE" ] || [ -d "$MANIFEST_FILE" ]; then
+ continue
+ fi
+
+ echo "Checking Manifest for $MANIFEST_FILE_TYPE $MANIFEST_FILE integrity..."
+
+ SIZE_SRC="`wc -c $MANIFEST_FILE | awk '{ print $1 }'`"
+ SIZE_MANIFEST="`echo $MANIFEST_LINE | awk '{ print $3 }'`"
+
+ # Check source code size
+ if [ "$SIZE_SRC" != "$SIZE_MANIFEST" ]; then
+ echo "SIZE Manifest: $SIZE_MANIFEST; SIZE $SRC: $SIZE_SRC"
+ exit $ERROR_MANIFEST
+ else
+ echo "Size match."
+ fi
+
+ # Check source code integrity
+ for ALGO in md5 rmd160 sha1 sha256 sha512; do
+ if [ $ALGO = "rmd160" ]; then
+ ALGO_SRC="`openssl rmd160 $MANIFEST_FILE | awk '{ print $2 }'`"
+ else
+ ALGO_SRC="`"$ALGO"sum $MANIFEST_FILE | awk '{ print $1 }'`"
+ fi
+ ALGO="`echo $ALGO | tr '[:lower:]' '[:upper:]'`"
+ ALGO_MANIFEST=$(echo $MANIFEST_LINE | sed "s/.* $ALGO //" | awk '{ print $1 }')
+ if [ "$ALGO_SRC" != "$ALGO_MANIFEST" ]; then
+ echo "$ALGO Manifest: $ALGO_MANIFEST; $ALGO $SRC: $ALGO_SRC"
+ exit $ERROR_MANIFEST
+ else
+ echo "$ALGO match."
+ fi
+ done
+
+ done
+
+else
+ exit $ERROR_MANIFEST
+fi
+
+# Untar
+cd "$PKG_WORK"
+tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR
+PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`"
+cd "$PKG_SRC"
+
+# Patch source
+patches=" [[PATCH URLS]]
+ $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff
+ $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff"
+for patch in $patches; do
+ patch="`basename $patch`"
+ if [ -f "$CWD/$patch" ]; then
+ patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH
+ elif [ -f "$CWD/patches/$patch" ]; then
+ patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH
+ elif [ -f "$CWD/$patch.gz" ]; then
+ gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH
+ elif [ -f "$CWD/patches/$patch.gz" ]; then
+ gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH
+ elif [ -f "$SRC_DIR/$patch" ]; then
+ if [ "`basename $patch .gz`" != "$patch" ]; then
+ gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH
+ elif [ "`basename $patch .bz2`" != "$patch" ]; then
+ bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH
+ else
+ patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH
+ fi
+ fi
+done
+
+# Configure
+sed -i -e "s:export prefix ?= /usr/local:export prefix ?= /usr/:" \
+ -e "s:export DESTDIR ?= /:export DESTDIR ?= $PKG/:" Makefile.cfg || exit $ERROR_CONF
+
+# Compile
+make $NUMJOBS || exit $ERROR_MAKE
+
+# Install
+make install DESTDIR="$PKG" || exit $ERROR_INSTALL
+
+# Strip binaries
+( cd "$PKG"
+ find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \
+ xargs strip --strip-unneeded 2> /dev/null
+ find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \
+ xargs strip --strip-unneeded 2> /dev/null
+)
+
+# Install documentation
+DOCS="COPYING README"
+mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR
+for doc in $DOCS; do
+ if [ -f "$doc" ]; then
+ cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION"
+ fi
+done
+
+# Add package description (slack-desc)
+mkdir -p "$PKG/install" || exit $ERROR_MKDIR
+cat << EODESC > "$PKG/install/slack-desc"
+# 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 ':'.
+
+ |-----handy-ruler---------------------------------------------------------|
+stfl: stfl
+stfl:
+stfl: STFL is a library which implements a curses-based
+stfl: widget set for text terminals. The STFL API can
+stfl: be used from C, SPL, Python, Perl and Ruby.
+stfl:
+stfl:
+stfl:
+stfl:
+stfl:
+stfl:
+EODESC
+
+# Build the package
+cd "$PKG"
+mkdir -p $REPOS/$SLACKBUILD_PATH
+makepkg -l y -c n "$REPOS/$SLACKBUILD_PATH/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG
+
+# Delete source and build directories if requested
+if [ "$CLEANUP" == "yes" ] || [ "$1" = "--cleanup" ]; then
+ rm -rf "$PKG_WORK" "$PKG"
+fi
diff --git a/dev/perl/perl-array-compare/Manifest b/dev/perl/perl-array-compare/Manifest
new file mode 100644
index 00000000..e809053e
--- /dev/null
+++ b/dev/perl/perl-array-compare/Manifest
@@ -0,0 +1,24 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA256
+
+DIST Array-Compare-1.18.tar.gz 9266 MD5 ebca871a2e9c37b389232a6be6700373 RMD160 d22c6b08c30426e2bc1a5becc6fc982386ac22ba SHA1 2f802816f55b3a8715d9dbe653a89b9c2b0003c6 SHA256 909660a73e447c78c2b01fec3e401bc5ee3d521043a7379619e8ae2457c87b7d SHA512 8950056b3bbfdbed835e560e9f488c2ce385640ae6c2a737cec1ac2eb6281faf00332646215de76df6b6477805b226cfc86f14a7b60abfcdc003b4e90414a854
+MKBUILD perl-array-compare.mkbuild 2471 MD5 b38cddc6607f3206f207509bd1e5a8ed RMD160 bef050920483429454bc779e1ecfe9b981e614cf SHA1 c8a80d6cd55480c96e8aeb34dbae132a2ac043f2 SHA256 8a2f4555896ac1183317c12cda75b2f4778180859f6e11aee8000839867385c9 SHA512 2f15687f13454367cde2e911245ff701b3e6e2cb698eb837c72f1a800891d0100605b6c8c0a972f4cc958005e5021445d86354448f68553ff13f59a19df828af
+SLACK-REQUIRED slack-required 95 MD5 eda62edb65b9f3f69ae1c11bf24b7818 RMD160 8a8040324799a7c3fba3c6910a77d86893bbc502 SHA1 884acb8cd90b68c894508c53cc1bf66f32ac13d5 SHA256 d8a8c840b3d5c642f0938a54c78bff5c0b9d8d6380dd25642e1620277f03d0d8 SHA512 7fe7d4119a3a492f44d90430737a9ea39803e78a94331d34952a1612311df31e16f9130a09aa6d2ca5050f6daba27310832577a4baef2661315c993b9001a006
+SLACKBUILD perl-array-compare.SlackBuild 7230 MD5 fa94d7cc5454a3bc4a047e10a42cb5e1 RMD160 3f3d60d455aa75e2f3fa8a3e46450b0ddb96b2a1 SHA1 488a581abb26898afbef1d39205260b30fee608f SHA256 49eacd8bd187e9400c17df35f891368f495d3a645a33281a341905992a7ec2ec SHA512 973edeb8b7f21a6ceb5ce65dcf8c3424406d920d038624365d68d223192454257a012d059d6fd04070a081e7497ea6396e47b2cfe3778aad5e67b113024fc8f1
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.9 (GNU/Linux)
+
+iQIcBAEBCAAGBQJKY2E4AAoJEEHL93ESzgeitvcP/0ODzUT8sYxD4tLlz3z4jWjI
+Ml9MzYtcfM6qtMpFi4EtF/tk3YyeNe1Zho75WOIzHgeRGgjgB1gpF7rm1FCjQEh7
+HxHUX4ED25sBGnrxnDBCYGvJlTHKIuJOQlwMgMvL9lOfcTYfpMoMLJrDIBIEt15y
+InA1vX04HWvf12E0do8OInTWf9y5mvHWGXe9Zec0LX69ECZvOsD4399HZn2RHr8F
+1E33FDGuGhT3QtFRhFi4eP9GUWM0n/eCyqYYFESXqzfRZEs+t+Bhn5b6+k3+n0ug
+A5eCQEDNjDf8cYfBsc8ZB7/jUHHk0M2nY2DxbWm+7vA+DfelkGVUuQ9HFvk7EFvk
+BlQfi/MzOoiaM4RisrGDTF51tcpdaMlLY8oecxuZeFdl2O5S5EycBsuOSTgVsXBX
+QlwPb+a1eDuGB1AHrnap6XWuGpMngcO+5bqEVl7/8X60b3tJ5MDyLrX1gkpL2dU1
+Oo5ONWOeS2YG00a6vcypwnZ/usZg/dJR0jDYqQT6m02ETR197sKQUVS7Pdg3DKIb
+esovSD73kVyr8Y6vhn0dLdJagZIm4QXMIyFukP4sJaEKMPRBrnhCr7dc4KkI3l6n
+W9SozQl+En2jaq8EAtjvE+uk5MZF0bxCl66CRPpVMJLbcc5sM6xHXV0BU6PucNjN
+p2WmzvkakNzMGdjqNeoZ
+=1SjI
+-----END PGP SIGNATURE-----
diff --git a/dev/perl/perl-array-compare/perl-array-compare.SlackBuild b/dev/perl/perl-array-compare/perl-array-compare.SlackBuild
index 07fd53df..fae359bb 100755
--- a/dev/perl/perl-array-compare/perl-array-compare.SlackBuild
+++ b/dev/perl/perl-array-compare/perl-array-compare.SlackBuild
@@ -15,8 +15,9 @@
# Place - Suite 330, Boston, MA 02111-1307, USA
#
# slackbuild for perl-array-compare, by Silvio Rhatto
-# requires: perl-module-build
-# tested: perl-array-compare-1.15
+# requires:
+# tested: perl-array-compare-1.18
+# model: perl.mkSlackBuild $Rev: 796 $
#
# Look for slackbuildrc
@@ -31,13 +32,14 @@ CWD="$(pwd)"
SRC_NAME="Array-Compare"
PKG_NAME="perl-array-compare"
ARCH=${ARCH:=i486}
-SRC_VERSION=${VERSION:=1.15}
+SRC_VERSION=${VERSION:=1.18}
PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')"
BUILD=${BUILD:=1rha}
SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME
TMP=${TMP:=/tmp}
PKG=${PKG:=$TMP/package-$PKG_NAME}
REPOS=${REPOS:=$TMP}
+SLACKBUILD_PATH=${SLACKBUILD_PATH:="dev/perl/perl-array-compare"}
PREFIX=${PREFIX:=/usr}
PKG_WORK="$TMP/$SRC_NAME"
CONF_OPTIONS=${CONF_OPTIONS:=""}
@@ -64,6 +66,7 @@ ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33
ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36
ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39
ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42
+ERROR_MANIFEST=43;
# Clean up any leftovers of previous builds
rm -rf "$PKG_SRC" 2> /dev/null
@@ -83,6 +86,72 @@ if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then
wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET
fi
+# Check Manifest file
+if [ -e "$CWD/Manifest" ]; then
+
+ # Manifest signature checking
+ if grep -q -- "-----BEGIN PGP SIGNED MESSAGE-----" $CWD/Manifest; then
+ echo "Checking Manifest signature..."
+ gpg --verify $CWD/Manifest
+ if [ "$?" != "0" ]; then
+ exit $ERROR_MANIFEST
+ fi
+ fi
+
+ MANIFEST_LINES="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | wc -l`"
+
+ for ((MANIFEST_COUNT=1; MANIFEST_COUNT <= $MANIFEST_LINES; MANIFEST_COUNT++)); do
+
+ MANIFEST_LINE="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | head -n $MANIFEST_COUNT | tail -n 1`"
+ MANIFEST_FILE="`echo $MANIFEST_LINE | awk '{ print $2 }'`"
+ MANIFEST_FILE_TYPE="`echo $MANIFEST_LINE | awk '{ print $1 }'`"
+
+ if [ -e "$SRC_DIR/$MANIFEST_FILE" ]; then
+ MANIFEST_FILE="$SRC_DIR/$MANIFEST_FILE"
+ else
+ MANIFEST_FILE="`find $CWD -name $MANIFEST_FILE`"
+ fi
+
+ if [ ! -e "$MANIFEST_FILE" ] || [ -d "$MANIFEST_FILE" ]; then
+ continue
+ fi
+
+ echo "Checking Manifest for $MANIFEST_FILE_TYPE $MANIFEST_FILE integrity..."
+
+ SIZE_SRC="`wc -c $MANIFEST_FILE | awk '{ print $1 }'`"
+ SIZE_MANIFEST="`echo $MANIFEST_LINE | awk '{ print $3 }'`"
+
+ # Check source code size
+ if [ "$SIZE_SRC" != "$SIZE_MANIFEST" ]; then
+ echo "SIZE Manifest: $SIZE_MANIFEST; SIZE $SRC: $SIZE_SRC"
+ exit $ERROR_MANIFEST
+ else
+ echo "Size match."
+ fi
+
+ # Check source code integrity
+ for ALGO in md5 sha1 sha256 sha512 rmd160; do
+ if [ $ALGO = "rmd160" ]; then
+ ALGO_SRC="`openssl rmd160 $MANIFEST_FILE | awk '{ print $2 }'`"
+ else
+ ALGO_SRC="`"$ALGO"sum $MANIFEST_FILE | awk '{ print $1 }'`"
+ fi
+ ALGO="`echo $ALGO | tr '[:lower:]' '[:upper:]'`"
+ ALGO_MANIFEST=$(echo $MANIFEST_LINE | sed "s/.* $ALGO //" | awk '{ print $1 }')
+ if [ "$ALGO_SRC" != "$ALGO_MANIFEST" ]; then
+ echo "$ALGO Manifest: $ALGO_MANIFEST; $ALGO $SRC: $ALGO_SRC"
+ exit $ERROR_MANIFEST
+ else
+ echo "$ALGO match."
+ fi
+ done
+
+ done
+
+else
+ exit $ERROR_MANIFEST
+fi
+
# Untar
cd "$PKG_WORK"
tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR
@@ -154,7 +223,8 @@ fi
# Build the package
cd "$PKG"
-makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG
+mkdir -p $REPOS/$SLACKBUILD_PATH
+makepkg -l y -c n "$REPOS/$SLACKBUILD_PATH/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG
# Delete source and build directories if requested
if [ "$CLEANUP" == "yes" ] || [ "$1" = "--cleanup" ]; then
diff --git a/dev/perl/perl-io-socket-ssl/Manifest b/dev/perl/perl-io-socket-ssl/Manifest
new file mode 100644
index 00000000..0c75be97
--- /dev/null
+++ b/dev/perl/perl-io-socket-ssl/Manifest
@@ -0,0 +1,24 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA256
+
+DIST IO-Socket-SSL-1.13.tar.gz 52531 MD5 a115444511320466e63a26b351b91957 RMD160 a984018c083964214e0c53cbbe728d0071b9cb94 SHA1 6c25cb636d0252b280a4f173ede19ce6d29d4a42 SHA256 c5cdddf5eb8a1ec263359626d2fb33f29c49cd833e9d19648691663252745344 SHA512 ab2120e66252e44294682bdcba4d4a0555fde127b16f0d21f60ed525cfcb2bc67c658788d6e19d3700b5174cf8d8945444995ae00b582afb6775d0623ed99551
+MKBUILD perl-io-socket-ssl.mkbuild 2489 MD5 4fd9cbc92312e51af36b29c4929acaae RMD160 bab74a18d4493b3dfa5dae037a4ee672c6c295b2 SHA1 5b45c89b4ee0e077e70d923a84cf8541acdebfc1 SHA256 b5393879d8c56e6ce7f68a246b6fa436da2d0e5417aba6cb40e85360e51e3ea7 SHA512 f708c89757c36f52641614afd8b531e7fa1010f0283cbb5df91c6bfc8cf0a4ef6dab5e0cb51e17a3fd2e3577b1f61bbc9980a71b738e4421b356efdba1ad4893
+SLACK-REQUIRED slack-required 93 MD5 6371ce5b69052f97cf0685f28e20f200 RMD160 7a2c9c6a9d6d963d78141f6fbc21d0b2c4fe1499 SHA1 03832142ef069d53f614eeba274b0d28f8e63b95 SHA256 1234eefdf2ac1e9c2a0fbc322c401a259e49c0ba087fa50926337c6832efe869 SHA512 438dad7846fe49f3ef272232f903a43368a4d8abe42abb0aec23d5909246f0f0a4982998672c79aebb36618a291c99e5a4db136c4ad14f59bde9649fa7130f86
+SLACKBUILD perl-io-socket-ssl.SlackBuild 7247 MD5 54322b63b7cf582bc7b7d6b63bd2357b RMD160 d92efdc296918a01524be233c9ff4bcf1d751f78 SHA1 293ccb60da07a11859db109c5540534649fcfb13 SHA256 0b1c9add5291d55fe3cf938e7c5de1731956571e40b751b59a6c9d64c53ba387 SHA512 e1b5abe8afff18762e75ab8030abae442528d6498155a69f045371301c233108f439571a09856bd2f3bf2ca8899914360f575f9282a4c89ce834e5b9636ea7cf
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.9 (GNU/Linux)
+
+iQIcBAEBCAAGBQJKY2ImAAoJEEHL93ESzgeiqoQQAJ1tj1e10o7hGjuhubaxhiCn
+h6XV//maS1p5na5L+DgpnqlTHwP5Itc9CJqhN/B1u0fLJh8TtUCLyKm/kQnvZOnn
+tQt6wXMVk1SnzSBISfcZGNC/VBoqJROcWCksonr0O/39PP+z7FM1kVeS5/QzQZih
+BaoMtINQY7ZUYy7NNT+2iHjRkjrEyX+y3SXI6PLRJMiPs1kJsLi83uf+OnsxoKQF
+JvQVwfxjZb3/wWO59wfWVuL5yQcy7rJgy7LBF4paiBcE5fozR/Z8bVWCBuGAlCGQ
+qGtrXPf9Ej0YuYJxJZHt5gfVPkJ6764YJtZrDWyKpvZvopdB0Nlqc8x5LXhVlTWJ
+t2ajDiOK7x4zJlgbd4PUHtxYFL7GCJF9wM0oJR+nJDW0AxhOCRRD+jxyCtU23M7G
+IPzUpw9o0cEJg879HJHp/LjP6yVZM9fTnVM/6QR6VEIT7UOsmp+d+Zz5rUTi72ZL
+3aqx8I6fWgYhshTehIFyYtKHVNsNQYPwPSuvSb/yXEptPp0mpySbfEySLqxGIwoN
+V3DV4dAwL/uRuVhXJO0znN1/lu/FE3sbUO7oVqBLDV3oXRE6h6XmDJ/jDVCNOR+v
+5pc19gJqjg46iWykN/fvUNpS6t+kGOauYMCrVjPXlQ+o2H/2HsH2XvS1Q48xou7F
+T/MMdLdgql4crkH+Klhn
+=h4Jp
+-----END PGP SIGNATURE-----
diff --git a/dev/perl/perl-io-socket-ssl/perl-io-socket-ssl.SlackBuild b/dev/perl/perl-io-socket-ssl/perl-io-socket-ssl.SlackBuild
index 88b76c77..3a8dfd8f 100755
--- a/dev/perl/perl-io-socket-ssl/perl-io-socket-ssl.SlackBuild
+++ b/dev/perl/perl-io-socket-ssl/perl-io-socket-ssl.SlackBuild
@@ -15,8 +15,9 @@
# Place - Suite 330, Boston, MA 02111-1307, USA
#
# slackbuild for perl-io-socket-ssl, by Silvio Rhatto
-# requires: perl-net-ssleay
+# requires:
# tested: perl-io-socket-ssl-1.13
+# model: perl.mkSlackBuild $Rev: 796 $
#
# Look for slackbuildrc
@@ -38,6 +39,7 @@ SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME
TMP=${TMP:=/tmp}
PKG=${PKG:=$TMP/package-$PKG_NAME}
REPOS=${REPOS:=$TMP}
+SLACKBUILD_PATH=${SLACKBUILD_PATH:="dev/perl/perl-io-socket-ssl"}
PREFIX=${PREFIX:=/usr}
PKG_WORK="$TMP/$SRC_NAME"
CONF_OPTIONS=${CONF_OPTIONS:=""}
@@ -64,6 +66,7 @@ ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33
ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36
ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39
ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42
+ERROR_MANIFEST=43;
# Clean up any leftovers of previous builds
rm -rf "$PKG_SRC" 2> /dev/null
@@ -83,6 +86,72 @@ if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then
wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET
fi
+# Check Manifest file
+if [ -e "$CWD/Manifest" ]; then
+
+ # Manifest signature checking
+ if grep -q -- "-----BEGIN PGP SIGNED MESSAGE-----" $CWD/Manifest; then
+ echo "Checking Manifest signature..."
+ gpg --verify $CWD/Manifest
+ if [ "$?" != "0" ]; then
+ exit $ERROR_MANIFEST
+ fi
+ fi
+
+ MANIFEST_LINES="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | wc -l`"
+
+ for ((MANIFEST_COUNT=1; MANIFEST_COUNT <= $MANIFEST_LINES; MANIFEST_COUNT++)); do
+
+ MANIFEST_LINE="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | head -n $MANIFEST_COUNT | tail -n 1`"
+ MANIFEST_FILE="`echo $MANIFEST_LINE | awk '{ print $2 }'`"
+ MANIFEST_FILE_TYPE="`echo $MANIFEST_LINE | awk '{ print $1 }'`"
+
+ if [ -e "$SRC_DIR/$MANIFEST_FILE" ]; then
+ MANIFEST_FILE="$SRC_DIR/$MANIFEST_FILE"
+ else
+ MANIFEST_FILE="`find $CWD -name $MANIFEST_FILE`"
+ fi
+
+ if [ ! -e "$MANIFEST_FILE" ] || [ -d "$MANIFEST_FILE" ]; then
+ continue
+ fi
+
+ echo "Checking Manifest for $MANIFEST_FILE_TYPE $MANIFEST_FILE integrity..."
+
+ SIZE_SRC="`wc -c $MANIFEST_FILE | awk '{ print $1 }'`"
+ SIZE_MANIFEST="`echo $MANIFEST_LINE | awk '{ print $3 }'`"
+
+ # Check source code size
+ if [ "$SIZE_SRC" != "$SIZE_MANIFEST" ]; then
+ echo "SIZE Manifest: $SIZE_MANIFEST; SIZE $SRC: $SIZE_SRC"
+ exit $ERROR_MANIFEST
+ else
+ echo "Size match."
+ fi
+
+ # Check source code integrity
+ for ALGO in md5 sha1 sha256 sha512 rmd160; do
+ if [ $ALGO = "rmd160" ]; then
+ ALGO_SRC="`openssl rmd160 $MANIFEST_FILE | awk '{ print $2 }'`"
+ else
+ ALGO_SRC="`"$ALGO"sum $MANIFEST_FILE | awk '{ print $1 }'`"
+ fi
+ ALGO="`echo $ALGO | tr '[:lower:]' '[:upper:]'`"
+ ALGO_MANIFEST=$(echo $MANIFEST_LINE | sed "s/.* $ALGO //" | awk '{ print $1 }')
+ if [ "$ALGO_SRC" != "$ALGO_MANIFEST" ]; then
+ echo "$ALGO Manifest: $ALGO_MANIFEST; $ALGO $SRC: $ALGO_SRC"
+ exit $ERROR_MANIFEST
+ else
+ echo "$ALGO match."
+ fi
+ done
+
+ done
+
+else
+ exit $ERROR_MANIFEST
+fi
+
# Untar
cd "$PKG_WORK"
tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR
@@ -154,7 +223,8 @@ fi
# Build the package
cd "$PKG"
-makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG
+mkdir -p $REPOS/$SLACKBUILD_PATH
+makepkg -l y -c n "$REPOS/$SLACKBUILD_PATH/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG
# Delete source and build directories if requested
if [ "$CLEANUP" == "yes" ] || [ "$1" = "--cleanup" ]; then
diff --git a/dev/perl/perl-mime-base64/Manifest b/dev/perl/perl-mime-base64/Manifest
new file mode 100644
index 00000000..b2263347
--- /dev/null
+++ b/dev/perl/perl-mime-base64/Manifest
@@ -0,0 +1,23 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA256
+
+DIST MIME-Base64-3.08.tar.gz 16429 MD5 b898218bb588360b34d13c162299a17e RMD160 714f635ce3164eaf12e76ab1fe3abf99b7510dcb SHA1 5e292446b11ae68eb9809609abde67e53fb5fa15 SHA256 b13ec98c03b168ca28c9390727a9edcbe2c5d489ff2505a7eb20c5cc1c72410d SHA512 0c2fae9a3d7c1cb79ac21922c44a8302770bed498d8f9a46f669de9b2de19719c4e4b871561b0082346ca6acdaa97e4a94ce7196aeea01185a97bb1e1e7d1df8
+MKBUILD perl-mime-base64.mkbuild 2357 MD5 780066b21c6e81a7af90e6b311dd7f63 RMD160 4e510c76519e95be1e6ce872055e98b3acb2b8e0 SHA1 6a77cc8740d23e96c90f4bc8f9fa347019450de4 SHA256 5b4c5159482ce2850598e7064790c526a199cd6d188d14085987b7fa3751dac2 SHA512 f90c3c6ac229195f36da7f6318a18884e2cb054d2c5a30e356d2fe57900004cf70102452774cb717930e405e8e3990af3ced4eb338a8ec67a4fd11f80758f177
+SLACKBUILD perl-mime-base64.SlackBuild 7044 MD5 2032a2aa369fe4378e29924b3c463969 RMD160 2e8c839bdd2576b92afe0155208943638c68d6a6 SHA1 56ee60d64b936bcbe527e144743cc6d4083b196a SHA256 69a598ee34fd8fec253a8b1d3ac869f1cc259bdf31f15588e5062fdcbe97b870 SHA512 e43354cccb58b3acab5b0d9ed68b082404ebd14555242026be7fb661c524906e69209f2a218ba855a337e656eb065e3ca12c6c4b031895c20a8fdd2fae9696c9
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.9 (GNU/Linux)
+
+iQIcBAEBCAAGBQJKY2HUAAoJEEHL93ESzgeiW6EQAIPd5ue32pfYdSGwUzz3FbXa
+13iuvQ0h0dVXDGCrSJcfMfcQZgSOqwBiNucDBdKtAdTYl3aITddQh5Qkk1xjNDvw
+1QIWmKypJiH//s5+kAyshh4LCU3DfAXqC62D6FgWNK2lhR8OOBi2i9G5IdyyxZDo
+/x51m24DpbQxXMiOV+2GEYqQnUCHE92Y6J2Jf+eJJ+ivu6EAvc7vk9Pkq5ie/e3E
+wfroNe56V9FAvdY/l0PJq9k4rlPmIZIq3MDgbtF6oO8mGjBvx4/3tIXR0hSH3igi
+Xzlz3AZiJQX9HBfh96mjqYGVw4aJbXGEDdz8+NF6FnEUyzk5gxx2RMyebBhGaFfk
+z+JDkVYpEVJ0ZkmvsP0MnXZutXWK41veZO1z76eLzYZE3lPxuNzqs0VM0SK02U1V
+ScC7WgR2LhAfRNc2IGoMHvkwisdDIrdBKka3mMUGIL9PbkJmyefTQql1wl9TU/F9
+8alaVbCB13aNAAHpi5ehF7UhrLM+Fmwsx0ixVlZk333VqKT4x9o7c+l6EIvSCaI7
+RPz6jUnn2n67NUb2PgbCALzO4gUmmfGBN7Hag6Szrn0Bos0rsH1vb/Q0OBFMqnrs
+ha7Vd2sPTpAAnmXTin6eY2YIA2YvqH19J70DnqKM2GND7efYte5Er2NTbYrdyr7o
+bLHEz8m1IYsNNWAm3wBp
+=ZHka
+-----END PGP SIGNATURE-----
diff --git a/dev/perl/perl-mime-base64/perl-mime-base64.SlackBuild b/dev/perl/perl-mime-base64/perl-mime-base64.SlackBuild
index bdee9c1c..6ba6d7bd 100755
--- a/dev/perl/perl-mime-base64/perl-mime-base64.SlackBuild
+++ b/dev/perl/perl-mime-base64/perl-mime-base64.SlackBuild
@@ -16,7 +16,8 @@
#
# slackbuild for perl-mime-base64, by Silvio Rhatto
# requires:
-# tested: perl-mime-base64-3.07
+# tested: perl-mime-base64-3.08
+# model: perl.mkSlackBuild $Rev: 796 $
#
# Look for slackbuildrc
@@ -31,13 +32,14 @@ CWD="$(pwd)"
SRC_NAME="MIME-Base64"
PKG_NAME="perl-mime-base64"
ARCH=${ARCH:=i486}
-SRC_VERSION=${VERSION:=3.07}
+SRC_VERSION=${VERSION:=3.08}
PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')"
BUILD=${BUILD:=1rha}
SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME
TMP=${TMP:=/tmp}
PKG=${PKG:=$TMP/package-$PKG_NAME}
REPOS=${REPOS:=$TMP}
+SLACKBUILD_PATH=${SLACKBUILD_PATH:="dev/perl/perl-mime-base64"}
PREFIX=${PREFIX:=/usr}
PKG_WORK="$TMP/$SRC_NAME"
CONF_OPTIONS=${CONF_OPTIONS:=""}
@@ -64,6 +66,7 @@ ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33
ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36
ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39
ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42
+ERROR_MANIFEST=43;
# Clean up any leftovers of previous builds
rm -rf "$PKG_SRC" 2> /dev/null
@@ -83,6 +86,72 @@ if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then
wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET
fi
+# Check Manifest file
+if [ -e "$CWD/Manifest" ]; then
+
+ # Manifest signature checking
+ if grep -q -- "-----BEGIN PGP SIGNED MESSAGE-----" $CWD/Manifest; then
+ echo "Checking Manifest signature..."
+ gpg --verify $CWD/Manifest
+ if [ "$?" != "0" ]; then
+ exit $ERROR_MANIFEST
+ fi
+ fi
+
+ MANIFEST_LINES="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | wc -l`"
+
+ for ((MANIFEST_COUNT=1; MANIFEST_COUNT <= $MANIFEST_LINES; MANIFEST_COUNT++)); do
+
+ MANIFEST_LINE="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | head -n $MANIFEST_COUNT | tail -n 1`"
+ MANIFEST_FILE="`echo $MANIFEST_LINE | awk '{ print $2 }'`"
+ MANIFEST_FILE_TYPE="`echo $MANIFEST_LINE | awk '{ print $1 }'`"
+
+ if [ -e "$SRC_DIR/$MANIFEST_FILE" ]; then
+ MANIFEST_FILE="$SRC_DIR/$MANIFEST_FILE"
+ else
+ MANIFEST_FILE="`find $CWD -name $MANIFEST_FILE`"
+ fi
+
+ if [ ! -e "$MANIFEST_FILE" ] || [ -d "$MANIFEST_FILE" ]; then
+ continue
+ fi
+
+ echo "Checking Manifest for $MANIFEST_FILE_TYPE $MANIFEST_FILE integrity..."
+
+ SIZE_SRC="`wc -c $MANIFEST_FILE | awk '{ print $1 }'`"
+ SIZE_MANIFEST="`echo $MANIFEST_LINE | awk '{ print $3 }'`"
+
+ # Check source code size
+ if [ "$SIZE_SRC" != "$SIZE_MANIFEST" ]; then
+ echo "SIZE Manifest: $SIZE_MANIFEST; SIZE $SRC: $SIZE_SRC"
+ exit $ERROR_MANIFEST
+ else
+ echo "Size match."
+ fi
+
+ # Check source code integrity
+ for ALGO in md5 sha1 sha256 sha512 rmd160; do
+ if [ $ALGO = "rmd160" ]; then
+ ALGO_SRC="`openssl rmd160 $MANIFEST_FILE | awk '{ print $2 }'`"
+ else
+ ALGO_SRC="`"$ALGO"sum $MANIFEST_FILE | awk '{ print $1 }'`"
+ fi
+ ALGO="`echo $ALGO | tr '[:lower:]' '[:upper:]'`"
+ ALGO_MANIFEST=$(echo $MANIFEST_LINE | sed "s/.* $ALGO //" | awk '{ print $1 }')
+ if [ "$ALGO_SRC" != "$ALGO_MANIFEST" ]; then
+ echo "$ALGO Manifest: $ALGO_MANIFEST; $ALGO $SRC: $ALGO_SRC"
+ exit $ERROR_MANIFEST
+ else
+ echo "$ALGO match."
+ fi
+ done
+
+ done
+
+else
+ exit $ERROR_MANIFEST
+fi
+
# Untar
cd "$PKG_WORK"
tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR
@@ -148,9 +217,10 @@ EODESC
# Build the package
cd "$PKG"
-makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG
+mkdir -p $REPOS/$SLACKBUILD_PATH
+makepkg -l y -c n "$REPOS/$SLACKBUILD_PATH/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG
# Delete source and build directories if requested
-if [ "$CLEANUP" == "yes" ]; then
+if [ "$CLEANUP" == "yes" ] || [ "$1" = "--cleanup" ]; then
rm -rf "$PKG_WORK" "$PKG"
fi
diff --git a/dev/perl/perl-module-build/Manifest b/dev/perl/perl-module-build/Manifest
new file mode 100644
index 00000000..dcdac718
--- /dev/null
+++ b/dev/perl/perl-module-build/Manifest
@@ -0,0 +1,23 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA256
+
+DIST Module-Build-0.2808.tar.gz 196525 MD5 b8e457b1a4b72c46bcec3d9bce87329b RMD160 eb156aef5b9bef9b56068abeb29f2596c33f92ec SHA1 cee04451c269a6f2fe09fb028423b7f829584e05 SHA256 1b49bb26aef78c4a90bdb01c0ece4b033cf6dac2ad5e95e8211b59f188bb1fc1 SHA512 a2830956a494cdb975f535eba5624d68d53079f27e74c617ec41467a1ff4ac60597becc4a08b1191a0d45113bd9c91032fbe1c117ad86afacba77c7ab7c005ec
+MKBUILD perl-module-build.mkbuild 2370 MD5 6972ddb97204f8d86e0c68dad51e3219 RMD160 20e3c4d3cd09d7c5ad9606211ee849cdfc102f86 SHA1 ec720b27698e5e5a76407d18baec894e484002a5 SHA256 aaa477ec2824189a684afb3104c3397e3645331187da325a6f38979296efe19f SHA512 8f3eed823c6874c0b702c8fd6b05f7a0809857fa368cc314d9495f4ea18adfa6d5f1a50b729a4eea45c76138cb605a53853cc867256d96ff6cfd727923c4ec2a
+SLACKBUILD perl-module-build.SlackBuild 7063 MD5 f1c367dae5296fd1168aae81a2677a3d RMD160 0ecdea255aa6cd4238feafd5fad595f47c904eeb SHA1 45a358907cf465ed988639829e821cf842ab61a1 SHA256 137cd1c4a9223f85ea964d897745902b408ad92388b5bd5fae52538f727b89b2 SHA512 4e0a84bd9ca59aff4cd81ce8257e4504dc8476489cbbd4df9a452404cd4c45e6e088b61370c90a41ea16a101d621c14e7ae7106852b4d7afd4c248730c79205f
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.9 (GNU/Linux)
+
+iQIcBAEBCAAGBQJKY2C5AAoJEEHL93ESzgeioSYP/RtIxMbtGBXO5meWSYVHMv+E
+mYadvF2Nf+Rmhv1rsdjfHjSXnco+8e6xjyxr5S6+Lie/7jCCxDe4X5ny5tgq4Z29
+LVQzWIL54VkRzLUJJWTrQVhni6V+KxLt6vWtF+G2olsihnr2iREQwSFiyLpzh0V6
+57iRnxoPOFUQsqAe3YrxTQX9u6ofeXmhS9vScPmFAOofmS8aAOxeo75v/Vgp5iWH
+Ndszw/eiCjaLKBPsf+tZq6jhJYncM0LA3BtkeuSL7KPbVUpsjIzK0VEb6B18/l+r
+/FCPRfClUZXqklnFZnodtoqbr1wH3THBZzZV5nxY+8jnu3oqEzDkRVJ46SGdp/Yu
+o3w3yZUKr8rDAAh+PTfZzwVQd+dLTi9DttmqYomdGaA5SKO/7YBVUwLJg7ZWFxM1
+Wu9VGtKKGGLNfgmu9kcE6mAGu72UQlopbnf9rC8KxWjNZ90zFQTAFZrT7Z3GJnFi
+Qjz5u6Pp5vPLF5UjngeGPXWQXqEC06r41U9rPpnLHGvGn8P/VahaOGZPMqAzpmmO
+bldKHI44O5TQzqxpy4GLcTWfo0CRCySCOarnvMZM3nQL7YgeWTp70dOMaZxR5wOv
+x1cfnQgFk0uKvcO9Kkmoz+Mangtg5Nv3V4bc+zQG+WQWQax1YCrXX4e9iV5svlG6
+v0VdwNSRvtaps9tWk5si
+=jzUM
+-----END PGP SIGNATURE-----
diff --git a/dev/perl/perl-module-build/perl-module-build.SlackBuild b/dev/perl/perl-module-build/perl-module-build.SlackBuild
index 9d410c20..0b64b63d 100755
--- a/dev/perl/perl-module-build/perl-module-build.SlackBuild
+++ b/dev/perl/perl-module-build/perl-module-build.SlackBuild
@@ -17,6 +17,7 @@
# slackbuild for perl-module-build, by Silvio Rhatto
# requires:
# tested: perl-module-build-0.2808
+# model: perl.mkSlackBuild $Rev: 796 $
#
# Look for slackbuildrc
@@ -38,6 +39,7 @@ SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME
TMP=${TMP:=/tmp}
PKG=${PKG:=$TMP/package-$PKG_NAME}
REPOS=${REPOS:=$TMP}
+SLACKBUILD_PATH=${SLACKBUILD_PATH:="dev/perl/perl-module-build"}
PREFIX=${PREFIX:=/usr}
PKG_WORK="$TMP/$SRC_NAME"
CONF_OPTIONS=${CONF_OPTIONS:=""}
@@ -64,6 +66,7 @@ ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33
ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36
ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39
ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42
+ERROR_MANIFEST=43;
# Clean up any leftovers of previous builds
rm -rf "$PKG_SRC" 2> /dev/null
@@ -83,6 +86,72 @@ if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then
wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET
fi
+# Check Manifest file
+if [ -e "$CWD/Manifest" ]; then
+
+ # Manifest signature checking
+ if grep -q -- "-----BEGIN PGP SIGNED MESSAGE-----" $CWD/Manifest; then
+ echo "Checking Manifest signature..."
+ gpg --verify $CWD/Manifest
+ if [ "$?" != "0" ]; then
+ exit $ERROR_MANIFEST
+ fi
+ fi
+
+ MANIFEST_LINES="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | wc -l`"
+
+ for ((MANIFEST_COUNT=1; MANIFEST_COUNT <= $MANIFEST_LINES; MANIFEST_COUNT++)); do
+
+ MANIFEST_LINE="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | head -n $MANIFEST_COUNT | tail -n 1`"
+ MANIFEST_FILE="`echo $MANIFEST_LINE | awk '{ print $2 }'`"
+ MANIFEST_FILE_TYPE="`echo $MANIFEST_LINE | awk '{ print $1 }'`"
+
+ if [ -e "$SRC_DIR/$MANIFEST_FILE" ]; then
+ MANIFEST_FILE="$SRC_DIR/$MANIFEST_FILE"
+ else
+ MANIFEST_FILE="`find $CWD -name $MANIFEST_FILE`"
+ fi
+
+ if [ ! -e "$MANIFEST_FILE" ] || [ -d "$MANIFEST_FILE" ]; then
+ continue
+ fi
+
+ echo "Checking Manifest for $MANIFEST_FILE_TYPE $MANIFEST_FILE integrity..."
+
+ SIZE_SRC="`wc -c $MANIFEST_FILE | awk '{ print $1 }'`"
+ SIZE_MANIFEST="`echo $MANIFEST_LINE | awk '{ print $3 }'`"
+
+ # Check source code size
+ if [ "$SIZE_SRC" != "$SIZE_MANIFEST" ]; then
+ echo "SIZE Manifest: $SIZE_MANIFEST; SIZE $SRC: $SIZE_SRC"
+ exit $ERROR_MANIFEST
+ else
+ echo "Size match."
+ fi
+
+ # Check source code integrity
+ for ALGO in md5 sha1 sha256 sha512 rmd160; do
+ if [ $ALGO = "rmd160" ]; then
+ ALGO_SRC="`openssl rmd160 $MANIFEST_FILE | awk '{ print $2 }'`"
+ else
+ ALGO_SRC="`"$ALGO"sum $MANIFEST_FILE | awk '{ print $1 }'`"
+ fi
+ ALGO="`echo $ALGO | tr '[:lower:]' '[:upper:]'`"
+ ALGO_MANIFEST=$(echo $MANIFEST_LINE | sed "s/.* $ALGO //" | awk '{ print $1 }')
+ if [ "$ALGO_SRC" != "$ALGO_MANIFEST" ]; then
+ echo "$ALGO Manifest: $ALGO_MANIFEST; $ALGO $SRC: $ALGO_SRC"
+ exit $ERROR_MANIFEST
+ else
+ echo "$ALGO match."
+ fi
+ done
+
+ done
+
+else
+ exit $ERROR_MANIFEST
+fi
+
# Untar
cd "$PKG_WORK"
tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR
@@ -148,9 +217,10 @@ EODESC
# Build the package
cd "$PKG"
-makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG
+mkdir -p $REPOS/$SLACKBUILD_PATH
+makepkg -l y -c n "$REPOS/$SLACKBUILD_PATH/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG
# Delete source and build directories if requested
-if [ "$CLEANUP" == "yes" ]; then
+if [ "$CLEANUP" == "yes" ] || [ "$1" = "--cleanup" ]; then
rm -rf "$PKG_WORK" "$PKG"
fi
diff --git a/dev/perl/perl-net-ssleay/Manifest b/dev/perl/perl-net-ssleay/Manifest
new file mode 100644
index 00000000..39877ffb
--- /dev/null
+++ b/dev/perl/perl-net-ssleay/Manifest
@@ -0,0 +1,24 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA256
+
+DIST Net-SSLeay-1.32.tar.gz 130187 MD5 3e0918a7101633f06cfe4f7ca005917e RMD160 61403a7529626f6c562790c034659af98c9e29e1 SHA1 e57c6c36f0df7bf211c435a38330de2e93d141bb SHA256 8e7c1ec68ea3a0ac41780ef150bdb8a8b982f46066c542a9a39fe395a88344fa SHA512 a568ada1db3877a2f67e41bfe7c2853b044b459a8d9a881a307a4cff3c230eca9e8b7b0d97a864eea415a1967ff75f10f6d64dd6c023e2ef0803c0e70beb4093
+MKBUILD perl-net-ssleay.mkbuild 2425 MD5 08aa91cb9dbf58d5c7dd4fe8d2c24100 RMD160 f5787dbf8d2f746995e345fb594da99d29876a12 SHA1 e274cacca334d6abbcee5b46403f7b68248fa479 SHA256 d60460eacce3a899dff89b0dfefc9a5e869c2fe493e00a15c7417aebc295ffb2 SHA512 e587846a6b638853575c4a1c3c25fe2c3f6e12261831689dd222600276b8cede31f9e2616aac11d8287c59d42604851be2b8879f953d74f1199fbfe8ece6cb76
+SLACK-REQUIRED slack-required 201 MD5 3d2bd651830382cc8d9ac6cf4eb93e21 RMD160 3490e60f2be22418bf6bf853643bd7c417927574 SHA1 40c3ed4426bb68913fcba558b1664eb165d5f22f SHA256 5251e9c9541c8c2a1a27fa089bda163020105294ccee1f1040be9dba48271626 SHA512 4848f81b04d0f48f38100c73047573f01b69c04ee60f698903e8c9a2d290f598ee85dc09a8da500ba5a2cf423cfb8702cf3262775964077f49db4bc28d7506f9
+SLACKBUILD perl-net-ssleay.SlackBuild 7175 MD5 d16ad59a3e94f648b333206eada48660 RMD160 0d37c970f9f5d51a51eb11fc0d9a211a754f450e SHA1 7ece492d9eddec192f99fcbca4ef2a72942b62cf SHA256 1136f172898b5dbc3d7fa59ac9cb4e5e37b7ecf4fab6567c0c4f5c6244403200 SHA512 a5c2a9b937490b6c0504f79264353be0600988f251adfeb0da62d82ff47e83c4c041ac6faa0daa95fe14e115c7f84d3aec5e757a9b916d9b416e4ecc74dc7bfd
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.9 (GNU/Linux)
+
+iQIcBAEBCAAGBQJKY2H3AAoJEEHL93ESzgei3k4QAKlwXNjWkaZrXQua7C/stTxH
+9qdae9jD58ZXttEenpjtTagRRMFdqs1vKqcycUAwyTrOeguNqCncrstUyJ3voH1Q
+cto4wFiRTpfBBYWGgzL/p5K47TLwVFF0Ana8AaqKz9xE0CXy78u1I/V9C2thVihP
+/mhS6o4QU+XTU6K93HHiCm63RRFBc7UAWI1hmyafNYi+MGTlOCA1d0bJtSW2Fej+
+mpKqdwu+YyWwkVgoDXpQm9VcNDsitbkiQo9Xn2RYhST7C6GxFLpqK3Cc2opG0n2U
+pO9nIr2HF+MOkMxtrNmToIIWQK1JffG7NsxjZPLE4w69dXuaO6ecJ3pgFC0JerVV
+GM0JccP6MJWzqdPULgFLz8IQKAJM0wwB0E1O5Wwj+9Zq8SHUFJVBbCn4NPeGt77H
+uMJkpLCxIwnZAVekB5RrDJ6iJ7LLkt6ObUq77k0HjLBSYUSoDwzXygv5THnavsDk
+W6Zogdmvh4CGKt62UST6DxkTBtoBWZBDjrz0j953rRHIpCMH5KXoXHUK0aC8q4rD
+a1H0YxyXe63atGLdyEdPcqbiG2A+LnA1hhGyVYyIeHTYwZ5Q4GF5RDxlyxpKldOC
+pf2SGE5OYRGafEDOHvfmDSPYQCc5zH64HPbGZ6GL9YZzBuWZalmNo2oP0N2W0wuT
+ughFUBVDdbgYJB2bmvwQ
+=gjMc
+-----END PGP SIGNATURE-----
diff --git a/dev/perl/perl-net-ssleay/perl-net-ssleay.SlackBuild b/dev/perl/perl-net-ssleay/perl-net-ssleay.SlackBuild
index f9e41ba5..a8d79c09 100755
--- a/dev/perl/perl-net-ssleay/perl-net-ssleay.SlackBuild
+++ b/dev/perl/perl-net-ssleay/perl-net-ssleay.SlackBuild
@@ -15,8 +15,9 @@
# Place - Suite 330, Boston, MA 02111-1307, USA
#
# slackbuild for perl-net-ssleay, by Silvio Rhatto
-# requires: perl-sub-uplevel perl-test-exception perl-array-compare perl-tree-dag_node perl-test-warn perl-mime-base64
+# requires:
# tested: perl-net-ssleay-1.32
+# model: perl.mkSlackBuild $Rev: 796 $
#
# Look for slackbuildrc
@@ -38,6 +39,7 @@ SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME
TMP=${TMP:=/tmp}
PKG=${PKG:=$TMP/package-$PKG_NAME}
REPOS=${REPOS:=$TMP}
+SLACKBUILD_PATH=${SLACKBUILD_PATH:="dev/perl/perl-net-ssleay"}
PREFIX=${PREFIX:=/usr}
PKG_WORK="$TMP/$SRC_NAME"
CONF_OPTIONS=${CONF_OPTIONS:=""}
@@ -64,6 +66,7 @@ ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33
ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36
ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39
ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42
+ERROR_MANIFEST=43;
# Clean up any leftovers of previous builds
rm -rf "$PKG_SRC" 2> /dev/null
@@ -83,6 +86,72 @@ if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then
wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET
fi
+# Check Manifest file
+if [ -e "$CWD/Manifest" ]; then
+
+ # Manifest signature checking
+ if grep -q -- "-----BEGIN PGP SIGNED MESSAGE-----" $CWD/Manifest; then
+ echo "Checking Manifest signature..."
+ gpg --verify $CWD/Manifest
+ if [ "$?" != "0" ]; then
+ exit $ERROR_MANIFEST
+ fi
+ fi
+
+ MANIFEST_LINES="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | wc -l`"
+
+ for ((MANIFEST_COUNT=1; MANIFEST_COUNT <= $MANIFEST_LINES; MANIFEST_COUNT++)); do
+
+ MANIFEST_LINE="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | head -n $MANIFEST_COUNT | tail -n 1`"
+ MANIFEST_FILE="`echo $MANIFEST_LINE | awk '{ print $2 }'`"
+ MANIFEST_FILE_TYPE="`echo $MANIFEST_LINE | awk '{ print $1 }'`"
+
+ if [ -e "$SRC_DIR/$MANIFEST_FILE" ]; then
+ MANIFEST_FILE="$SRC_DIR/$MANIFEST_FILE"
+ else
+ MANIFEST_FILE="`find $CWD -name $MANIFEST_FILE`"
+ fi
+
+ if [ ! -e "$MANIFEST_FILE" ] || [ -d "$MANIFEST_FILE" ]; then
+ continue
+ fi
+
+ echo "Checking Manifest for $MANIFEST_FILE_TYPE $MANIFEST_FILE integrity..."
+
+ SIZE_SRC="`wc -c $MANIFEST_FILE | awk '{ print $1 }'`"
+ SIZE_MANIFEST="`echo $MANIFEST_LINE | awk '{ print $3 }'`"
+
+ # Check source code size
+ if [ "$SIZE_SRC" != "$SIZE_MANIFEST" ]; then
+ echo "SIZE Manifest: $SIZE_MANIFEST; SIZE $SRC: $SIZE_SRC"
+ exit $ERROR_MANIFEST
+ else
+ echo "Size match."
+ fi
+
+ # Check source code integrity
+ for ALGO in md5 sha1 sha256 sha512 rmd160; do
+ if [ $ALGO = "rmd160" ]; then
+ ALGO_SRC="`openssl rmd160 $MANIFEST_FILE | awk '{ print $2 }'`"
+ else
+ ALGO_SRC="`"$ALGO"sum $MANIFEST_FILE | awk '{ print $1 }'`"
+ fi
+ ALGO="`echo $ALGO | tr '[:lower:]' '[:upper:]'`"
+ ALGO_MANIFEST=$(echo $MANIFEST_LINE | sed "s/.* $ALGO //" | awk '{ print $1 }')
+ if [ "$ALGO_SRC" != "$ALGO_MANIFEST" ]; then
+ echo "$ALGO Manifest: $ALGO_MANIFEST; $ALGO $SRC: $ALGO_SRC"
+ exit $ERROR_MANIFEST
+ else
+ echo "$ALGO match."
+ fi
+ done
+
+ done
+
+else
+ exit $ERROR_MANIFEST
+fi
+
# Untar
cd "$PKG_WORK"
tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR
@@ -154,7 +223,8 @@ fi
# Build the package
cd "$PKG"
-makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG
+mkdir -p $REPOS/$SLACKBUILD_PATH
+makepkg -l y -c n "$REPOS/$SLACKBUILD_PATH/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG
# Delete source and build directories if requested
if [ "$CLEANUP" == "yes" ] || [ "$1" = "--cleanup" ]; then
diff --git a/dev/perl/perl-sub-uplevel/Manifest b/dev/perl/perl-sub-uplevel/Manifest
new file mode 100644
index 00000000..18ab0373
--- /dev/null
+++ b/dev/perl/perl-sub-uplevel/Manifest
@@ -0,0 +1,23 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA256
+
+DIST Sub-Uplevel-0.1901.tar.gz 17417 MD5 cba75a803c3931d6c2252ad97f8f2616 RMD160 4abcccf1ca259a2f32fbbab51601bf783874ece2 SHA1 03abb82f2bffaaae3e22b7dd60b91bc5e87fb8b3 SHA256 d8f12ef0768f467b2ca2767c5b86e97942f8a37c43b30e1b4b947228a3c78602 SHA512 c90eee0b949ae70dca70f26e5e4d0d12db33dd724ad411494478a2ee26ec9291655a9a5e2db213b75ea8bc429089d07449c96701be8ba1a8b208360fd6bb240d
+MKBUILD perl-sub-uplevel.mkbuild 2373 MD5 3bfa58067c02e98da7cf6898cc405684 RMD160 36cc5a3d476dae97920ef8bd77734a1b532651bd SHA1 d4fd6973329c1841f698cf082cfd14f66dc0dc7d SHA256 e280c2524acfe87c9169e7bc930d911be45332216acc422a8d8c9de5fb543e30 SHA512 d921f917a5501f85f1d5ef919708a8b7d3cbfb6f3083a4c8eb8e38ebba5287ec5cb5206940b642322f4758759dca577bd51fe5caf54387ed08667459529b2ebb
+SLACKBUILD perl-sub-uplevel.SlackBuild 7062 MD5 ddfc05515d160ea2eb2718c5b1484d08 RMD160 f6922f1451a1a182b407f813cfbe2e4cec981481 SHA1 97d4263635e9fbe5c6e63b47c76b8abea419408c SHA256 a7bbd58302f4f150d6e552dd37509091bd7b0357c7caf0cecf466e33c89975a7 SHA512 2cb7b50f132d77c53e59cc73e3b4e8a71dc769f870b194c9406191ba4a0e8ec64f4949771e21864a6807bf54ff6301d41e6dafd20c29e324ada62476effb6344
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.9 (GNU/Linux)
+
+iQIcBAEBCAAGBQJKY2BeAAoJEEHL93ESzgeiUDwP+gKK/JwsWxnZEfUkqzosfa5Y
+4I/m7O2jCeD0pJFqyQb/HNlNoeF4hVi1E/jI3bdNtwovtLnuZZ8cgXsRrZEW9Cx8
+XA75jQYazF0VP7uE+ioyBKybY7Muc/gTGzvwedG/caZ251g5PHhkkpko7R0crRCN
+fV+0AFG2O0WtsuDx/bxwAH/MF2Fh0hcQ7La9oSeq/vxmoHn9pCd7ttk8+lBVyRPh
+koR24K/cZ7UA0OhbnXeEe4i5JWDy/7Z/zexOATnNbZOqGsLn9P0vRQ7frxCsTCAz
+k4HG1sF4ReHOcdVU7Tn92pUR/7ToChZyZVjlwm3ncLW3+mdv/v+CI6iId56/RBLq
+5tTx/E8tAgUayzIAcoj+iL6aDR+hfOWeF1joGTSolmkAzhm63UPgO/OXhBttVnNd
+WqO1/SDWASmsCNiv1zt730V7mfnpgkhARlYino5brMvFSuhK3WrLqsH5jtOedHLi
+EMRN967YV2ibQX5Y4pulCFQlvSATHUOKttCLTM7Lcv/bQ206p/ShMo7v9WAWZO0J
+T1vrAZQYnTN4a0xbxdv6w6+RQraMfEyonVYKfw8iiyqnK3nlZej8dPM+pqI4Wuv7
+HuNtyKxMHgK4IQ7pEIXMOMA93dcDjswoUGSFFtZE+pTYsKtVzKSHOXnV6F4vpxEs
+tcz/bo5tR0Ea89DU9Vrf
+=4u4m
+-----END PGP SIGNATURE-----
diff --git a/dev/perl/perl-sub-uplevel/perl-sub-uplevel.SlackBuild b/dev/perl/perl-sub-uplevel/perl-sub-uplevel.SlackBuild
index 9666568d..ccf8cdda 100755
--- a/dev/perl/perl-sub-uplevel/perl-sub-uplevel.SlackBuild
+++ b/dev/perl/perl-sub-uplevel/perl-sub-uplevel.SlackBuild
@@ -17,6 +17,7 @@
# slackbuild for perl-sub-uplevel, by Silvio Rhatto
# requires:
# tested: perl-sub-uplevel-0.1901
+# model: perl.mkSlackBuild $Rev: 796 $
#
# Look for slackbuildrc
@@ -38,6 +39,7 @@ SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME
TMP=${TMP:=/tmp}
PKG=${PKG:=$TMP/package-$PKG_NAME}
REPOS=${REPOS:=$TMP}
+SLACKBUILD_PATH=${SLACKBUILD_PATH:="dev/perl/perl-sub-uplevel"}
PREFIX=${PREFIX:=/usr}
PKG_WORK="$TMP/$SRC_NAME"
CONF_OPTIONS=${CONF_OPTIONS:=""}
@@ -64,6 +66,7 @@ ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33
ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36
ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39
ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42
+ERROR_MANIFEST=43;
# Clean up any leftovers of previous builds
rm -rf "$PKG_SRC" 2> /dev/null
@@ -83,6 +86,72 @@ if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then
wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET
fi
+# Check Manifest file
+if [ -e "$CWD/Manifest" ]; then
+
+ # Manifest signature checking
+ if grep -q -- "-----BEGIN PGP SIGNED MESSAGE-----" $CWD/Manifest; then
+ echo "Checking Manifest signature..."
+ gpg --verify $CWD/Manifest
+ if [ "$?" != "0" ]; then
+ exit $ERROR_MANIFEST
+ fi
+ fi
+
+ MANIFEST_LINES="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | wc -l`"
+
+ for ((MANIFEST_COUNT=1; MANIFEST_COUNT <= $MANIFEST_LINES; MANIFEST_COUNT++)); do
+
+ MANIFEST_LINE="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | head -n $MANIFEST_COUNT | tail -n 1`"
+ MANIFEST_FILE="`echo $MANIFEST_LINE | awk '{ print $2 }'`"
+ MANIFEST_FILE_TYPE="`echo $MANIFEST_LINE | awk '{ print $1 }'`"
+
+ if [ -e "$SRC_DIR/$MANIFEST_FILE" ]; then
+ MANIFEST_FILE="$SRC_DIR/$MANIFEST_FILE"
+ else
+ MANIFEST_FILE="`find $CWD -name $MANIFEST_FILE`"
+ fi
+
+ if [ ! -e "$MANIFEST_FILE" ] || [ -d "$MANIFEST_FILE" ]; then
+ continue
+ fi
+
+ echo "Checking Manifest for $MANIFEST_FILE_TYPE $MANIFEST_FILE integrity..."
+
+ SIZE_SRC="`wc -c $MANIFEST_FILE | awk '{ print $1 }'`"
+ SIZE_MANIFEST="`echo $MANIFEST_LINE | awk '{ print $3 }'`"
+
+ # Check source code size
+ if [ "$SIZE_SRC" != "$SIZE_MANIFEST" ]; then
+ echo "SIZE Manifest: $SIZE_MANIFEST; SIZE $SRC: $SIZE_SRC"
+ exit $ERROR_MANIFEST
+ else
+ echo "Size match."
+ fi
+
+ # Check source code integrity
+ for ALGO in md5 sha1 sha256 sha512 rmd160; do
+ if [ $ALGO = "rmd160" ]; then
+ ALGO_SRC="`openssl rmd160 $MANIFEST_FILE | awk '{ print $2 }'`"
+ else
+ ALGO_SRC="`"$ALGO"sum $MANIFEST_FILE | awk '{ print $1 }'`"
+ fi
+ ALGO="`echo $ALGO | tr '[:lower:]' '[:upper:]'`"
+ ALGO_MANIFEST=$(echo $MANIFEST_LINE | sed "s/.* $ALGO //" | awk '{ print $1 }')
+ if [ "$ALGO_SRC" != "$ALGO_MANIFEST" ]; then
+ echo "$ALGO Manifest: $ALGO_MANIFEST; $ALGO $SRC: $ALGO_SRC"
+ exit $ERROR_MANIFEST
+ else
+ echo "$ALGO match."
+ fi
+ done
+
+ done
+
+else
+ exit $ERROR_MANIFEST
+fi
+
# Untar
cd "$PKG_WORK"
tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR
@@ -148,9 +217,10 @@ EODESC
# Build the package
cd "$PKG"
-makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG
+mkdir -p $REPOS/$SLACKBUILD_PATH
+makepkg -l y -c n "$REPOS/$SLACKBUILD_PATH/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG
# Delete source and build directories if requested
-if [ "$CLEANUP" == "yes" ]; then
+if [ "$CLEANUP" == "yes" ] || [ "$1" = "--cleanup" ]; then
rm -rf "$PKG_WORK" "$PKG"
fi
diff --git a/dev/perl/perl-test-exception/Manifest b/dev/perl/perl-test-exception/Manifest
new file mode 100644
index 00000000..90b32e71
--- /dev/null
+++ b/dev/perl/perl-test-exception/Manifest
@@ -0,0 +1,23 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA256
+
+DIST Test-Exception-0.27.tar.gz 12940 MD5 dd9383e0bb207c7b0a04d6ba990a5909 RMD160 12ce8c315f817fe7f03e6c7bcdc3802279bb7015 SHA1 e4cd92b68ddc8eef198eb5daf07c288d96f4906e SHA256 32ad1e5e12d562a9f65e68c096dc4978e567c7f7263a171af75f8bed8f0c22e9 SHA512 2c64faccdb6b6176aa734637587a0429d7158ec599367949285ff33e6320199e9393234caf003a7895e269983e963ef6909e400fbb58b20a90eb3409cb2f7422
+MKBUILD perl-test-exception.mkbuild 2388 MD5 eb0b8a225058c70a765a0624329597ed RMD160 f96c6cc861205b0718304ba0f13ec3c75ef14857 SHA1 08bf73b70f9616566f15adb3252634fe54f0e7bd SHA256 555d86592a683397a31c70fa9be2dbacf5ee577a1763d56b05d2e7391aaff552 SHA512 f893b924a42014315fe8574667f8d9de63625c512c9938b2e44760acb433773be190c34c6ca0204016dc14a3b532fc2b30f523e2212d1e9d7ce500c4e3d8489e
+SLACKBUILD perl-test-exception.SlackBuild 7087 MD5 807a24c7795933e8eba89e603b50a40d RMD160 bd0bb28178f5a2a16f4732d477680aad2f3ea672 SHA1 ede32c2d9a5b91714b4fcffc3d472c2e6992dd5a SHA256 7ea24ee7e486af66490f0552659fbba280f20a9bd5f82cd06573b8dfc427999c SHA512 17e110beeceffcffa786875bce1193f66dcf04d8d530b2eb39ad2da15fdeb73a96d9e46255e37d327d338e731cdb3a6b86e48ac7341d7804d8ca5ca0a7dab1ae
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.9 (GNU/Linux)
+
+iQIcBAEBCAAGBQJKY2CSAAoJEEHL93ESzgeiCX4P/2O8YEFd4UfWBTP2zUs7sRjV
+3FVIF1dWIRk5MDA3KmxMFhFFdtIy5iRKVn2GfRjGNSAx9NWHNRuNkXFUJECMxtI9
+boIEWJFKpguECxNs4oShBafyZvXtydsM2QVqeGl6JW3CklEO1waqsPM5apWbWSqE
+pl03G93Rdvha0IK3yiHIp4q6xfrFxda3dCIPmow7E28DRul6GfQ7Qk7W6HcPoLMX
+MwX2+HDv1V5q/e1C/EHEmb+t8wglfSEAE07eeyzwSahAP9wO0UD3Bna8xwgqC7Yq
+IME+RwZkCVgIwBAug8p5fkolcYkom3Jx7jQ0EMapbXbzWPTR7NOnlWvcX1b7PfWh
+GuKNj2jkPDWzzWhHpUaRoMlUaSZUampqgu0KNumYRwxP65QjjNr0cOnqGcOBlqts
+yvgTGwO+OjkIGAxIkmrXYhCCryRCIS32jXstDJy1JxkqmlSSP11CXIa0m+Khjr3F
+aSzr/JyX4bwNM3R6ixbkfh35NqR/4CIH4+T1W9vM2u9OFW3Nuq56VAAbGCGQhV/t
+J1I4tynxCOnl9ILoERfzB2bUnShoJcBBi0dx85XqPLjE+1Vl8tHSbdm9t89NHzxN
+h2PXXvRBEDUPrA0oL+W4EehmmKdeJGW9vIiCFw1VtsfnfwmTtobOGKg8bawDd64M
+l3t9BW50tYXBzpMvRhEr
+=BwOx
+-----END PGP SIGNATURE-----
diff --git a/dev/perl/perl-test-exception/perl-test-exception.SlackBuild b/dev/perl/perl-test-exception/perl-test-exception.SlackBuild
index 4e154807..cc406389 100755
--- a/dev/perl/perl-test-exception/perl-test-exception.SlackBuild
+++ b/dev/perl/perl-test-exception/perl-test-exception.SlackBuild
@@ -17,6 +17,7 @@
# slackbuild for perl-test-exception, by Silvio Rhatto
# requires:
# tested: perl-test-exception-0.27
+# model: perl.mkSlackBuild $Rev: 796 $
#
# Look for slackbuildrc
@@ -38,6 +39,7 @@ SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME
TMP=${TMP:=/tmp}
PKG=${PKG:=$TMP/package-$PKG_NAME}
REPOS=${REPOS:=$TMP}
+SLACKBUILD_PATH=${SLACKBUILD_PATH:="dev/perl/perl-test-exception"}
PREFIX=${PREFIX:=/usr}
PKG_WORK="$TMP/$SRC_NAME"
CONF_OPTIONS=${CONF_OPTIONS:=""}
@@ -64,6 +66,7 @@ ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33
ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36
ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39
ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42
+ERROR_MANIFEST=43;
# Clean up any leftovers of previous builds
rm -rf "$PKG_SRC" 2> /dev/null
@@ -83,6 +86,72 @@ if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then
wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET
fi
+# Check Manifest file
+if [ -e "$CWD/Manifest" ]; then
+
+ # Manifest signature checking
+ if grep -q -- "-----BEGIN PGP SIGNED MESSAGE-----" $CWD/Manifest; then
+ echo "Checking Manifest signature..."
+ gpg --verify $CWD/Manifest
+ if [ "$?" != "0" ]; then
+ exit $ERROR_MANIFEST
+ fi
+ fi
+
+ MANIFEST_LINES="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | wc -l`"
+
+ for ((MANIFEST_COUNT=1; MANIFEST_COUNT <= $MANIFEST_LINES; MANIFEST_COUNT++)); do
+
+ MANIFEST_LINE="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | head -n $MANIFEST_COUNT | tail -n 1`"
+ MANIFEST_FILE="`echo $MANIFEST_LINE | awk '{ print $2 }'`"
+ MANIFEST_FILE_TYPE="`echo $MANIFEST_LINE | awk '{ print $1 }'`"
+
+ if [ -e "$SRC_DIR/$MANIFEST_FILE" ]; then
+ MANIFEST_FILE="$SRC_DIR/$MANIFEST_FILE"
+ else
+ MANIFEST_FILE="`find $CWD -name $MANIFEST_FILE`"
+ fi
+
+ if [ ! -e "$MANIFEST_FILE" ] || [ -d "$MANIFEST_FILE" ]; then
+ continue
+ fi
+
+ echo "Checking Manifest for $MANIFEST_FILE_TYPE $MANIFEST_FILE integrity..."
+
+ SIZE_SRC="`wc -c $MANIFEST_FILE | awk '{ print $1 }'`"
+ SIZE_MANIFEST="`echo $MANIFEST_LINE | awk '{ print $3 }'`"
+
+ # Check source code size
+ if [ "$SIZE_SRC" != "$SIZE_MANIFEST" ]; then
+ echo "SIZE Manifest: $SIZE_MANIFEST; SIZE $SRC: $SIZE_SRC"
+ exit $ERROR_MANIFEST
+ else
+ echo "Size match."
+ fi
+
+ # Check source code integrity
+ for ALGO in md5 sha1 sha256 sha512 rmd160; do
+ if [ $ALGO = "rmd160" ]; then
+ ALGO_SRC="`openssl rmd160 $MANIFEST_FILE | awk '{ print $2 }'`"
+ else
+ ALGO_SRC="`"$ALGO"sum $MANIFEST_FILE | awk '{ print $1 }'`"
+ fi
+ ALGO="`echo $ALGO | tr '[:lower:]' '[:upper:]'`"
+ ALGO_MANIFEST=$(echo $MANIFEST_LINE | sed "s/.* $ALGO //" | awk '{ print $1 }')
+ if [ "$ALGO_SRC" != "$ALGO_MANIFEST" ]; then
+ echo "$ALGO Manifest: $ALGO_MANIFEST; $ALGO $SRC: $ALGO_SRC"
+ exit $ERROR_MANIFEST
+ else
+ echo "$ALGO match."
+ fi
+ done
+
+ done
+
+else
+ exit $ERROR_MANIFEST
+fi
+
# Untar
cd "$PKG_WORK"
tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR
@@ -148,9 +217,10 @@ EODESC
# Build the package
cd "$PKG"
-makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG
+mkdir -p $REPOS/$SLACKBUILD_PATH
+makepkg -l y -c n "$REPOS/$SLACKBUILD_PATH/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG
# Delete source and build directories if requested
-if [ "$CLEANUP" == "yes" ]; then
+if [ "$CLEANUP" == "yes" ] || [ "$1" = "--cleanup" ]; then
rm -rf "$PKG_WORK" "$PKG"
fi
diff --git a/dev/perl/perl-test-warn/Manifest b/dev/perl/perl-test-warn/Manifest
new file mode 100644
index 00000000..a2880ec2
--- /dev/null
+++ b/dev/perl/perl-test-warn/Manifest
@@ -0,0 +1,23 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA256
+
+DIST Test-Warn-0.10.tar.gz 9624 MD5 17557bbc8eefadf9f088ae4ab73e9976 RMD160 0042a0c411406ff38d233f0c2eeee7bcb2a68fcc SHA1 d2ee498519f1b144de04763fe5bb916ce30e56d2 SHA256 52f8bf1cd3f23fffeabd6619e95dda81484b099ef2c8a0d3cd77a4960e6caac1 SHA512 77040d3e53d9cb9482aaaf974f0313e0d843e202d588a79f5aa77fe8e0a576f7d915cca32ef0162a83c66e590b84c7391584cf82a4685b1c2b45ab486afb89cd
+MKBUILD perl-test-warn.mkbuild 2333 MD5 e3618c1de3fa4498a84315f1001fb654 RMD160 0ff61dc23f452d3c6378d22057e7cce620aa14cb SHA1 70aa9f3b243f7e038f044869b89e8e689fc1e0c3 SHA256 60f5024ff86213148b132fc7f890aa07975a53b68467c76c3af48313b2b11304 SHA512 2f94e8f536e69db9670fb6e0783d516f8c045ad6fa0c883a4afc54662f791bf1b761c85236efe1778fc41ecf62c8e9850ab08e5888624396a6af00147d3a0d73
+SLACKBUILD perl-test-warn.SlackBuild 7012 MD5 57e34f39a76981ae1fa7cedf1d4021b4 RMD160 7718fb5d4644cd40e7a1d5b86c51799f8c1de3ef SHA1 6cd52ca97d0bb95ecf7e727c91635aca64367fe4 SHA256 792a7731367051b0f5715b62489fe7a6cecf8fa43ea59f6b65a650e08f263f24 SHA512 4d11246c3cb9149fd252a58d792618b1823ec6af92c9253e10264f78cc8e129bb08302d665a073d512f10a894d92369da74c4f13dba6f738b1da3e17807392f4
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.9 (GNU/Linux)
+
+iQIcBAEBCAAGBQJKY2F5AAoJEEHL93ESzgeiYC8P+wYlx/Xk3XdPYgbAAXVpb4br
+DoG6WbTSTaW9Y4KncN5xrJwyHZzypFtJraKxJfMAoJG7WwUAvz6khW6lVEkeFyXd
+Xv4IqkgA2sIelV/baNcsl3VKqf6mTr7vltRIwsxqwrPrjJC2FcQbgPWr391Ph9Tq
+yweYxAi5Bwl61vbSY8v8PEgM5e6hYrHPAmQL1JasiqH+TAQULc6wj1Vz1dMYb7Hj
+rERlk46JFOhKfaUxgzks3HS08hjjz6IfvHV4xTIO3hMc6agG4Qu87l1ECT5aFINR
+tckyigNrM+7Qsr+tUPOy7omch6y+oiISiMWkrMMq98pq9s1/QGWxhGqksZUEEkjG
+a0mWSCrpcOmE4WejCyIIa+snSCU3CepUS0Lw4Ggw/jWgvb7ld5QdrJAUxjv8ifW3
+Mg4HcQicuZDtxFiNCU1DrvJBDC4JeyEp2krqYfKisaIX+JgkghMEjAcRFXkuRzZt
+lf222iYBtCyA/em/ffymO8qjb7TZqHDvzfsGD2mPRYG1fVbE9JZ5yXU56GIB/vuT
+I3N+HSoNa4YUfXKFl99gem+z7N7CC4o9+KXx8Drx8FU9m9p7lw9DhbX+tsDMmRWk
+UNdhTOGL4JKNd3JMkX8glNyJxiZLvNGjHuUgYW53pVKjxy+1xehxC19rVRvedH5m
+IGoUBN/3y0MT8GNOt611
+=139T
+-----END PGP SIGNATURE-----
diff --git a/dev/perl/perl-test-warn/perl-test-warn.SlackBuild b/dev/perl/perl-test-warn/perl-test-warn.SlackBuild
index e718a392..bc4700af 100755
--- a/dev/perl/perl-test-warn/perl-test-warn.SlackBuild
+++ b/dev/perl/perl-test-warn/perl-test-warn.SlackBuild
@@ -17,6 +17,7 @@
# slackbuild for perl-test-warn, by Silvio Rhatto
# requires:
# tested: perl-test-warn-0.10
+# model: perl.mkSlackBuild $Rev: 796 $
#
# Look for slackbuildrc
@@ -38,6 +39,7 @@ SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME
TMP=${TMP:=/tmp}
PKG=${PKG:=$TMP/package-$PKG_NAME}
REPOS=${REPOS:=$TMP}
+SLACKBUILD_PATH=${SLACKBUILD_PATH:="dev/perl/perl-test-warn"}
PREFIX=${PREFIX:=/usr}
PKG_WORK="$TMP/$SRC_NAME"
CONF_OPTIONS=${CONF_OPTIONS:=""}
@@ -64,6 +66,7 @@ ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33
ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36
ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39
ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42
+ERROR_MANIFEST=43;
# Clean up any leftovers of previous builds
rm -rf "$PKG_SRC" 2> /dev/null
@@ -83,6 +86,72 @@ if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then
wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET
fi
+# Check Manifest file
+if [ -e "$CWD/Manifest" ]; then
+
+ # Manifest signature checking
+ if grep -q -- "-----BEGIN PGP SIGNED MESSAGE-----" $CWD/Manifest; then
+ echo "Checking Manifest signature..."
+ gpg --verify $CWD/Manifest
+ if [ "$?" != "0" ]; then
+ exit $ERROR_MANIFEST
+ fi
+ fi
+
+ MANIFEST_LINES="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | wc -l`"
+
+ for ((MANIFEST_COUNT=1; MANIFEST_COUNT <= $MANIFEST_LINES; MANIFEST_COUNT++)); do
+
+ MANIFEST_LINE="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | head -n $MANIFEST_COUNT | tail -n 1`"
+ MANIFEST_FILE="`echo $MANIFEST_LINE | awk '{ print $2 }'`"
+ MANIFEST_FILE_TYPE="`echo $MANIFEST_LINE | awk '{ print $1 }'`"
+
+ if [ -e "$SRC_DIR/$MANIFEST_FILE" ]; then
+ MANIFEST_FILE="$SRC_DIR/$MANIFEST_FILE"
+ else
+ MANIFEST_FILE="`find $CWD -name $MANIFEST_FILE`"
+ fi
+
+ if [ ! -e "$MANIFEST_FILE" ] || [ -d "$MANIFEST_FILE" ]; then
+ continue
+ fi
+
+ echo "Checking Manifest for $MANIFEST_FILE_TYPE $MANIFEST_FILE integrity..."
+
+ SIZE_SRC="`wc -c $MANIFEST_FILE | awk '{ print $1 }'`"
+ SIZE_MANIFEST="`echo $MANIFEST_LINE | awk '{ print $3 }'`"
+
+ # Check source code size
+ if [ "$SIZE_SRC" != "$SIZE_MANIFEST" ]; then
+ echo "SIZE Manifest: $SIZE_MANIFEST; SIZE $SRC: $SIZE_SRC"
+ exit $ERROR_MANIFEST
+ else
+ echo "Size match."
+ fi
+
+ # Check source code integrity
+ for ALGO in md5 sha1 sha256 sha512 rmd160; do
+ if [ $ALGO = "rmd160" ]; then
+ ALGO_SRC="`openssl rmd160 $MANIFEST_FILE | awk '{ print $2 }'`"
+ else
+ ALGO_SRC="`"$ALGO"sum $MANIFEST_FILE | awk '{ print $1 }'`"
+ fi
+ ALGO="`echo $ALGO | tr '[:lower:]' '[:upper:]'`"
+ ALGO_MANIFEST=$(echo $MANIFEST_LINE | sed "s/.* $ALGO //" | awk '{ print $1 }')
+ if [ "$ALGO_SRC" != "$ALGO_MANIFEST" ]; then
+ echo "$ALGO Manifest: $ALGO_MANIFEST; $ALGO $SRC: $ALGO_SRC"
+ exit $ERROR_MANIFEST
+ else
+ echo "$ALGO match."
+ fi
+ done
+
+ done
+
+else
+ exit $ERROR_MANIFEST
+fi
+
# Untar
cd "$PKG_WORK"
tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR
@@ -148,9 +217,10 @@ EODESC
# Build the package
cd "$PKG"
-makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG
+mkdir -p $REPOS/$SLACKBUILD_PATH
+makepkg -l y -c n "$REPOS/$SLACKBUILD_PATH/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG
# Delete source and build directories if requested
-if [ "$CLEANUP" == "yes" ]; then
+if [ "$CLEANUP" == "yes" ] || [ "$1" = "--cleanup" ]; then
rm -rf "$PKG_WORK" "$PKG"
fi
diff --git a/dev/perl/perl-tree-dag_node/Manifest b/dev/perl/perl-tree-dag_node/Manifest
new file mode 100644
index 00000000..7ed78faa
--- /dev/null
+++ b/dev/perl/perl-tree-dag_node/Manifest
@@ -0,0 +1,23 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA256
+
+DIST Tree-DAG_Node-1.06.tar.gz 32843 MD5 3b006f128bd1d8961fc57c466ffa05f2 RMD160 b3011e10cbfe8b1dbc7d3ee191e6dbe692b18d46 SHA1 8f412087b33942df06f20ca7c2e8ea0bd2354742 SHA256 502570774dd3bf11345fb028ca4cdd79f04db12ee68a826f0c44e24da0e3db2a SHA512 dfdec2799b3ef2e20303001aa40df16be134e1c56d48acd61cb6397e66d7fb38beeb4efdbcd24fe16e2fcc15471e77dabb1fd2df0334e3e44024109a997ae71b
+MKBUILD perl-tree-dag_node.mkbuild 2395 MD5 4daae6b9f610fee630c942d933d14740 RMD160 16ab584a13ef8652444aa8af6ccd9f1038620705 SHA1 37f7479e2358fa25d53955c4a0b2a8c5ba773a84 SHA256 c9592bfd419cd6e082bec23880ea9f4f9ac987ec76f382465539a230bd4dc37d SHA512 a721be8daecfc174ed9db615a10ed42e875e3aa5fa418dc0335a6d1d5160e2411f579afa7dbf18bd83e19eee00ef7848f095941f8ac2b441e4d8c245e8e50d66
+SLACKBUILD perl-tree-dag_node.SlackBuild 7090 MD5 92657d9922d31f63db7c84def4e6bc1e RMD160 24cefd62b233e4843c8414351373431377f6fa65 SHA1 126506aed448e5591e8adbf735797f3b90169297 SHA256 5ec279d263b3e79469bd0408d776c1613f8e2e16b4f698ae4715ed52a4f43783 SHA512 2025ee99cf8b316e12ab3d47f0198c798e8c8cc58c21e60d9c9d8a52862ae530a2257ce77d45bd87e9404e509a21c685d8df5d7f15c4911189a91a07cbf23f57
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.9 (GNU/Linux)
+
+iQIcBAEBCAAGBQJKY2FbAAoJEEHL93ESzgei83sQAIpHm7Yqzdz88bZnuZ/7ECNg
+dP66RHi9RTgZ/tz8xsT9CMGUFQXwL6qra+iEhUpO4m4d7yGX1/aA7owBf6f8K92G
+NnoKhzgBXfkBKhUgbaGtDajl7d1ELInV0bkJjwIYWTc9E5gK6cBuyyznQAJ4X9IU
+trP3IYxfLs7rgj6nbtEVPefpE270nDe+WDW5i28TY1DXkZVHUfGHQNXzKXW1dnoW
+xLzRvgESnhhX+ZvGs3Lekwb9nZ70Jag7OxGws2mPWqbqxlSeqehji4YdYKOzk4M4
+jZ2mlyDU/YFWuO12CMJGn67QioQ1wFSz8nhso+m3kAWxePcBmf8HVpsRNONxx1JV
+XcS6YWqC/Mzqdl5qybMnyOCKQUT5L3y8XLY/DTgdAX44kzJV4AZ5piryzLGnEX0h
+86gMkFvyvlrTY0N8xcwMBDgxoozHvUW7kSUe5kGFJRdhJm6LEaxVkAhXe11Xx0eB
+BxXLPwku4ksSf+oPzVTnH89fDFcpn8ypS/yz2rGLpamDD+mkNz2wRbSNy8ul1HzW
+bFzY/WTnDjZM2z7obCukjnjSK0HyfhWMJY0B5dKu3cvO6UUcrJ4qydxNKKEbUqzf
+CqJP9l81sCFSORZ9tCT7t1g80LLpznpZdyJdUfPh6VsU+E17SOanWXaQ2Vv8BIXb
+rgEOmsARUZBpUT8zCxGS
+=r4Zg
+-----END PGP SIGNATURE-----
diff --git a/dev/perl/perl-tree-dag_node/perl-tree-dag_node.SlackBuild b/dev/perl/perl-tree-dag_node/perl-tree-dag_node.SlackBuild
index c96bb96b..075c2c09 100755
--- a/dev/perl/perl-tree-dag_node/perl-tree-dag_node.SlackBuild
+++ b/dev/perl/perl-tree-dag_node/perl-tree-dag_node.SlackBuild
@@ -17,6 +17,7 @@
# slackbuild for perl-tree-dag_node, by Silvio Rhatto
# requires:
# tested: perl-tree-dag_node-1.06
+# model: perl.mkSlackBuild $Rev: 796 $
#
# Look for slackbuildrc
@@ -38,6 +39,7 @@ SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME
TMP=${TMP:=/tmp}
PKG=${PKG:=$TMP/package-$PKG_NAME}
REPOS=${REPOS:=$TMP}
+SLACKBUILD_PATH=${SLACKBUILD_PATH:="dev/perl/perl-tree-dag_node"}
PREFIX=${PREFIX:=/usr}
PKG_WORK="$TMP/$SRC_NAME"
CONF_OPTIONS=${CONF_OPTIONS:=""}
@@ -64,6 +66,7 @@ ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33
ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36
ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39
ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42
+ERROR_MANIFEST=43;
# Clean up any leftovers of previous builds
rm -rf "$PKG_SRC" 2> /dev/null
@@ -83,6 +86,72 @@ if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then
wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET
fi
+# Check Manifest file
+if [ -e "$CWD/Manifest" ]; then
+
+ # Manifest signature checking
+ if grep -q -- "-----BEGIN PGP SIGNED MESSAGE-----" $CWD/Manifest; then
+ echo "Checking Manifest signature..."
+ gpg --verify $CWD/Manifest
+ if [ "$?" != "0" ]; then
+ exit $ERROR_MANIFEST
+ fi
+ fi
+
+ MANIFEST_LINES="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | wc -l`"
+
+ for ((MANIFEST_COUNT=1; MANIFEST_COUNT <= $MANIFEST_LINES; MANIFEST_COUNT++)); do
+
+ MANIFEST_LINE="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | head -n $MANIFEST_COUNT | tail -n 1`"
+ MANIFEST_FILE="`echo $MANIFEST_LINE | awk '{ print $2 }'`"
+ MANIFEST_FILE_TYPE="`echo $MANIFEST_LINE | awk '{ print $1 }'`"
+
+ if [ -e "$SRC_DIR/$MANIFEST_FILE" ]; then
+ MANIFEST_FILE="$SRC_DIR/$MANIFEST_FILE"
+ else
+ MANIFEST_FILE="`find $CWD -name $MANIFEST_FILE`"
+ fi
+
+ if [ ! -e "$MANIFEST_FILE" ] || [ -d "$MANIFEST_FILE" ]; then
+ continue
+ fi
+
+ echo "Checking Manifest for $MANIFEST_FILE_TYPE $MANIFEST_FILE integrity..."
+
+ SIZE_SRC="`wc -c $MANIFEST_FILE | awk '{ print $1 }'`"
+ SIZE_MANIFEST="`echo $MANIFEST_LINE | awk '{ print $3 }'`"
+
+ # Check source code size
+ if [ "$SIZE_SRC" != "$SIZE_MANIFEST" ]; then
+ echo "SIZE Manifest: $SIZE_MANIFEST; SIZE $SRC: $SIZE_SRC"
+ exit $ERROR_MANIFEST
+ else
+ echo "Size match."
+ fi
+
+ # Check source code integrity
+ for ALGO in md5 sha1 sha256 sha512 rmd160; do
+ if [ $ALGO = "rmd160" ]; then
+ ALGO_SRC="`openssl rmd160 $MANIFEST_FILE | awk '{ print $2 }'`"
+ else
+ ALGO_SRC="`"$ALGO"sum $MANIFEST_FILE | awk '{ print $1 }'`"
+ fi
+ ALGO="`echo $ALGO | tr '[:lower:]' '[:upper:]'`"
+ ALGO_MANIFEST=$(echo $MANIFEST_LINE | sed "s/.* $ALGO //" | awk '{ print $1 }')
+ if [ "$ALGO_SRC" != "$ALGO_MANIFEST" ]; then
+ echo "$ALGO Manifest: $ALGO_MANIFEST; $ALGO $SRC: $ALGO_SRC"
+ exit $ERROR_MANIFEST
+ else
+ echo "$ALGO match."
+ fi
+ done
+
+ done
+
+else
+ exit $ERROR_MANIFEST
+fi
+
# Untar
cd "$PKG_WORK"
tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR
@@ -148,9 +217,10 @@ EODESC
# Build the package
cd "$PKG"
-makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG
+mkdir -p $REPOS/$SLACKBUILD_PATH
+makepkg -l y -c n "$REPOS/$SLACKBUILD_PATH/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG
# Delete source and build directories if requested
-if [ "$CLEANUP" == "yes" ]; then
+if [ "$CLEANUP" == "yes" ] || [ "$1" = "--cleanup" ]; then
rm -rf "$PKG_WORK" "$PKG"
fi