#!/bin/sh

DetermineFilePath() {
        RC_DIR=/etc/init.d
	DIST_DIR=/usr/src/redhat
        if [ -d /usr/src/packages ]; then
                DIST_DIR=/usr/src/packages
        fi
}


CreateTarBall() {
	MANIFEST=`cat $MANIFESTFILE | egrep "^/"`
	rm -rf $STAGEDIR
	mkdir -p $STAGEDIR
	for ITEM in $MANIFEST; do 
		if [ -f $ITEM ]; then
			mkdir -p $STAGEDIR/`dirname $ITEM`
		        cp -avf $ITEM $STAGEDIR/$ITEM
		fi
		if [ -d $ITEM ]; then
			mkdir -p $STAGEDIR/$ITEM
	         	cp -avf $ITEM/* $STAGEDIR/$ITEM/.
		fi
	done
	if [ -f /etc/hpasmrc ]; then
		mkdir -p $STAGEDIR/etc
		cp -avf /etc/hpasmrc $STAGEDIR/etc
	fi
	cd $DIST_DIR/SOURCES
	tar cvfz $DIST_DIR/SOURCES/hpasm.tar.gz hpasm 
	rm -rf $STAGEDIR
} 

CreateSpecFile() {
	cat $SPECTEMPLATE $MANIFESTFILE > $DIST_DIR/SPECS/$SPECFILE
	if [ -f /etc/hpasmrc ]; then
		echo "/etc/hpasmrc" >> $DIST_DIR/SPECS/$SPECFILE
	fi
}

echo "Setting up hpasm sources for custom RPM"


MANIFESTFILE=/opt/compaq/hpasm/etc/hpasm-manifest.txt
SPECTEMPLATE=/opt/compaq/hpasm/etc/hpasm.txt
SPECFILE=hpasm.spec

DetermineFilePath

STAGEDIR=$DIST_DIR/SOURCES/hpasm

CreateTarBall
CreateSpecFile
#build it
RPMTOOL=`which rpmbuild`
if [ $? -ne 0 ]; then
	RPMTOOL=rpm
fi
$RPMTOOL -ba $DIST_DIR/SPECS/$SPECFILE 

RPMFILE=`ls -1t $DIST_DIR/RPMS/i386/hpasm-*-custom.i386.rpm | head -n 1`
if [ ! -z "$RPMFILE" ]; then
	echo "Custom RPM(s) available: $RPMFILE"
else
	echo "RPM build with $DIST_DIR/SPECS/hpasm.spec failed!"
	exit 1
fi
exit 0
