Kconfig!
[coreboot.git] / util / xcompile / xcompile
1
2 for make in make gmake gnumake; do
3         if [ "`$make --version 2>/dev/null | grep -c GNU`" -gt 0 ]; then
4                 MAKE=$make
5                 break
6         fi
7 done
8
9 GCCPREFIX=invalid
10 TMP=`mktemp /tmp/temp.XXXX`
11 echo "mov %eax, %eax" > ${TMP}.s
12 printf "\x7fELF" > ${TMP}.compare
13 for gccprefixes in `pwd`/../crossgcc/xgcc/bin/i386-elf- i386-elf- ""; do
14         if which ${gccprefixes}as 2>/dev/null >/dev/null; then
15                 printf ""
16         else
17                 continue
18         fi
19         rm -f ${TMP}.o
20         if ${gccprefixes}as --32 -o ${TMP}.o ${TMP}.s; then
21                 dd bs=4 count=1 if=${TMP}.o > ${TMP}.test 2>/dev/null
22                 if cmp ${TMP}.test ${TMP}.compare; then
23                         GCCPREFIX=$gccprefixes
24                         break
25                 fi
26         fi
27 done
28 rm -f $TMP ${TMP}.s ${TMP}.o ${TMP}.compare ${TMP}.test
29
30 if [ "$GCCPREFIX" = "invalid" ]; then
31         echo '$(error no suitable gcc found)'
32         exit 1
33 fi
34
35 cat << afteroptions
36 AS:=${GCCPREFIX}as --32
37 CC:=${GCCPREFIX}gcc -m32
38 AR:=${GCCPREFIX}ar
39 LD:=${GCCPREFIX}ld -b elf32-i386
40 STRIP:=${GCCPREFIX}strip
41 NM:=${GCCPREFIX}nm
42 OBJCOPY:=${GCCPREFIX}objcopy
43 OBJDUMP:=${GCCPREFIX}objdump
44 HOSTCC:=gcc
45 afteroptions