#!/bin/sh

usage(){
  echo "$0 "'<dist-id> <file list>'
}

if [ -z "$1" ] ; then
  usage; exit 1
fi

if [ -z "$M3DIST" ] ; then
  export M3DIST=/pub/lang/m3/m3dist
fi

if [ -z "$M3BASE" ] ; then
  export M3BASE=/usr/contrib
fi

if [ -z "$M3VERSION" ] ; then
  export M3VERSION='-3.5.1-'
fi

echo 'M3DIST    = ' $M3DIST
echo 'M3BASE    = ' $M3BASE
echo 'M3VERSION = ' $M3VERSION
export M3FILES

while [ ! -z "$1" ] ; do
  case $1 in 
    bin) M3FILES=m3bin.files; M3TAR=m3${M3VERSION}bin.tgz
      ;;
    lib) M3FILES=m3lib.files; M3TAR=m3${M3VERSION}lib.tgz
      ;;
    x) M3FILES=m3x.files; M3TAR=m3${M3VERSION}x.tgz
      ;;
    forms) M3FILES=m3forms.files; M3TAR=m3${M3VERSION}forms.tgz
      ;;
    utils) M3FILES=m3utils.files; M3TAR=m3${M3VERSION}utils.tgz
      ;;
    netobj) M3FILES=m3netobj.files; M3TAR=m3${M3VERSION}netobj.tgz
      ;;
    *)
      echo "unknown distribution: $1"
      exit 2
  esac

  if [ -r ${M3FILES} ] ; then
    M3FILES=`pwd`/${M3FILES}
  else
    if [ -r ${M3DIST}/${M3FILES} ] ; then
      M3FILES=${M3DIST}/${M3FILES}
    else
      echo "cannot find list of files for distribution $1..."
      shift
      continue
    fi
  fi
  echo "reading files list from ${M3FILES}"

  ACT=`pwd`
  cd ${M3BASE}
  echo tar -czf ${M3DIST}/${M3TAR} -T ${M3FILES}
  tar -czf ${M3DIST}/${M3TAR} -T ${M3FILES}
  cd ${ACT}
  shift
done

