#! /bin/sh
#############################################################################
# (c) Copyright IBM Corp. 2007 All rights reserved.
#
# The following sample of source code ("Sample") is owned by International
# Business Machines Corporation or one of its subsidiaries ("IBM") and is
# copyrighted and licensed, not sold. You may use, copy, modify, and
# distribute the Sample in any form without payment to IBM, for the purpose of
# assisting you in the development of your applications.
#
# The Sample code is provided to you on an "AS IS" basis, without warranty of
# any kind. IBM HEREBY EXPRESSLY DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR
# IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. Some jurisdictions do
# not allow for the exclusion or limitation of implied warranties, so the above
# limitations or exclusions may not apply to you. IBM shall not be liable for
# any damages you suffer as a result of using, copying, modifying or
# distributing the Sample, even if IBM has been advised of the possibility of
# such damages.
#############################################################################
# SCRIPT: bldmc
# Builds Solaris C++ multi-connection applications
# Requires a second database: <alias2>. Suggested name: sample2
# Also requires 3 program source files: <prog_name> and <prog_name1> to be
# bound to the first database; <prog_name2> to be bound to the second database.
if (test $# -lt 3)
then
echo "Usage: bldmc <prog_name> <alias1> <alias2> [ <uid1> <pwd1> <uid2> <pwd2> ]"
exit
fi
# Set DB2PATH to where DB2 will be accessed.
# The default is the standard instance path.
DB2PATH=$HOME/sqllib
bitwidth=64
# Uncomment the following line to compile 32-bit applications
#bitwidth=32
arch=`uname -p`
if [ $arch = "i386" ];
then
if [ $bitwidth = "64" ];
then
CFLAG_ARCH=amd64
LIB=lib64
else
CFLAG_ARCH=sse2
LIB=lib32
fi
else
if [ $bitwidth = "64" ];
then
CFLAG_ARCH=v9
LIB=lib64
else
CFLAG_ARCH=v8plusa
LIB=lib32
fi
fi
# Set the runtime path.
# LD_LIBRARY_PATH will be followed instead of the runtime path unless
# you unset LD_LIBRARY_PATH first to allow the runtime path to be used.
EXTRA_LFLAG="-R$DB2PATH/$LIB"
# Precompile and bind the program files
./embprep $1 $2 $4 $5
./embprep $11 $2 $4 $5
./embprep $12 $3 $6 $7
# Compile the utilemb error-checking utility.
CC -xarch=$CFLAG_ARCH -I$DB2PATH/include -c utilemb.C
# Compile the program files.
CC -xarch=$CFLAG_ARCH -I$DB2PATH/include -c $1.C $11.C $12.C
# Link the program with utilemb.o
CC -xarch=$CFLAG_ARCH -mt -o $1 $1.o $11.o $12.o utilemb.o \
-L$DB2PATH/$LIB $EXTRA_LFLAG -ldb2