# This file is part of the src2pkg program: # Copyright 2005-2008 Gilbert Ashley # src2pkg is released under the GNU General Public License Version 2 ### post_process post_process() { if [[ "$FAILED" = "" ]] ; then # The following produces if [[ $MAKE_REPORT = "YES" ]] ; then echo $BLUE"Creating REPORT: "$NORMAL"$SHORT_NAME.REPORT" REPORT_FILE="$CWD/$SHORT_NAME.REPORT" echo "Build Log for ""$SHORT_NAME" > $REPORT_FILE echo "" >> $REPORT_FILE echo -n "Uncompressed Package Size:" >> $REPORT_FILE echo "$(du $PKG_DIR -ch |grep total |cut -f1)"" bytes" >> $REPORT_FILE echo "TGZ Package Contents:" >> $REPORT_FILE ${TAR_STATIC} -tzf $PKG_DEST_DIR/$PKG_NAME >> $REPORT_FILE echo "" >> $REPORT_FILE echo "Permissions from PKG_DIR:" >> $REPORT_FILE cd $PKG_DIR && ls -lR |grep -v total >> $REPORT_FILE echo "" >> $REPORT_FILE echo "src2pkg script:" >> $REPORT_FILE cat $CWD/$EXEC_NAME >> $REPORT_FILE echo "" >> $REPORT_FILE if [[ -e $PKG_DIR/install/doinst.sh ]] ; then echo "doinst.sh contents:" >> $REPORT_FILE cat $PKG_DIR/install/doinst.sh >> $REPORT_FILE echo "" >> $REPORT_FILE fi # chk_pkg_deps() { echo "Package dependencies:" >> $REPORT_FILE cd $PKG_DIR ; if [[ "$(find . | xargs file | grep ELF | cut -f 1 -d : | xargs ldd | white_out | cut -f1 -d' ')" != "" ]] ; then echo $CYAN"Notice- "$NORMAL"The package depends on the following installed libraries:" >> $REPORT_FILE find . | xargs file | grep ELF | cut -f 1 -d : | xargs ldd | white_out | cut -f1 -d' ' >> $REPORT_FILE fi fi #Create a DATABASE file. This is a replica of what installpkg puts in /var/log/packages when the package is installed if [[ $MAKE_DATABASE = "YES" ]] ; then echo $BLUE"Creating DATABASE: "$NORMAL"$SHORT_NAME.DATABASE" DATABASE_FILE=$CWD/$SHORT_NAME.DATABASE make_database fi # cleanup build files if asked for -trackinstall sets this to PKG but lets be redundant if [[ $CLEANUP ]] ; then [[ $TRACK_INSTALL ]] && CLEANUP="PKG" echo -n $BLUE"Deleting build directories - "$NORMAL if [[ $CLEANUP = "SRC" ]] || [[ $CLEANUP = "ALL" ]] ; then if [[ -d $SRC_DIR ]] ; then echo -n "SRC_DIR " cd $SRC_BUILDS_DIR ; rm -rf $SRC_DIR_NAME fi if [[ -d $OBJ_DIR ]] ; then echo -n "OBJ_DIR " cd $SRC_BUILDS_DIR ; rm -rf $OBJ_DIR_NAME fi fi if [[ $CLEANUP = "PKG" ]] || [[ $CLEANUP = "ALL" ]] ; then if [[ -d $PKG_DIR ]] ; then echo -n "PKG_DIR " cd $PKG_BUILDS_DIR ; rm -rf $PKG_DIR_NAME fi fi echo $GREEN"Done"$NORMAL # clean up temp files in the CWD [ -f $CWD/new.doinst.sh ] && rm -f $CWD/new.doinst.sh [ -f $CWD/new.slack-desc ] && rm -f $CWD/new.slack-desc if ! [ $DONT_CLOBBER_DOT_AUTO ] ; then [ -f $CWD/$NAME.src2pkg.auto ] && rm -f $CWD/$NAME.src2pkg.auto fi fi kill -s TERM ${FAKEROOTPID} &>/dev/null elif [[ $USER_CANCELLED ]] ; then echo $RED"Exiting! "$NORMAL"User cancelled operation." elif [[ $FAILED = "CANCELLED" ]] ; then echo $RED"Exiting! "$NORMAL exit 0 else kill -s TERM ${FAKEROOTPID} &>/dev/null echo $(basename $0) $RED"FAILURE "$NORMAL"in $FAILED" exit 0 fi } # End post_process make_database() { COMPRESSED=$(gzip -l $PACKAGE | grep -v uncompressed_name | white_out | cut -f 1 -d ' ') COMPRESSED="$(expr $COMPRESSED / 1024) K" UNCOMPRESSED=$(gzip -l $PACKAGE | grep -v uncompressed_name | white_out | cut -f 2 -d ' ') UNCOMPRESSED="$(expr $UNCOMPRESSED / 1024) K" echo "PACKAGE NAME: $NAME-$VERSION" > $DATABASE_FILE echo "COMPRESSED PACKAGE SIZE: $COMPRESSED" >> $DATABASE_FILE echo "UNCOMPRESSED PACKAGE SIZE: $UNCOMPRESSED" >> $DATABASE_FILE echo "PACKAGE LOCATION: $PKG_NAME" >> $DATABASE_FILE echo "PACKAGE DESCRIPTION:" >> $DATABASE_FILE cat $PKG_DIR/install/$PKG_DESC | grep -v '#' >> $DATABASE_FILE echo "FILE LIST:" >> $DATABASE_FILE ${TAR_STATIC} -tzf $PACKAGE >> $DATABASE_FILE }