#! /bin/sh

staging=${DESTDIR}
prefix="/usr"
exec_prefix="${prefix}"
libdir="${exec_prefix}/lib"
datadir="${datarootdir}"
pkgdatadir="${datadir}/rtai"
includedir="${prefix}/include/rtai"

RTAI_VERSION="3.8.1"
RTAI_PREFIX="${staging}${prefix}"
RTAI_CC="powerpc-linux-gnu-gcc"
RTAI_CXX="powerpc-linux-gnu-g++"
RTAI_TARGET_ARCH="ppc"
RTAI_TARGET_SUBARCH=""
RTAI_CONFIG="${staging}${pkgdatadir}/config-rtai-${RTAI_VERSION}"
RTAI_LINUX_DIR="/usr/src/linux"
RTAI_LINUX_VERSION="2.6.23"
RTAI_KERNEL_CFLAGS="-I.  -I${staging}${includedir}  -I/build/buildd-rtai_3.8.1-4-powerpc-F6T8o0/rtai-3.8.1/debian/linux/arch/ppc -I/build/buildd-rtai_3.8.1-4-powerpc-F6T8o0/rtai-3.8.1/debian/linux/arch/ppc/include/ -I/build/buildd-rtai_3.8.1-4-powerpc-F6T8o0/rtai-3.8.1/debian/linux/arch/ppc/include/asm -D_FORTIFY_SOURCE=0 -msoft-float"
RTAI_KERNEL_CXXFLAGS="-I.  -I${staging}${includedir}  -I/build/buildd-rtai_3.8.1-4-powerpc-F6T8o0/rtai-3.8.1/debian/linux/arch/ppc -I/build/buildd-rtai_3.8.1-4-powerpc-F6T8o0/rtai-3.8.1/debian/linux/arch/ppc/include/ -I/build/buildd-rtai_3.8.1-4-powerpc-F6T8o0/rtai-3.8.1/debian/linux/arch/ppc/include/asm -fno-rtti -fno-exceptions -fno-strength-reduce -pipe -fno-use-cxa-atexit -D_FORTIFY_SOURCE=0 -msoft-float"
RTAI_MODULE_DIR="${staging}${exec_prefix}/modules"
RTAI_LXRT_CFLAGS="-I.  -I${staging}${includedir} -O2 -Wall -Wstrict-prototypes -pipe"
RTAI_LXRT_LDFLAGS="-L${staging}${libdir}  -lpthread"
RTAI_LIBRARY_DIR="${staging}${libdir}"
COMEDI_DIR=""
EFLTK_DIR=""
RTAI_MODULE_EXT=".ko"
RTAI_POSIX_WRAP=" -Wl,--wrap -Wl,timer_create -Wl,--wrap -Wl,timer_delete -Wl,--wrap -Wl,timer_getoverrun -Wl,--wrap -Wl,timer_gettime -Wl,--wrap -Wl,timer_settime -Wl,--wrap -Wl,clock_getres -Wl,--wrap -Wl,clock_gettime -Wl,--wrap -Wl,clock_settime -Wl,--wrap -Wl,clock_nanosleep -Wl,--wrap -Wl,nanosleep -Wl,--wrap -Wl,pthread_barrier_init -Wl,--wrap -Wl,pthread_barrier_destroy -Wl,--wrap -Wl,pthread_barrier_wait -Wl,--wrap -Wl,pthread_barrierattr_init -Wl,--wrap -Wl,pthread_barrierattr_destroy -Wl,--wrap -Wl,pthread_barrierattr_getpshared -Wl,--wrap -Wl,pthread_barrierattr_setpshared -Wl,--wrap -Wl,pthread_cond_init -Wl,--wrap -Wl,pthread_cond_destroy -Wl,--wrap -Wl,pthread_cond_signal -Wl,--wrap -Wl,pthread_cond_broadcast -Wl,--wrap -Wl,pthread_cond_wait -Wl,--wrap -Wl,pthread_cond_timedwait -Wl,--wrap -Wl,pthread_condattr_init -Wl,--wrap -Wl,pthread_condattr_destroy -Wl,--wrap -Wl,pthread_condattr_getpshared -Wl,--wrap -Wl,pthread_condattr_setpshared -Wl,--wrap -Wl,pthread_condattr_getclock -Wl,--wrap -Wl,pthread_condattr_setclock -Wl,--wrap -Wl,pthread_mutex_init -Wl,--wrap -Wl,pthread_mutex_destroy -Wl,--wrap -Wl,pthread_mutex_lock -Wl,--wrap -Wl,pthread_mutex_timedlock -Wl,--wrap -Wl,pthread_mutex_trylock -Wl,--wrap -Wl,pthread_mutex_unlock -Wl,--wrap -Wl,pthread_mutexattr_init -Wl,--wrap -Wl,pthread_mutexattr_destroy -Wl,--wrap -Wl,pthread_mutexattr_getpshared -Wl,--wrap -Wl,pthread_mutexattr_setpshared -Wl,--wrap -Wl,pthread_mutexattr_settype -Wl,--wrap -Wl,pthread_mutexattr_gettype -Wl,--wrap -Wl,pthread_rwlock_init -Wl,--wrap -Wl,pthread_rwlock_destroy -Wl,--wrap -Wl,pthread_rwlock_rdlock -Wl,--wrap -Wl,pthread_rwlock_tryrdlock -Wl,--wrap -Wl,pthread_rwlock_timedrdlock -Wl,--wrap -Wl,pthread_rwlock_wrlock -Wl,--wrap -Wl,pthread_rwlock_trywrlock -Wl,--wrap -Wl,pthread_rwlock_timedwrlock -Wl,--wrap -Wl,pthread_rwlock_unlock -Wl,--wrap -Wl,pthread_rwlockattr_init -Wl,--wrap -Wl,pthread_rwlockattr_destroy -Wl,--wrap -Wl,pthread_rwlockattr_getpshared -Wl,--wrap -Wl,pthread_rwlockattr_setpshared -Wl,--wrap -Wl,pthread_rwlockattr_getkind_np -Wl,--wrap -Wl,pthread_rwlockattr_setkind_np -Wl,--wrap -Wl,pthread_spin_init -Wl,--wrap -Wl,pthread_spin_destroy -Wl,--wrap -Wl,pthread_spin_lock -Wl,--wrap -Wl,pthread_spin_trylock -Wl,--wrap -Wl,pthread_spin_unlock -Wl,--wrap -Wl,sem_open -Wl,--wrap -Wl,sem_close -Wl,--wrap -Wl,sem_unlink -Wl,--wrap -Wl,sem_init -Wl,--wrap -Wl,sem_destroy -Wl,--wrap -Wl,sem_wait -Wl,--wrap -Wl,sem_trywait -Wl,--wrap -Wl,sem_timedwait -Wl,--wrap -Wl,sem_post -Wl,--wrap -Wl,sem_getvalue"

