:
#
#
# gennfgt generates nnfgt.o
# usage: gennfgt
# Looks for the existence of the libraries and builds the table file.
# generates .s file for SunOS 5, AIXRIOS, SVR4_386, NCR 
#           .c file for all others
#

if [ "$ORACLE_TRACE" ]; then
  set -x
fi

if [ -z "$TMPDIR" ] ; 
then
  TMPDIR=/tmp

fi

if [ "x$1" = "x-64" ] ; then
        LIB=lib64
else
        LIB=lib
fi

USAGE="usage: $0"

LIBHOME=$ORACLE_HOME/$LIB
TNSLIB=libntns10.a
NISLIB=libnnis10.a
CDSLIB=libncds10.a
LDAPLIB=libnldap10.a
HOSTLIB=libnhost10.a

NATIVELIBS="NISLIB|CDSLIB|LDAPLIB|TNSLIB|HOSTLIB"
  
# Check the existence of each library
for lib in `echo $NATIVELIBS | sed 's/|/ /g'`
do
	eval libname=$`echo $lib`

	eval NNFGUSE$lib=false
	if [ -f $LIBHOME/$libname ]
	then
           eval NNFGUSE$lib=true
	fi           
done

#
# Now begins the big divide between SunOS 5 and the rest of the world...
#
#
# Now begins the big divide between AIXRIOS and the rest of the world...
#
USE_AS=${USE_AS:=false}
if [ "$USE_AS" = "true" ] && [ "$SRCHOME" = "" ]; then
	echo ""
else  # USE_AS

echo '/*'
echo '**'
echo '** This file is GENERATED by gennfgt'
echo '**'
echo '*/
'

echo "#include <sys/types.h>
"
# the following is taken from nnfgt.h and nnfg.h
echo '

struct nnfgtab {

   const char *name_nnfgtab;

   void (*init_nnfgtab)();

   const char *initname_nnfgtab;
   const char *initlib_nnfgtab;

};
typedef struct nnfgtab nnfgtab;
'
if [ "$NNFGUSETNSLIB" = "true" ]
then
echo "void nnftboot();"
fi
if [ "$NNFGUSECDSLIB" = "true" ]
then
echo "void nnfdboot();"
fi
if [ "$NNFGUSENISLIB" = "true" ]
then
echo "void nnfyboot();"
fi
if [ "$NNFGUSEHOSTLIB" = "true" ]
then
echo "void nnfhboot();"
fi
if [ "$NNFGUSELDAPLIB" = "true" ]
then
echo "void nnflboot();"
fi
# the protocol table

echo "const nnfgtab nnfgtable[] = {"

if [ "$NNFGUSETNSLIB" = "true" ]
then
echo '
 { (char *) "TNSNAMES"   , nnftboot, (char *) "_nnftboot", (char *) "nnft" },
'
fi
if [ "$NNFGUSEHOSTLIB" = "true" ]
then
echo '
 { (char *) "HOSTNAME", nnfhboot, (char *) "_nnfhboot", (char *) "nnfh" },
'
echo '
 { (char *) "EZCONNECT", nnfhboot, (char *) "_nnfhboot", (char *) "nnfh" },
'
fi
#Add the CDS adapter
if [ "$NNFGUSECDSLIB" = "true" ]
then
echo '
 { (char *) "DCE"   , nnfdboot, (char *) "_nnfdboot", (char *) "nnfd" },
'
echo '
 { (char *) "CDS"   , nnfdboot, (char *) "_nnfdboot", (char *) "nnfd" },
'
fi
# Add the NIS adapter
if [ "$NNFGUSENISLIB" = "true" ]
then
echo '
 { (char *) "NIS"   , nnfyboot, (char *) "_nnfyboot", (char *) "nnfy" },
'
fi
#Add LDAP Adapter
if [ "$NNFGUSELDAPLIB" = "true" ]
then
echo '
 { (char *) "LDAP"   , nnflboot, (char *) "_nnflboot", (char *) "nnfl" },
'
fi

echo ' { (char *) 0       , 0      , (char *) 0         , (char *) 0      }'
echo '};'

echo '/*'
echo '** no. of adapter table entries'
echo '*/
'
echo '

const int nnfgtent = sizeof(nnfgtable)/sizeof(nnfgtable[0]) - 1;

'

fi  # USE_AS
