diff options
Diffstat (limited to 'gnome/base/libgnome')
-rw-r--r-- | gnome/base/libgnome/Manifest | 24 | ||||
-rw-r--r-- | gnome/base/libgnome/libgnome.SlackBuild | 78 |
2 files changed, 98 insertions, 4 deletions
diff --git a/gnome/base/libgnome/Manifest b/gnome/base/libgnome/Manifest new file mode 100644 index 00000000..2c6dd416 --- /dev/null +++ b/gnome/base/libgnome/Manifest @@ -0,0 +1,24 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA1 + +DIST libgnome-2.22.0.tar.bz2 1407548 MD5 52db42762589826c66d27def66112807 RMD160 50b0c0fc21e14c45245b95138b40e1ea40084547 SHA1 2d263acdd313d37d1018356c74e9d1cc7a9c2e0d SHA256 d5f668fc9d218ddb0697142a4ec288b16af3f0a9f2ed16e12d0ac568fe9c75d7 SHA512 77b4ae5e2f47feef74a9169ef1d9a7b91871affb966e544608d92cba5b06b49aee461f32d4147863f9b124581c4ab4f59907a3eadf825adba0a08c71c9da0137 +MKBUILD libgnome.mkbuild 4483 MD5 d68fb10653e9a387aa2e6d16e99ee967 RMD160 ad2291dd0b705eedf03d1118f9fc42834d24a584 SHA1 50a2714813ae7bcb41a937347a3a8745a62c59b9 SHA256 e912d852128d5383ae6e4334d2292883ea55e4428f63f8b0f0fd0c53a012887e SHA512 9dec9bd7f196a218d0a43a6b9963ffb875a61700b19c1bac06ee527c476f436e1d2a9892bf8dc4329be036ec3d904e4c0914fab7eaafbdece7c1a514bd3560a7 +SLACK-REQUIRED slack-required 185 MD5 7dcebafb5d84cd0f6d6ce0c5cc67394a RMD160 52a6f50befd3c2bf09aa5571a4efdd4ea5addb17 SHA1 61d182814a762e7ae27484ddec90e57a966b66fa SHA256 ff0e7f71737396019bdd2253a9eaeac02a8d40acb243a72c019667b5231fa6b1 SHA512 72d05f7f925a99e82cad36e84d24c339ad6cf1ede30aaa66d24954e79fd1a41cda8bba4b74e31bee05214e8df96de0c9960fb6d1cdac695040eb172c659ed16c +SLACKBUILD libgnome.SlackBuild 7164 MD5 57d2a669a194dbbb539a3b892337a471 RMD160 b6ed2200aea4d4c95044e023d9d33b1ed471ebc6 SHA1 5ef3abbab5d3287016f2690873dc563b4938bfb5 SHA256 9d6e65cbfb2fc46508a98c5edbe012c6c69aadbf992c56908079562d23c8b32c SHA512 a1e265725990b8b43b6681e6919a5610aee94cedeb8b795ebb4067f8c10d7bbf03ff86ab9a5941cc0fcc50dac39bd1a1d17c8d06c835b072291befdbb8dee393 +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.4.9 (GNU/Linux) + +iQIcBAEBAgAGBQJJyY2PAAoJEEHL93ESzgeimFcQAI36lOt1VFoC5SfOAPaW6N7C +pkupnpwpWexmjWlWH2YRfOfM42cDoYov1Gb2klwiT77HIwuy/E4kYNJHDsfPqHas +OXVKpVTULnlRzKO6onbs0KDh6ISGHS9dsQGTLZ5zb8k50IQYapr/bfGmFOlmprGK +QOO85YYR9fRF5Ah2fSRFf2NV227bHLLf6+3p9wjsec1G24crymlhlRk7WwZqqxj0 +napkgsOr4kPZxKQw/opBB/prEo/FujlHMFiLtyy7TqK5jdK7Tky91J1R1QBBNEn0 +g83JK6Ql8TwAyYnm9MPKt9/Cpdqm2SMYrZXv6SYSbYv4O3vJacT2VVMMpf1x4kC+ +z9Fu2wL+WXChGYYcF5+UDYMaTCtEASi0Y+86oq8Jvy74xLwau5rREqf0a6X3vb2p +GmfUpdPsLike9CLs68JQ3o43Tzxu3+sBxaetjpl6j3FKMuZnboA+xFDD7YwLh+Xt +pF6kcXB3PiXc77dwtKsObGui/yQS/No9JzvOkofhjTgYIecpWlKi71MLQjUAULat +SLblsJYeX2AeTe208yUjpc7i+30w8v8treUVAMYo6csTLGafnS1M8HMjH9e00euD +fX+ortdwQsfTyKXR/uWNXs8uQ5rM26cCLV45/JnwTYFnOtZpDiK0GEIB0MugU2gh +DV7muYshe9UbY784zGlR +=n5JO +-----END PGP SIGNATURE----- diff --git a/gnome/base/libgnome/libgnome.SlackBuild b/gnome/base/libgnome/libgnome.SlackBuild index 07ada2e8..9fed75a7 100644 --- a/gnome/base/libgnome/libgnome.SlackBuild +++ b/gnome/base/libgnome/libgnome.SlackBuild @@ -15,8 +15,9 @@ # 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # # slackbuild for libgnome, by Rudson R. Alves -# requires: glib gnome-vfs libbonobo esound audiofile +# requires: # tested: libgnome-2.22.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:="gnome/base/libgnome"} PREFIX=${PREFIX:=/usr} PKG_WORK="$TMP/$SRC_NAME" CONF_OPTIONS=${CONF_OPTIONS:=""} @@ -47,9 +49,9 @@ NUMJOBS=${NUMJOBS:="-j4"} 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 @@ -85,6 +88,72 @@ if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -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 @@ -152,7 +221,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 |