unset prefix exec_prefix libdir datadir pkgdatadir includedir

usage ()
{
cat <<EOF
Usage rtai-config OPTIONS
Options :
        --help
        --version
        --cc
        --cxx
        --arch
        --subarch
        --prefix
        --config
        --module-cflags
        --module-cxxflags
        --module-ext
        --lxrt-cflags
        --lxrt-ldflags
        --linux-dir
        --linux-version
        --module-dir
        --library-dir
        --comedi-dir
        --efltk-dir
        --posix-wrap
EOF
    exit $1
}

if test $# -eq 0; then
    usage 1 1>&2
fi

while test $# -gt 0; do
    case "$1" in
        --version)
            echo $RTAI_VERSION
            ;;
        --cc)
            echo $RTAI_CC
            ;;
        --cxx)
            echo $RTAI_CXX
            ;;
        --arch)
            echo $RTAI_TARGET_ARCH
            ;;
        --subarch)
            echo $RTAI_TARGET_SUBARCH
            ;;
        --prefix)
            echo $RTAI_PREFIX
            ;;
        --datarootdir)
            echo $RTAI_PREFIX
            ;;
        --config)
            echo $RTAI_CONFIG
            ;;
        --mod*-cflags|--kernel-cflags)
            echo $RTAI_KERNEL_CFLAGS
            ;;
        --mod*-ext)
            echo $RTAI_MODULE_EXT
            ;;
        --mod*-cxxflags|--kernel-cxxflags)
            echo $RTAI_KERNEL_CXXFLAGS
            ;;
        --lxrt-cflags|--user-cflags)
            echo $RTAI_LXRT_CFLAGS
            ;;
        --lxrt-ldflags)
            echo $RTAI_LXRT_LDFLAGS
            ;;
        --mod*-dir)
            echo $RTAI_MODULE_DIR
            ;;
        --lib*-dir|--libdir|--user-libdir)
            echo $RTAI_LIBRARY_DIR
            ;;
        --linux-dir|--linux)
            echo $RTAI_LINUX_DIR
            ;;
        --linux-ver*)
            echo $RTAI_LINUX_VERSION
            ;;
        --comedi-dir)
            echo $COMEDI_DIR
            ;;
        --efltk-dir)
            echo $EFLTK_DIR
            ;;
        --posix-wrap)
            echo $RTAI_POSIX_WRAP
            ;;
        *)
         usage 1 1>&2
         ;;
    esac
    shift
done
