#!/bin/sh

if [ "x$MSYSTEM" = "xmsys" ] ; then
  PATH_SEPARATOR=";"
else
  PATH_SEPARATOR=":"
fi

BASE_DIR=`dirname $0`
TEMP_PREFIX=/tmp/cel-config$$

# Collect executables starting with 'cel-config-' from $CEL and $PATH
# @@@ FIXME: What about $CEL_x_y env vars?
OLD_IFS="$IFS"
IFS=$PATH_SEPARATOR
for p in $CEL$PATH_SEPARATOR$CEL/bin$PATH_SEPARATOR$BASE_DIR$PATH_SEPARATOR$PATH ; do
  if [ -d "$p" ] ; then
    for s in "$p"/cel-config-* ; do
      if [ -x "$s" ] ; then
	echo "$s" >> ${TEMP_PREFIX}_find
      fi
    done
  fi
done
IFS="$OLD_IFS"

if [ ! -e ${TEMP_PREFIX}_find ] ; then
  echo No cel-config-* scripts found
  exit -1
fi

# Reorder for sorting
cat ${TEMP_PREFIX}_find | sed 's!\(.*\)/cel-config-\(.*\)\.\(.*\)!\2:\3:\1!g' >> ${TEMP_PREFIX}_split
# Sort by version number
cat ${TEMP_PREFIX}_split | sort -u -t : -k 1,1nr -k 2,2nr >> ${TEMP_PREFIX}_sorted
# Extract first entry (highest version)
command=`cat ${TEMP_PREFIX}_sorted | head -n 1 | sed 's!\(.*\):\(.*\):\(.*\)!\3/cel-config-\1\.\2!'`
# cleanup
rm ${TEMP_PREFIX}*
# ...and execute.
$command $@


