#!/bin/sh
###################################################
#
# doc		3.01 
#
# doc $*, generate documentation for all $i
#
# from $i to doc/$i
#
###################################################

MYNAME=`basename $0`
MYDIR=`echo $0 | sed -e s%$MYNAME\$%%` 
INFO=$MYDIR"doc.info"
VERSIE="3.01"
DOCEXE=${DOCEXE:="doc_cxx"}
CONCAT=0

IDS=""

if [ $# = 0 ]; then
  echo "doc $VERSIE"
  echo ""
  echo "   usage: doc [--sql, --cobol, --cxx, --sh --concat] <files>"
  echo "     default -cxx"
  echo ""
  exit
fi

IMP=""

if [ ! -d ./DOC ]; then
  mkdir ./DOC
fi

for d in $*
do
  if [ "$d" = "--sql" ]; then
    DOCEXE="doc_sql"
  elif [ "$d" = "--cobol" ]; then
    DOCEXE="doc_cobol"
  elif [ "$d" = "--cxx" ]; then
    DOCEXE="doc_cxx"
  elif [ "$d" = "--sh" ]; then
    DOCEXE="doc_sh"
  elif [ "$d" = "--concat" ]; then
    CONCAT=1
  else 
    if [ -f $d ]; then
      D=`basename $d`
      echo "$DOCEXE $IMP <$d >./DOC/$D.txt"

      cat $INFO | sed -e s%SOURCE%$d%g -e s%VERSIE%$VERSIE%g >./DOC/$D.txt
      $DOCEXE $IMP <$d >>./DOC/$D.txt

      ID=`grep ^\-id\- ./DOC/$D.txt | sed -e s/-id-//`
      ORDER=`grep ^\-order\- ./DOC/$D.txt | sed -e s%-order-%%`

      if [ ! "$ID" = "" ]; then
        mv ./DOC/$D.txt ./DOC/$ID.$ORDER.txt
        echo $ID >/tmp/$$.ids
      fi
    else 
      echo "Can't find '$d'"
    fi
  fi
done

if [ $CONCAT = 1 ]; then
  IDS=`cat /tmp/$$.ids | sort | uniq`
  for id in $IDS 
  do
    doc_concat $id
  done
fi
rm -f /tmp/$$.ids

