#!/bin/ksh -x
# Simple script to make a distribution of CONGEN for a single machine type.
# Usage:
# makedist machine-name tar-file-name [gzip-compression-level]

usage()
{
  echo "Usage: makedist machine-name tar-file-name [gzip-compression-level]"
}

if [[ ! ($# -eq 2 || $# -eq 3) ]] ; then
  usage
  exit 1
fi

machine=${1%/}
tarfile=$2
if [[ `echo $tarfile || cut -c1` != '/' ]]
then
   tarfile=`pwd`/$tarfile
fi
echo $tarfile
if [[ $# -eq 3 && $3 = [1-9] ]]
then
  compression=$3
else
  compression=5
fi

if [[ ! -d $machine ]] ; then
  echo "$machine is not a CONGEN machine name."
  exit 1
fi

set -e
workdir="${TMPDIR}/congen.$$/congen"
if [ -r $workdir ]
then
    echo Collision with $workdir
    exit 1
fi

cd $CGROOT
cd $machine
tarcp . $workdir/$machine

cd $CGROOT
if [ -d $workdir/$machine -a -w $workdir/$machine ]
then
    cp README COPYING COPYRIGHT cgdefs.template cgprofile.template cgundef cgunprofile isup setcgplatform matchdir INSTALL makedist update_tree master_machine ${workdir}
    cp install.sh README.install COPYING COPYRIGHT ${workdir}/..
    cp cgdefs ${workdir}/cgdefs.orig
    cp cgprofile ${workdir}/cgprofile.orig
    cd ${workdir}
    set +e
    . ./cgunprofile
    export CGROOT=${workdir}
    export CGPLATFORM=${machine}
    . ${CGROOT}/cgprofile.orig
    cd ${CG}
    make clean
    cd ${CGT}
    make prepare
    find $workdir \( -name "*~*" -o -name "#*" \) -exec  rm -f \{\} \;
    find $workdir -name "foo*" -exec  rm -f \{\} \;
    rm -rf `find $workdir -name "RCS" -type d -print | grep -v 'test/archive/RCS$' `
    if [[ $machine = sgi_r3k_i5.3_c5.3_m1_a32 ]]
    then
	rm -f $workdir/$machine/v2/test/archive/RCS
	tarcp sgi_r4k_i5.3_c5.3_m2_a32/v2/test/archive/RCS $workdir/$machine/v2/test/archive/RCS
    fi
    cd ${CGT}archive
    rcspurge -f RCS/*
    cd ${CGP}
    rm -rf amber src/vax;
    cd ${CGPS}/wrapgen
    rm -f wrapgen.shar wrapgen.tar wrapgen0?
    cd ${CGPS}/fcpp
    rm -f fcpp.shar fcpp.tar fcpp0?
    cd ${CGPS}/mkproto
    rm -f mkproto.shar mkproto.tar mkproto0?
    cd ${CGPS}/flecs
    rm -f flecs.shar flecs.tar 
    cd ${CGPS}/peer
    rm -f igg.peer
    cd ${CGS}
    rm -f congen.a congen
    ln -s ../bin/congen congen
    cd ${CGBIN}
    rm -f ocongen
    cd $workdir/..
    tar cvf congen.tar congen 
    tar cvf - install.sh README.install COPYING COPYRIGHT congen.tar | \
        gzip -c -$compression >$tarfile
    rm -rf $workdir
fi


