#!/bin/sh

syntax() {
  echo ''
  echo 'Usage: SUPER-INSTALL <target> <version> [charmc-options ...]'
  echo ''
  echo 'targets: converse, charm++ libs ampi IDL tsm sm pvm sdag'
  echo ''
  echo 'versions: ' 
  echo `( cd src ; ls -1 | egrep -v '(^Common)|(^CVS)|(^QuickThreads)|(^ccs-client)' )`
  echo ''
  echo 'example charmc-options: -g -save -verbose'
  echo ''
  echo ''
  echo 'Note: This script is trivial.  It'
  echo ''
  echo ' 1. Creates directories <version> and <version>/tmp'
  echo ' 2. Copies src/Common/scripts/Makefile into <version>/tmp'
  echo ' 3. Does a "make <target> <version> OPTS=<charmc-options>" in <version>/tmp.'
  echo ''
  echo "That's all SUPER_INSTALL does.  The rest is handled by the Makefile."
  echo ''
  exit 1
}

  [ $# -lt 2 ] && syntax

MAKEOPTS=""
OPTS=""

while [ ! $# -eq 0 ]
do
  case "$1" in
    -*) 
          MAKEOPTS="$MAKEOPTS $1"; shift
	  ;;
    *)
          PROGRAM=$1 ; shift
          VERSION=$1 ; shift
          while [ ! $# -eq 0 ]
          do
            OPTS="$OPTS $1"; shift
	  done
	  ;;
  esac
done

[ "x$VERSION" = "x" ] && syntax
	
( echo $VERSION | egrep -s '^Common' ) && syntax
[ -d src/$VERSION ] || goto syntax

[ -d $VERSION ] || echo "Creating dir: $VERSION" 
[ -d $VERSION ] || mkdir $VERSION
[ -d $VERSION/tmp ] || echo "Creating dir: $VERSION/tmp" 
[ -d $VERSION/tmp ] || mkdir $VERSION/tmp
echo "Copying src/Common/scripts/Makefile to $VERSION/tmp"
rm -f $VERSION/tmp/Makefile
ln -s "../../src/Common/scripts/Makefile" $VERSION/tmp/Makefile
echo "Performing 'make $MAKEOPTS $PROGRAM OPTS="$OPTS"' in $VERSION/tmp"
cd $VERSION/tmp ; make $MAKEOPTS $PROGRAM OPTS="$OPTS"
