From fd0994f67f0e8e17c1d0323ecb4811a3c836a9f1 Mon Sep 17 00:00:00 2001 From: rhatto Date: Mon, 30 Mar 2009 02:01:31 +0000 Subject: 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 --- app/backup/gibak/Manifest | 24 +++++++++ app/backup/gibak/gibak.SlackBuild | 76 ++++++++++++++++++++++++-- dev/util/omake/Manifest | 26 +++++++++ dev/util/omake/omake-0.9.8.5_3.diff | 26 +++++++++ dev/util/omake/omake.SlackBuild | 103 ++++++++++++++++++++++++++++++++++-- 5 files changed, 248 insertions(+), 7 deletions(-) create mode 100644 app/backup/gibak/Manifest create mode 100644 dev/util/omake/Manifest create mode 100644 dev/util/omake/omake-0.9.8.5_3.diff 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 +## +## 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 -- cgit v1.2.3