
:

# Linken eines ODBC-Anwendungsprogramms mit dem Datenbank-Laufzeitsystem
# -------------------------------------------
# $1 :      Der Name der Datei, die das Hauptprogramm enthaelt, ist $1.o
#           Das lauffaehige Programm wird in die Datei $1 geschrieben.
# $2...$n : Dateien, die mit dem Hauptprogramm gebunden werden sollen.
#           Fuer jeden Parameter $i wird zuerst nach einer Datei $i.o ,
#           dann nach $i.a gesucht. In beiden Faellen kann es sich um
#           sequentielle Objektdateien oder Bibliotheken handeln.
#

if test $# = 0
then echo "Usage: odbclnk [-b|-m] [linkopts] file [file...]"
     exit
fi

LNKVER=`basename $0`
export LNKVER

set -- `getopt A:bD:mD:de:L:l:gMNno:rSsT:tu:VXxy:z $*`

options=


for i
do
   if [ $i = '--' ]
   then
     break
   fi
   if [ $i = "-b" ]
   then
      LNKVER="${LNKVER} -b"
   elif [ $i = "-m" ]
   then
      LNKVER="${LNKVER} -m"
   else
      options=$options' '$1
   fi
   shift
done

shift
LIB=$DBROOT/lib
for i in `echo "$LNKVER"`
do
    case "$i" in
    -b )
	DYN="$i"
	;;
    -m )
	DYN="$i"
	;;
    * )
	LNK="$i"
	;;
    esac
done

# PGM-libary
if [ "$DYN" = "-b" ]
then
   PCSQLDB="$DBROOT/lib/odbclib.so $PCSQLDB"
elif [ "$DYN" = "-m" ]
then
   PCSQLDB="$DBROOT/lib/libiodbc.so $PCSQLDB"
else
   if [ -x $DBROOT/bin/sqllist.rte ]
   then
       PCSQLDB=`$DBROOT/bin/sqllist.rte `
   fi
   PCSQLDB="$DBROOT/lib/odbclib.a $PCSQLDB"
fi

exec=$1
files=''
if   [ -f $1.o ]
then
   main=$1.o
fi

shift

for i
do
   if   [ -f $i.o ]
   then
      files=$files' '$i.o
   elif [ -f $i.a ]
   then
      files=$files' '$i.a
   elif [ -f $i.c ]
   then
      files=$i.c
   else
      files=$files' '$i
   fi
done

if [ -f $exec ] ; then  rm $exec; fi
if [ "$PCSQLDB" ]
then
   if [ `uname -s` = TARGON31 ]
   then
      if [ -f /unix -a ! -f /etc/conf/bin/idinstall ]
      then                        # TOS
         CC=cc
      else                        # SINIX
         CC=m30cc
      fi
   else
      CC=cc
   fi
   echo $CC -o $exec $options $main $files $PCSQLDB
	$CC -o $exec $options $main $files $PCSQLDB
else
   echo use sqllist
fi
echo odbclnk $exec finished
