#!/bin/sh

# Set and export environment variables
PATH=/usr/gnu/bin:/usr/ccs/bin:/usr/local/bin:/opt/bin:/sbin:/usr/sbin:/usr/X/bin:/bin:/etc:/usr/bin:/usr/java/bin:/usr/ucb
export PATH
REL=5.0.19
VER=mysql-$REL
CC=cc
CXX=CC
NM=/usr/ccs/bin/nm
AR=/usr/ccs/bin/ar
RANLIB=true
STRIP=/usr/ccs/bin/strip
CFLAGS="-Xa -D_FILE_OFFSET_BITS=64 -Dasm=__asm -DANSICPP -O3 -Kthread -Kalloca"
CXXFLAGS="-D_FILE_OFFSET_BITS=64 -Dasm=__asm -DANSICPP -O3 -Kthread -Kalloca"
CXXLDFLAGS=-lcrypt 
INSTALL=/usr/ucb/install
MAKE=/usr/gnu/bin/make
export CC CXX CFLAGS CXXFLAGS CXXLDFLAGS NM AR RANLIB STRIP INSTALL MAKE
LIBTOOL=/usr/local/bin/libtool
export LIBTOOL
MYSQL_BUILD_CC=cc
MYSQL_BUILD_CXX=CC
MYSQL_BUILD_CFLAGS="-Xa -D_FILE_OFFSET_BITS=64 -Dasm=__asm -DANSICPP -O3 -Kthread -Kalloca"
MYSQL_BUILD_CXXFLAGS="-D_FILE_OFFSET_BITS=64 -Dasm=__asm -DANSICPP -O3 -Kthread -Kalloca"
export MYSQL_BUILD_CC MYSQL_BUILD_CXX MYSQL_BUILD_CFLAGS MYSQL_BUILD_CXXFLAGS

# These were set automatically by rpm
libdir=/usr/lib
sysconfdir=/etc
datadir=/usr/share
includedir=/usr/include
mandir=/usr/man

RBR=/var/tmp/$VER-root
TOP=/usr/src/sco
SQL=$TOP/mysql5
MBD=$TOP/BUILD/$VER
DOC=$RBR/usr/share/doc/packages/MySQL-server-$REL
PCH=$SQL/mysql-$REL-uw7.patch

# Change directory to build root and extract source
[ -d $TOP/BUILD ] || mkdir -p $TOP/BUILD
cd $TOP/BUILD
rm -rf $VER
#uncompress -c $SQL/$VER-uw7-src.tar.Z | tar xf -
gzcat $SQL/$VER.tar.gz | tar xf -
cd $VER
rm -rf $RBR
[ -f $PCH ] && {
  patch -p0 -b -i $PCH || {
    echo "Patch $PCH failed. Exiting."
    exit 1
  }
}

[ "$1" = "-prep" ] && exit 0

# Run autoconf system
#aclocal
#autoconf
#automake
mkdir -p $RBR/usr/lib/mysql

# Run configure
./configure	\
		--enable-shared             				\
		--enable-largefile             				\
		--with-big-tables             				\
		--with-berkeley-db=./bdb				\
		--with-vio						\
		--with-innodb             				\
		--with-embedded-server 	    				\
		--disable-assembler 	    				\
		--enable-local-infile             			\
		--with-mysqld-user=mysql             			\
		--with-unix-socket-path=/var/lib/mysql/mysql.sock       \
		--prefix=/ 	    					\
		--with-extra-charsets=complex             		\
		--exec-prefix=/usr             				\
		--libexecdir=/usr/sbin             			\
		--libdir=/usr/lib             				\
		--sysconfdir=/etc             				\
		--datadir=/usr/share             			\
		--localstatedir=/var/lib/mysql             		\
		--infodir=/usr/gnu/info             			\
		--includedir=/usr/include             			\
		--mandir=/usr/man 	    				\
		--enable-thread-safe-client             		\
		--with-openssl             				\
		--with-openssl-includes=/usr/include             	\
		--with-openssl-libs=/usr/lib             		\
		--program-prefix=""             			\
		--with-comment="MySQL for SCO UnixWare 7" 	    	\
		--with-readline 2>&1 | tee mout-configure
	    # Add this for more debugging support
	    # --with-debug
touch Docs/manual.txt Docs/mysql.info Docs/manual.html

[ "$1" = "-configure" ] && exit 0

# Compile MySQL
$MAKE benchdir_root=$RBR/usr/share/ 2>&1 | tee mout

# Install in /var/tmp/...

# Install embedded server library in the build root
$INSTALL -m 644 libmysqld/libmysqld.a $RBR$libdir/mysql/

# Create symbol list
$NM -n sql/mysqld > sql/mysqld.sym

# Ensure that needed directories exists
$INSTALL -d $RBR$sysconfdir/logrotate.d
$INSTALL -d $RBR$sysconfdir/init.d
$INSTALL -d $RBR/var/lib/mysql/mysql
$INSTALL -d $RBR$datadir/sql-bench
$INSTALL -d $RBR$datadir/mysql-test
$INSTALL -d $RBR$includedir
$INSTALL -d $RBR$libdir
$INSTALL -d $RBR$mandir
$INSTALL -d $RBR$sbindir

# Install all binaries stripped 
$MAKE install-strip DESTDIR=$RBR benchdir_root=$datadir 2>&1 | tee mout-install

$INSTALL -m 644 $MBD/sql/mysqld.sym $RBR$libdir/mysql/mysqld.sym

$INSTALL -m 755 $MBD/support-files/mysql.server $RBR$sysconfdir/init.d/mysql

[ -d $DOC ] || mkdir -p $DOC
cp COPYING ChangeLog EXCEPTIONS-CLIENT README $DOC
cp Docs/manual* support-files/*.cnf $DOC

# Touch the place where the my.cnf config file might be located
# Just to make sure it's in the file list and marked as a config file
[ -d $RBR$sysconfdir ] || mkdir -p $RBR$sysconfdir
touch $RBR$sysconfdir/my.cnf

# Archive the dist tree
cd $RBR
find * -depth -print | cpio -oc | compress > $SQL/$VER-dist.cpio.Z
