| 1 | #! /bin/sh -e |
| 2 | |
| 3 | case $# in |
| 4 | 0) echo 2>&1 "usage: ${0##*/} ENV [CMD [ARGS ...]]"; exit 2 ;; |
| 5 | esac |
| 6 | env=$1; shift |
| 7 | case $# in |
| 8 | 0) set -- "$SHELL" ;; |
| 9 | esac |
| 10 | |
| 11 | : ${CROSSDIR=@crossdir@}; export CROSSDIR |
| 12 | |
| 13 | if ! [ -f "$CROSSDIR/etc/$env-setup.sh" ]; then |
| 14 | echo 2>&1 "${0##*/}: cross environment \`$env' unknown"; exit 2 |
| 15 | fi |
| 16 | |
| 17 | if type >/dev/null 2>&1; then CROSS_COMPILER_PREFIX="ccache " |
| 18 | else CROSS_COMPILER_PREFIX= |
| 19 | fi |
| 20 | export CROSS_COMPILER_PREFIX |
| 21 | |
| 22 | CROSS_BUILDENV=$env; export CROSS_BUILDENV |
| 23 | |
| 24 | if [ -f "$CROSSDIR/etc/$env-config.site" ] |
| 25 | then CONFIG_SITE=$CROSSDIR/etc/$env-config.site |
| 26 | else CONFIG_SITE=$CROSSDIR/etc/common-cross-config.site |
| 27 | fi |
| 28 | export CONFIG_SITE |
| 29 | |
| 30 | CROSS_PREFIX=$CROSSDIR/inst.$env; export CROSS_PREFIX |
| 31 | . "$CROSSDIR/etc/$env-setup.sh" |
| 32 | |
| 33 | case ${CROSS_ARCH+t} in |
| 34 | t) ;; |
| 35 | *) echo 2>&1 "${0##*/}: setup script didn't set \`CROSS_ARCH'"; exit 2 ;; |
| 36 | esac |
| 37 | export CROSS_ARCH |
| 38 | |
| 39 | case :$PATH: in |
| 40 | *:"$CROSSDIR/tools:"*) ;; |
| 41 | *) PATH=$CROSSDIR/tools:$PATH ;; |
| 42 | esac |
| 43 | |
| 44 | exec "$@" |