#!/bin/ksh
set -x
domainHome=$1
packageHome=$2
profileDirPath=${packageHome}/etc/profile.d
packageFullName=${packageHome##*/}
packageNameVersion=${packageFullName%_*}
packageName=${packageNameVersion%%_*}
packageVersion=${packageNameVersion##*_}
packageArch=${packageFullName##*_}

cd ${packageHome}

#==== Check dependencies
if [[ x$EC_ARCH = x ]] ; then
    echo "ERROR: EC_ARCH not defined, must provied an ARCH/Compiler"
    exit 1		
fi

version=$(r.${packageName}_all-config --version 2>/dev/null)
if [[ x"$version" != x"${packageVersion}" ]] then
    echo "ERROR: cannot install, missing package all or wrong version: $version"
    exit 1	
fi

if [[ x"$(ls -1 $packageHome/lib/$EC_ARCH/*.a 2>/dev/null)" == x ]] ; then
    echo "ERROR: Must first compile libs for this package"
    exit 1	
fi

#TODO: check for armnlib...
#TODO: check for dependencies (listed in pre-install-dep.txt and $EC_ARCH/pre-install-dep.txt)


#==== Build Abs
exitstatus=0

rcspath=$(r.${packageName}_all-config --rcspath 2>/dev/null)
packageAllHome=$(echo ${rcspath%%:*})
packageAllHome=$(echo ${packageAllHome%/*})

MALIB=malib${EC_ARCH}

BINDIR=${packageHome}/bin
mkdir -p ${BINDIR} 2>/dev/null

cd ${TMPDIR:-/tmp}
chmod -R u+w tmpwkdir$$
/bin/rm -rf tmpwkdir$$
mkdir tmpwkdir$$
cd tmpwkdir$$

#. s.ssmuse.dot $domainHome
ouv_exp base -RCSPATH $rcspath #${packageAllHome}/RCS  ${packageAllHome}/RCS_BASE
r.make_exp
mkdir -p ${MALIB}


#make allbin LIBPATHEXTRA=${packageHome}/lib/${EC_ARCH}
if [[ x${FORCE_RMN_VERSION} == x ]] ; then
   make allbin LIBPATHEXTRA="${packageHome}/lib/${EC_ARCH} ${LIBPATHEXTRA}" BINDIR=$BINDIR
else
   make allbin LIBPATHEXTRA="${packageHome}/lib/${EC_ARCH} ${LIBPATHEXTRA}" RMN_VERSION=${FORCE_RMN_VERSION} BINDIR=$BINDIR
fi
mv *.Abs $BINDIR 2>/dev/null || true

make allbincheck BINDIR=$BINDIR
exitstatus=$?
# for item in gemprnml gemgrid ;do
# 	 isok=$(ls $BINDIR/${item}*.Abs 2>/dev/null)
# 	 [[ x$isok == x ]] && exitstatus=1
# done

exit $exitstatus
