#!/bin/sh -f

makeAbsolute() {
    case $1 in
        /*)
            # already absolute, return it
            echo "$1"
            ;;
        *)
            # relative, prepend $2 made absolute
            echo `makeAbsolute "$2" "$PWD"`/"$1" | sed 's,/\.$,,'
            ;;
    esac
}

me=`which "$0"` # Search $PATH if necessary
# if it's a symbolic link, get path of destination
if test -L "$me"; then
    # Try readlink(1)
    readlink=`type readlink 2>/dev/null` || readlink=
    if test -n "$readlink"; then
        # We have readlink(1), so we can use it. Assuming GNU readlink (for -f).
        me=`readlink -nf "$me"`
    else
        # No readlink(1), so let's try ls -l
        me=`ls -l "$me" | sed 's/^.*-> //'`
        base=`dirname "$me"`
        me=`makeAbsolute "$me" "$base"`
    fi
else
    #base=`dirname "$me"`
    base=""
    me=`makeAbsolute "$me" "$base"`
fi
# macOS does not like to have // in the middle of the path
me=`echo "$me" | sed -e "s/\/\//\//g"`

export BASEDIR="$(dirname "$me")"


# export PYTHONHOME=$BASEDIR
export PYTHON_VERSION=3.12


# add dynamic libraries path
ADD_LD_LIBRARY_PATH=$BASEDIR/x64/lib
my_system=$(uname -s)
if [ "$my_system" = "Linux" ]; then
    export OLD_LD_LIBRARY_PATH="$LD_LIBRARY_PATH"
    if [ "$LD_LIBRARY_PATH" != "" ]; then
        export LD_LIBRARY_PATH="$ADD_LD_LIBRARY_PATH":"$LD_LIBRARY_PATH"
    else
        export LD_LIBRARY_PATH="$ADD_LD_LIBRARY_PATH"
    fi
elif [ "$my_system" = "Darwin" ]; then
    export OLD_DYLD_FALLBACK_LIBRARY_PATH=$DYLD_FALLBACK_LIBRARY_PATH
    export OLD_DYLIB_LIBRARY_PATH=$DYLIB_LIBRARY_PATH
    if [ "$DYLD_FALLBACK_LIBRARY_PATH" != "" ]; then
        export DYLD_FALLBACK_LIBRARY_PATH=$ADD_LD_LIBRARY_PATH:$DYLD_FALLBACK_LIBRARY_PATH
    else
        export DYLD_FALLBACK_LIBRARY_PATH=$ADD_LD_LIBRARY_PATH
    fi
    if [ "$DYLIB_LIBRARY_PATH" != "" ]; then
        export DYLIB_LIBRARY_PATH=$ADD_LD_LIBRARY_PATH:$DYLIB_LIBRARY_PATH
    else
        export DYLIB_LIBRARY_PATH=$ADD_LD_LIBRARY_PATH
    fi
else
    echo "Unknown system $my_system"
fi



export PYTHONPATH=$BASEDIR/lib:$BASEDIR/lib/site-packages:$BASEDIR/lib/python$PYTHON_VERSION:$BASEDIR/lib/python$PYTHON_VERSION/site-packages:$BASEDIR/x64/lib:$BASEDIR/x64/lib/python$PYTHON_VERSION:$BASEDIR/x64/lib/python$PYTHON_VERSION/site-packages

# ( IFS=:
#   for p in $PYTHONPATH; do
#       echo $p
#   done
# )

# GiD: TCL_LIBRARY to allow import tohil
export TCL_LIBRARY=$BASEDIR/../../tcl
export TK_LIBRARY=$BASEDIR/../../tk
"$BASEDIR/x64/bin/python3" "$@"
