#! /bin/sh
# a script that packs all files necessary to compile the code
# generated by FormCalc into a self-extracting archive for
# easy distribution to other people
# this file is part of FormCalc
# last modified 9 Feb 06 th


# the archive's name will be NAME.sfx, where NAME is the present
# directory's name, or $1 if a command-line argument is given

sfx=${1:-`basename \`pwd\``}
sfx=`dirname $sfx`/`basename $sfx .sfx`.sfx

files=""
for file in * */* */*/* */*/*/* ; do
  case $file in
  *.[aod] | */[0-9][0-9][0-9][0-9][0-9][0-9][0-9] | *.sfx ) ;;
  *) [ -d $file -o -f $file.d -o -f $file.in ] || files="$files $file" ;;
  esac
done

(
cat << \_EOF_
#! /bin/sh
# this is a self-extracting archive,
# it is supposed to be invoked from the shell prompt
case "$1" in
t|-t) dir=. ;;
x|-x) dir=${2:-`basename $0 .sfx`}
      [ -d $dir ] || mkdir $dir || exit 1 ;;
*)    echo "Usage:"
      echo "$0 t      -- list files in $0"
      echo "$0 x      -- extract files into subdirectory `basename $0 .sfx`"
      echo "$0 x dir  -- extract files into subdirectory dir"
      exit 1
esac
trap "rm -f sfx-extract.tar.gz" 0 1 2 3 15
uudecode $0
gunzip -c sfx-extract.tar.gz | (cd $dir; tar $1vf -)
exit
_EOF_
tar cf - $files | gzip | uuencode sfx-extract.tar.gz
) > $sfx

chmod 755 $sfx

echo $sfx

