#!/usr/bin/ksh93

echo "Generating prototype file and package..."

ARCH=`uname -p`
PKG=`sed -n  's/^PKG=\(.*\)/\1/p' pkginfo`
NEWPKGDIR=/tmp/newpkg
TMP_PKGBASE=/tmp/pkgbuild
BASEDIR=/opt/local
LIBDIR=$TMP_PKGBASE/$BASEDIR/lib
BINDIR=$TMP_PKGBASE/$BASEDIR/bin
INCDIR=$TMP_PKGBASE/$BASEDIR/include
MANDIR=$TMP_PKGBASE/$BASEDIR/man
DOCDIR=$TMP_PKGBASE/$BASEDIR/doc
SHAREDIR=$TMP_PKGBASE/$BASEDIR/share

rm -f prototype
rm -rf $NEWPKGDIR $TMP_PKGBASE
mkdir $TMP_PKGBASE $NEWPKGDIR

# INSTALL FILES INTO $TMP_PKGBASE/$NEWPKGDIR

# INSTALL LIBS FIRST
TOPDIR=`pwd`
ginstall -D -m 644 lib/gle/libgle.a $LIBDIR/libgle.a
ginstall -D -m 644 lib/gle/libgle.so.3.7 $LIBDIR/libgle.so.3.7

ginstall -D -m 644 lib/glsmap/libglsmap.a $LIBDIR/libglsmap.a
ginstall -D -m 644 lib/glsmap/libglsmap.so.3.7 $LIBDIR/libglsmap.so.3.7

ginstall -D -m 644 lib/glut/libglut.a $LIBDIR/libglut.a
ginstall -D -m 644 lib/glut/libglut.so.3.7 $LIBDIR/libglut.so.3.7

ginstall -D -m 644 lib/mui/libmui.a $LIBDIR/libmui.a
ginstall -D -m 644 lib/mui/libmui.so.3.7 $LIBDIR/libmui.so.3.7

cd $LIBDIR
ln -s libgle.so.3.7 libgle.so
ln -s libglsmap.so.3.7 libglsmap.so
ln -s libglut.so.3.7 libglut.so
ln -s libmui.so.3.7 libmui.so
cd $TOPDIR

# INSTALL HEADERS
cd include/GL/
for FILE in *; do
	ginstall -D -m 444 $FILE $INCDIR/glut/$FILE
done;

mkdir -p $INCDIR/GL
cd $INCDIR/glut
for FILE in *; do
	ln -sf $FILE $INCDIR/GL/$FILE
done;

cd $TOPDIR
for FILE in include/mui/*; do
	ginstall -D -m 444 $FILE $INCDIR/mui/$FILE
done;

# BUILD PACKAGE
PROTO="i pkginfo";
if [[ -f copyright && -r copyright ]] ; then
	PROTO="$PROTO\ni copyright";
fi

if [[ -f depend && -r depend ]] ; then
	PROTO="$PROTO\ni depend";
fi

if [[ -f compver && -r compver ]] ; then
	PROTO="$PROTO\ni compver";
fi

(echo $PROTO; pkgproto $TMP_PKGBASE/$BASEDIR= )>prototype

pkgmk -o -d $NEWPKGDIR

if [[ $? -ne 0 ]] ; then
	  echo ERROR generating initial package instance
	  exit 1
fi

PKGFILE=${PKG}-${ARCH}.pkg

touch $PKGFILE

pkgtrans -s $NEWPKGDIR $PKGFILE $PKG

if [[ $? -ne 0 ]] ; then
	  echo ERROR generating final package file
	  exit 1
fi

echo "All done! Your new package file is $PKGFILE"

rm -f prototype
rm -rf $NEWPKGDIR $TMP_PKGBASE

