#! /bin/sh

SRCDIR=/mit/crypto/src/ssh-1.2.27
PACKAGE=ssh-1.2.27

#set the build dir (DSTDIR) to /var/tmp, unless we're on akom
HOST=`hostname`
if [ $HOST = "a-kind-of-magic" ]; then
    DSTDIR=/mit/crypto/build.tmp/${USER}/builds/${PACKAGE}
    rm -rf $DSTDIR
    mkdir /mit/crypto/build.tmp/${USER}
    mkdir /mit/crypto/build.tmp/${USER}/builds
    mkdir /mit/crypto/build.tmp/${USER}/builds/${PACKAGE}
    cd ${DSTDIR}
    PATH=/afs/sipb/project/gnu/arch/vax_bsd43/bin/:${PATH}
else

    DSTDIR=/var/tmp/${USER}/builds/${PACKAGE}

    # check for SRCDIR
    if [ ! -d ${SRCDIR} ]; then
	    echo "Couldn\'t access ${SRCDIR}"
	    exit 255
    fi


    # make sure dstdir is new
    if [ -d ${DSTDIR} ]; then 
    echo "${DSTDIR} already exists, moving"
	rm -rf ${DSTDIR}.old >> /dev/null
	mv ${DSTDIR} ${DSTDIR}.old
	#exit 255
    fi

    # prepare to configure
    mkdir -p ${DSTDIR} 
    cd ${DSTDIR}
    #rm -f config.cache

fi

MACHTYPE=`machtype`


# set varibles that are static for all platforms
WISH=/afs/sipb.mit.edu/project/tcl/wish
CFLAGS="-I/usr/athena/include/kerberosIV"
OPTS="$OPTS --prefix=/mit/crypto"
OPTS="$OPTS --exec-prefix=/mit/crypto/arch/${ATHENA_SYS}"
OPTS="$OPTS --with-etcdir=/mit/crypto/etc"
OPTS="$OPTS --disable-suid-ssh"
#OPTS="$OPTS --with-rsaref"


# do platform specific stuff
if [ ${MACHTYPE} = "sgi" ]; then
    CC=cc
    export CC   
# OPTS="$OPTS --disable-asm"
fi


# figure out if we want krb5 stuff
attach krb5
if [ -f /usr/athena/include/krb5.h ]; then
    OPTS="$OPTS --with-kerberos5=/usr/athena"
    OPTS="$OPTS --enable-kerberos-tgt-passing"
    echo "krb5: using /usr/athena"
elif [ -f /mit/krb5/arch/${ATHENA_SYS}/include/krb5.h ]; then
    OPTS="$OPTS --with-kerberos5=/mit/krb5/arch/${ATHENA_SYS}"
    OPTS="$OPTS --enable-kerberos-tgt-passing"
    KRB5LOCKER=1
fi

attach gnu
PATH=${PATH}:`athdir /mit/gnu gbin`

echo $OPTS

# run the configure
pwd
/mit/crypto/src/ssh-1.2.26/configure $OPTS


#post configure stuff                
#if [ ${MACHTYPE} = "sgi" ]; then
   # find ./ -type f -exec perl -pi.bak -e 's/n32/o32/g' {} \;
#fi

# fix the make install permissions
find ./ -type f -name Makefile -exec perl -pi.bak -e 's/\-o root//g' {} \;

# fix the damned krb stuff, so it's staticly linked in
if [ ${KRB5LOCKER} ]; then
    echo "fixing the Makefiles staticly link krb5"

    find ./ -type f -name Makefile -exec perl -pi.bak -e '
$KLIBDIR="/mit/krb5/arch/$ENV{ATHENA_SYS}/lib";
s/\-L\/mit\/krb5\/arch\/i386_linux2\/lib//g;
s/\-lgssapi_krb5/$KLIBDIR\/libgssapi_krb5.a/g;
s/\-lkrb5/$KLIBDIR\/libkrb5.a/g;
s/\-lcrypto/$KLIBDIR\/libcrypto.a/g;
s/\-lcom_err/$KLIBDIR\/libcom_err.a/g;
' {} \;
fi



# and now build!
gmake 

