root/wrappers/wrapper

Revision 48529d19b4635f2a0322af892ee9987261f88943, 1.0 kB (checked in by Paweł Foremski <pjf@asn.pl>, 3 years ago)

--

  • Property mode set to 100755
Line 
1 #!/bin/bash
2 #
3 # Wrapper around toolchain
4 # The place where the fakebox magic takes place
5 #
6
7 # original tool name
8 ME="`basename $0`"
9
10 [ -n "$FB_DEBUG" ] || FB_DEBUG=0
11 [ $FB_DEBUG -ge 1 ] && echo " [FB]  called: $ME $@" >&2
12
13 # hacks
14 [ "$FB_OFF" = "1" ] && exec "/usr/bin/$ME" "$@"
15 [ "$ME" = "strip" ] && exec "$FB_WRAP-$ME" "$@"
16 [ "$ME" = "cc" ] && ME=gcc
17
18 # prefix absolute /usr paths with $FB_TOP
19 for i in "$@"; do
20     i="${i//I\/usr/I$FB_TOP/usr}"
21     i="${i//L\/usr/L$FB_TOP/usr}"
22     args[${#args[@]}]="${i// \/usr/$FB_TOP/usr}"
23 done
24
25 # handle special cases
26 [ "$1" = "-V" ] || case "$ME" in
27     gcc|g++|ld|cpp|cc)
28         if [ "$FB_USE_SYSROOT_OPT" = "1" ]; then
29             args[${#args[@]}]="--sysroot=$FB_ROOTDIR"
30         else
31             args[${#args[@]}]="-I$FB_ROOTDIR/usr/include"
32             args[${#args[@]}]="-L$FB_ROOTDIR/lib"
33             args[${#args[@]}]="-L$FB_ROOTDIR/usr/lib"
34             FB_WRAP_ADD="$FB_WRAP_ADD_GCC_LD"
35         fi
36         ;;
37 esac
38
39 # exec proper tool
40 [ $FB_DEBUG -ge 2 ] && echo " [FB]  result: $FB_WRAP-$ME" "${args[@]}" $FB_WRAP_ADD >&2
41 exec "$FB_WRAP-$ME" "${args[@]}" $FB_WRAP_ADD
Note: See TracBrowser for help on using the browser.