X-Git-Url: https://git.distorted.org.uk/~mdw/mdw-cross/blobdiff_plain/b6a56709f8b0d731eb21b298cb3183bba98f4cfc..f96afdc7a1599a53e59b22059b0d9e9edda4e950:/src/cross.in diff --git a/src/cross.in b/src/cross.in new file mode 100644 index 0000000..f482d28 --- /dev/null +++ b/src/cross.in @@ -0,0 +1,50 @@ +#! /bin/sh -e + +case $# in + 0) echo 2>&1 "usage: ${0##*/} ENV [CMD [ARGS ...]]"; exit 2 ;; +esac +env=$1; shift +case $# in + 0) set -- "$SHELL" ;; +esac + +: ${CROSSDIR=@crossdir@}; export CROSSDIR + +if ! [ -f "$CROSSDIR/etc/$env-setup.sh" ]; then + echo 2>&1 "${0##*/}: cross environment \`$env' unknown"; exit 2 +fi + +p=$PATH CROSS_COMPILER_PREFIX="" +while :; do + case $p in + "") break ;; + *:*) d=${p%%:*} p=${p#*:} ;; + *) d=$p p="" ;; + esac + if [ -e "$d/ccache" ]; then CROSS_COMPILER_PREFIX="ccache "; break; fi +done +export CROSS_COMPILER_PREFIX + +CROSS_BUILDENV=$env; export CROSS_BUILDENV + +if [ -f "$CROSSDIR/etc/$env-config.site" ] +then CONFIG_SITE=$CROSSDIR/etc/$env-config.site +else CONFIG_SITE=$CROSSDIR/etc/common-cross-config.site +fi +export CONFIG_SITE + +CROSS_PREFIX=$CROSSDIR/inst.$env; export CROSS_PREFIX +. "$CROSSDIR/etc/$env-setup.sh" + +case ${CROSS_ARCH+t} in + t) ;; + *) echo 2>&1 "${0##*/}: setup script didn't set \`CROSS_ARCH'"; exit 2 ;; +esac +export CROSS_ARCH + +case :$PATH: in + *:"$CROSSDIR/tools:"*) ;; + *) PATH=$CROSSDIR/tools:$PATH ;; +esac + +exec "$@"