aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorrhatto <rhatto@370017ae-e619-0410-ac65-c121f96126d4>2009-03-30 02:01:31 +0000
committerrhatto <rhatto@370017ae-e619-0410-ac65-c121f96126d4>2009-03-30 02:01:31 +0000
commitfd0994f67f0e8e17c1d0323ecb4811a3c836a9f1 (patch)
treea3703f25224e0c25e53c241fe7b62dfa25b74328
parentc38ef39e1ee2d4add13b05ac2d1b2fb3e70c8287 (diff)
downloadslackbuilds-fd0994f67f0e8e17c1d0323ecb4811a3c836a9f1.tar.gz
slackbuilds-fd0994f67f0e8e17c1d0323ecb4811a3c836a9f1.tar.bz2
omake: added patch for 0.9.8.5_3
git-svn-id: svn+slack://slack.fluxo.info/var/svn/slackbuilds@2130 370017ae-e619-0410-ac65-c121f96126d4
-rw-r--r--app/backup/gibak/Manifest24
-rwxr-xr-xapp/backup/gibak/gibak.SlackBuild76
-rw-r--r--dev/util/omake/Manifest26
-rw-r--r--dev/util/omake/omake-0.9.8.5_3.diff26
-rwxr-xr-xdev/util/omake/omake.SlackBuild103
5 files changed, 248 insertions, 7 deletions
diff --git a/app/backup/gibak/Manifest b/app/backup/gibak/Manifest
new file mode 100644
index 00000000..e92a1fc2
--- /dev/null
+++ b/app/backup/gibak/Manifest
@@ -0,0 +1,24 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA1
+
+DIST gibak-0.3.0.tar.gz 24380 MD5 e3c14b5c1fe92cdcb3effd58c68e0793 RMD160 682c0801b30018c475ae5cc63c1854ee4fe0cec4 SHA1 04c161fc42411d2909dc1790ad003543dd28b3d6 SHA256 a270398ef509303af93f2945acf82c98d3479a3bbe70b907116859ced9855478 SHA512 5b8f7aa12e3e35ae8cf340b60c4e8c50ea05e50208f854e3992c616dac747468ca07cc5e27e38906286a2bbddd7ae204d94666d33acd72f8371ec5c5329146dd
+MKBUILD gibak.mkbuild 2856 MD5 a30b067b88270e0978d4c2cdab80dcd1 RMD160 513a24353ce217433efd9b6616abb52df17367c1 SHA1 da4a5333272041ce725d1044e913ff520b94b1cd SHA256 4823d9d646f323b19a5903e7571ea072ec13f9e02521de238f8f3e4583b7af03 SHA512 185e9720b2bbe617b8a4c135edb6c38cf82030d9f21f0ae37f47487295425de419494a26dc3955d263e01e7422380e5efbfa75456618bbb903df6a7b76df7400
+SLACK-REQUIRED slack-required 75 MD5 9c64c59ab90a0365bd2ea7938d8d688d RMD160 ecd5d8c4ffa5d9c6e904cf41178a0f1bb64839b7 SHA1 80057abb760f840ac7e2e293ccef068e1e7e75ff SHA256 581ee7d788727c2241c408b413e7330ad5f35f1f8267e7f592a1ade9bdd3cb59 SHA512 bd299ac407ccee73417f83d6aaeefaa94d39086320ae05b351516bc706a7a6f1f39c8c61333022fdff8ae9096d9cd40e1b0059c630dec810ee7677f7faa114fc
+SLACKBUILD gibak.SlackBuild 7085 MD5 19bd7517f0c315dad373d21edf34cbd6 RMD160 dfc73d68b9a99fb46cfb2e0bc313607c783c95f0 SHA1 b51b98a41b71e132847a85b2cca7480b641e26a4 SHA256 221822428a7df466db491e5d8efa6c5e36ebaf7f48bd66a33e49fcc3001ca084 SHA512 89ebe1fcf00b587d0b370f222522a9ae0cc9de818cd44010beafdaf4d804f8dae1b3cf224e1447a1f93b8429029170b58bd5ec25b71c28a22b0144048a799c30
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.9 (GNU/Linux)
+
+iQIcBAEBAgAGBQJJ0CdrAAoJEEHL93ESzgeiGBsP/004wGnfZ+qVPSbaFvORMY3f
+55J+9LiBx6VhHLYlaJv1ZX2tHKYe91zI8wEWX7PUYotL3Ad1/nxMqUpeHR/QbPws
+7Ve9+tSSAyDFO4DYuLIhQMQIH/MwAvqyPVkFNAV2hzwFmcQAP9QHiLZm77GrVFgT
+i6IUHcIgw2C/nPxLCIW2ejh3VU3Gku3p6w4qFTG3p62Sdhw6E6evHfxLAeu1mbPe
+u2sAiWoFVZFJ6YM7ZjXGut8nTwm+BmOGeZCHJ0k7gSBugbyiTX2fBddDF2xagwFA
+fBlj3uRoVbPu76WIXBV5vohE/IapkExaAGJWYfFOJMiBPQ5yBs3Y7ObynBDyxAfc
+ak9YcfH1R8zKeAJcDmQ1yZwr1g6n/C5N3PHIZ3x0l3yf8+Eu1N2+R6Fn1ZSzkRCS
+6bHIFXUsgZ4tQwoCfQANKCUblxUJnBRaljCdmp16QE7B7qMnyh/sVmzwIEYUoCcU
+b5PRwLoCf2UmWQwmn0iMOVvnUZXyoe/Sr3vtA2S832YWKlS/sXrkUYx0/Vdzjee2
+sYHYzdINnY4psamiDm4DvLwAL2wIdSsZlqpQA74R57illXvpYSehMLFrknu5O3/g
+2mcQ1mKinahvRJbguJW5QIXF63vJlZutjdlLEM2Xx2ppxl22KyYG+3nRNOJQGdRM
+NU436y5wZRaKyT1YHWOI
+=XMxM
+-----END PGP SIGNATURE-----
diff --git a/app/backup/gibak/gibak.SlackBuild b/app/backup/gibak/gibak.SlackBuild
index f01d6ce0..58e91bed 100755
--- a/app/backup/gibak/gibak.SlackBuild
+++ b/app/backup/gibak/gibak.SlackBuild
@@ -17,6 +17,7 @@
# slackbuild for gibak, by Silvio Rhatto
# requires: omake
# tested: gibak-0.3.0
+# model: generic.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:="app/backup/gibak"}
PREFIX=${PREFIX:=/usr}
PKG_WORK="$TMP/$SRC_NAME"
CONF_OPTIONS=${CONF_OPTIONS:=""}
@@ -47,9 +49,9 @@ NUMJOBS=${NUMJOBS:=""}
LIBDIR="$PREFIX/lib"
if [ "$ARCH" = "i386" ]; then
- SLKCFLAGS="-O2 -march=i386 -mcpu=i686"
+ SLKCFLAGS="-O2 -march=i386 -mtune=i686"
elif [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mcpu=i686"
+ SLKCFLAGS="-O2 -march=i486 -mtune=i686"
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686"
elif [ "$ARCH" = "s390" ]; then
@@ -65,6 +67,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_WORK" 2> /dev/null
@@ -84,6 +87,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 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
@@ -150,7 +219,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/util/omake/Manifest b/dev/util/omake/Manifest
new file mode 100644
index 00000000..e4e2ffd7
--- /dev/null
+++ b/dev/util/omake/Manifest
@@ -0,0 +1,26 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA1
+
+DIST omake-0.9.8.5-3.tar.gz 3321245 MD5 d114b3c4201808aacd73ec1a98965c47 RMD160 2364e29a7cc9bd6aaf837818bbe0a64ef4afce14 SHA1 e78c9d8858749f5e234cba303637980e24085cbc SHA256 5b675e09f49ff8249a775798f25ab127515cf2fed39527b202784757a35eddad SHA512 29ae7aa1e52bea7b46007c33cc10916da45b2d0e19bfa22b230be143bd84a114a9c02ace41ba5ea0c3010a5f6b49bba9995f5febde2cc503a2d373b957ea3831
+MKBUILD omake.mkbuild 2570 MD5 95317777963fe7fb6a3df96771f3385a RMD160 4d5f015fe9ecba05ae19a95d5c11cb14261fc1a9 SHA1 bcd020c706b933892c7166a65fc13176dc8df202 SHA256 72ee9e0a625805aec3da6334b750e66f030397cfeb8fbae752d11061fe5e3378 SHA512 333025daa7caa08e3344ceda88e20a987e06b9f7b82d886f69817f69a81b6609eb2f137b353092ae5ff9fe4a2a4f405f9d88521359d3fcf44781126bb4375183
+PATCH omake-0.9.8.5-3.diff 1173 MD5 ead218c8e5992ad71fc8cc6c2ffec70a RMD160 98ac914474b6649db06500fd6b99a6bab1f16968 SHA1 355329095c81e57b24a0ffd30d19727b179ef2d9 SHA256 10d08cf59b343fdf2dcf3cc04d8bd3519d1c39a2f209f920d5d0ee3490955b83 SHA512 111781297956ad3e32e8b8c1093dc11911ca3cec4a995a26fe0e6413606eae60dde26e08d2be7e914b893c89a8642a5c17ccd97d926b2678ce105753d4b326f1
+PATCH omake-0.9.8.5_3.diff 1173 MD5 ead218c8e5992ad71fc8cc6c2ffec70a RMD160 98ac914474b6649db06500fd6b99a6bab1f16968 SHA1 355329095c81e57b24a0ffd30d19727b179ef2d9 SHA256 10d08cf59b343fdf2dcf3cc04d8bd3519d1c39a2f209f920d5d0ee3490955b83 SHA512 111781297956ad3e32e8b8c1093dc11911ca3cec4a995a26fe0e6413606eae60dde26e08d2be7e914b893c89a8642a5c17ccd97d926b2678ce105753d4b326f1
+SLACK-REQUIRED slack-required 75 MD5 9a9b562748aafd1b4e5c618ad59df756 RMD160 294a67f27e1db0357590624832a0aecd9bbd0659 SHA1 83f3ed511ad49f565ad9b7125edb17f180bb7120 SHA256 a47a8cdf16d4d814d135a9c43c405af597cfbd404a8275592f1571c0f471a096 SHA512 efefd1e126923af130cff92b5c934244e2537d73217f5cdff575ebbd522718b9987b980c6e9e7089940694490608d9d146ee6a783987ed87d82ef9368d26dde5
+SLACKBUILD omake.SlackBuild 7926 MD5 47e5599717b49389d18ede962b69c20d RMD160 d47624bcb8232e308d405943f2bcb9e960f249a0 SHA1 c0695313081200ea45b6f5503f44a5cbdda73937 SHA256 1f472f438b07ed70378d4bfe55ff21e4d45825be512b935349e5a644b05e1845 SHA512 71ad6233625e4029f1abf5d586f4b4358198c829eca1828c72f10f1f30ae622aeab003c13dd7453be4452973aeb280469a0f10fe0ac08d117386ace04520efa9
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.9 (GNU/Linux)
+
+iQIcBAEBAgAGBQJJ0ChZAAoJEEHL93ESzgeikV4P/jUpphtgcbXvg/J5a7uHDw9X
+ZhgnBo1D0WSgbCkzYUS5zrlFZkgkTbBDyfQ++jcRgCvpkp2lG35sTfEWMi9MZJpJ
+MD7clwWXchVKSZoWago/P6V6JXBkGXKu3IZK4uVK0QTYQTVi+Td0jSnM+pj9rvm1
+YwRdZ23CbC8fQyLOZhT4DIuwO1GChjB8qhncNlNVBEFmrRl8spguaB3pFaJQ3ksq
+iRxDeojJPSSTK5UrZnemXyaH14NlcwouVE7y0d0rwdeZF4xIrGjHEwoKSKfgERSn
+GsJBukQXVDiA3aHRyhOCOXnR6PSbsmwi7+JZklixrms95yFxPzZs3EEH9rj8n9TW
+mSlxPm8CadmZ+fU7aSAkxjyeCrhhCdkbDk0oWxj8ndt1Y5oQG/ddyv8gnukwheYV
+37XqQljQUCEhdv06+BmrjQPZXVlx64ZMyxfCfhpVbiZ78bdGZtqZaiUTVoMlsuua
+ER/SeRaV49MOA1brax0SZJg169VWmZtYNALfU3TkKtNtARJ0Q3zR4Iy5vq6/pVKN
+VHGkJR5GpqOzVpPDQ66I3j4tlibKGkAEK2akBwAO9rglfkwFm57gsGXm02A3TV2y
+sUuJ6fAnsW9fzoc9Q9HKw9hdN6+DVDbElXcDJswXxpdl+pb5zelIqGaucDpyeK3Y
+BxPf38VjRmuCgkj79bQF
+=hDYr
+-----END PGP SIGNATURE-----
diff --git a/dev/util/omake/omake-0.9.8.5_3.diff b/dev/util/omake/omake-0.9.8.5_3.diff
new file mode 100644
index 00000000..e2499e75
--- /dev/null
+++ b/dev/util/omake/omake-0.9.8.5_3.diff
@@ -0,0 +1,26 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## 10_stdin_stdout_fix.dpatch by Mike Furr <mfurr@debian.org>
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: stdin <-> stdout fix (upstream r12115)
+
+@DPATCH@
+diff -urNad omake-0.9.8.5~/src/build/omake_rule.ml omake-0.9.8.5/src/build/omake_rule.ml
+--- omake-0.9.8.5~/src/build/omake_rule.ml 2007-07-02 14:20:23.000000000 -0400
++++ omake-0.9.8.5/src/build/omake_rule.ml 2007-09-06 12:52:23.752616976 -0400
+@@ -1040,12 +1040,12 @@
+ * Evaluate the commands NOW.
+ *)
+ and exec_commands venv pos loc commands =
+- let stdin = channel_of_var venv pos loc stdin_var in
+ let stdout = channel_of_var venv pos loc stdout_var in
+- let stdin = Lm_channel.descr stdin in
++ let stderr = channel_of_var venv pos loc stderr_var in
+ let stdout = Lm_channel.descr stdout in
++ let stderr = Lm_channel.descr stderr in
+ List.iter (fun command ->
+- let pid = eval_shell_internal stdin stdout command in
++ let pid = eval_shell_internal stdout stderr command in
+ let status, _ = eval_shell_wait venv pos pid in
+ let code =
+ match status with
diff --git a/dev/util/omake/omake.SlackBuild b/dev/util/omake/omake.SlackBuild
index 33a537b3..58a7fab8 100755
--- a/dev/util/omake/omake.SlackBuild
+++ b/dev/util/omake/omake.SlackBuild
@@ -15,8 +15,9 @@
# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
#
# slackbuild for omake, by Silvio Rhatto - rhatto at riseup.net
-# requires: ocaml
+# requires:
# tested: omake-0.9.8.5-3
+# model: generic.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/util/omake"}
PREFIX=${PREFIX:=/usr}
PKG_WORK="$TMP/$SRC_NAME"
CONF_OPTIONS=${CONF_OPTIONS:=""}
@@ -47,9 +49,9 @@ NUMJOBS=${NUMJOBS:=""}
LIBDIR="$PREFIX/lib"
if [ "$ARCH" = "i386" ]; then
- SLKCFLAGS="-O2 -march=i386 -mcpu=i686"
+ SLKCFLAGS="-O2 -march=i386 -mtune=i686"
elif [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mcpu=i686"
+ SLKCFLAGS="-O2 -march=i486 -mtune=i686"
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686"
elif [ "$ARCH" = "s390" ]; then
@@ -65,6 +67,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_WORK" 2> /dev/null
@@ -84,12 +87,103 @@ 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
+
# Build and install package
PREFIX=$PREFIX INSTALL_ROOT=$PKG make install
@@ -145,7 +239,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