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

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
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$$

ouv_exp base -RCSPATH  $rcspath #${packageAllHome}/RCS
r.make_exp
mkdir -p ${MALIB}

#touch libgemdyn.a
#touch $MALIB/libgemdyn.a

if [[ x${FORCE_RMN_VERSION} == x ]] ; then
  make feseri  LIBPATHEXTRA=${packageHome}/lib/${EC_ARCH} PHYBINDIR=${packageHome}/bin PHYVERSION=$packageVersion
  make prphynml  LIBPATHEXTRA=${packageHome}/lib/${EC_ARCH} PHYBINDIR=${packageHome}/bin PHYVERSION=$packageVersion
else
  make feseri  LIBPATHEXTRA=${packageHome}/lib/${EC_ARCH} PHYBINDIR=${packageHome}/bin PHYVERSION=$packageVersion RMN_VERSION=${FORCE_RMN_VERSION}
  make prphynml  LIBPATHEXTRA=${packageHome}/lib/${EC_ARCH} PHYBINDIR=${packageHome}/bin PHYVERSION=$packageVersion RMN_VERSION=${FORCE_RMN_VERSION}
fi

cd ${packageHome}/bin

exitstatus=0
for item in feseri prphynml ; do 
	 [[ ! -e ${item}_${BASE_ARCH}.Abs ]] && ln -s ${item}_${BASE_ARCH}_${packageVersion}.Abs ${item}_${BASE_ARCH}.Abs
	 [[ ! -x ${item}_${BASE_ARCH}.Abs ]] && exitstatus=1
done

exit $exitstatus

