sbotools2

Maintenance fork of the original sbotools version 2
git clone git://git.server.ky/slackcoder/sbotools2
Log | Files | Refs | README

package_up.sh (1517B)


      1 #!/bin/bash
      2 
      3 PACKAGE="sbotools2"
      4 VERSION=$(grep '^our $VERSION' SBO-Lib/lib/SBO/Lib.pm | grep -Eo '[0-9]+(\.[0-9RC@gita-f]+){0,2}')
      5 FILENAME=$PACKAGE-$VERSION.tar.gz
      6 
      7 echo "Making package for $PACKAGE-$VERSION." \
      8     "Press enter to continue or Ctrl+C to abort."
      9 read
     10 
     11 PKG_HOME=`pwd`
     12 
     13 cleanup() {
     14 	if [[ "$1" != "" ]]; then
     15 		rm -rf $1
     16 	fi
     17 }
     18 
     19 update_info() {
     20     FILE=$1
     21     MD5=$(md5sum $PKG_HOME/$FILENAME | cut -d' ' -f1)
     22     sed -i -e "s/@FILENAME@/$FILENAME/" $FILE
     23     sed -i -e "s/@VERSION@/$VERSION/" $FILE
     24     sed -i -e "s/@MD5@/$MD5/" $FILE
     25 }
     26 
     27 TMP_DIR=$(mktemp -d /tmp/$PACKAGE.XXXXXXXXXXXX)
     28 PKG_DIR="$TMP_DIR/$PACKAGE-$VERSION"
     29 SBO_DIR="$TMP_DIR/$PACKAGE"
     30 mkdir "$PKG_DIR"
     31 mkdir "$SBO_DIR"
     32 
     33 find "$PKG_HOME" -maxdepth 1 | while read f
     34 do
     35 	cp -R "$f" "$PKG_DIR"
     36 done
     37 
     38 for remove in t tools README.md TODO; do
     39 	if [[ -e $PKG_DIR/$remove ]]; then
     40 		rm -rf $PKG_DIR/$remove
     41 	fi
     42 done
     43 if [[ -d $PKG_DIR/slackbuild/$PACKAGE ]]; then
     44 	if [[ -f $PKG_DIR/slackbuild/$PACKAGE/README ]]; then
     45 		cp $PKG_DIR/slackbuild/$PACKAGE/README $PKG_DIR/
     46 	fi
     47 	mv $PKG_DIR/slackbuild/$PACKAGE/* $SBO_DIR
     48 	rm -rf $PKG_DIR/slackbuild
     49 fi
     50 
     51 
     52 find "$TMP_DIR" -type f -name \*~ -exec rm {} \;
     53 
     54 (cd "$TMP_DIR"
     55 	tar cvzf $FILENAME $PACKAGE-$VERSION/
     56 	cp $FILENAME $PKG_HOME
     57 )
     58 (cd "$TMP_DIR"
     59     update_info "$PACKAGE/$PACKAGE.info"
     60     update_info "$PACKAGE/$PACKAGE.SlackBuild"
     61     grep VERSION "$PACKAGE/$PACKAGE.SlackBuild"
     62     tar cjf $PACKAGE.tar.bz2 $PACKAGE/
     63 )
     64 mv "$TMP_DIR/$PACKAGE.tar.bz2" "$PKG_HOME"
     65 
     66 cleanup "$TMP_DIR"
     67 exit 0