1#!/bin/sh 2 3CDIR=$(dirname $0) 4CNAME=$(basename $0) 5 6# XXX clang needs some special handling 7# 8# it is called only for "cc" and "gcc" and even then it could have been 9# run on c++ files 10# 11if [ "${CCVER}" = "clang" ]; then 12 if [ "${CNAME}" = "cpp" ]; then 13 exec ${CDIR}/../gcc41/cpp "$@" 14 elif [ "${CNAME}" = "c++" -o "${CNAME}" = "g++" ]; then 15 exec ${CDIR}/../gcc41/c++ "$@" 16 elif [ -z $beenhere ]; then 17 export beenhere=1 18 oldargs="$@" 19 export oldargs 20 INCOPT="-nobuiltininc -nostdinc \ 21 -isysroot @@INCPREFIX@@ \ 22 -isystem /usr/include \ 23 -isystem /usr/libdata/gcc41 \ 24 -isystem /usr/include/c++/4.1" 25 elif [ "${CNAME}" = "cc" -o "${CNAME}" = "gcc" ]; then 26 exec ${CDIR}/../gcc41/cc $oldargs 27 fi 28elif [ "${CCVER}" = "clangsvn" ]; then 29 if [ "${CNAME}" = "cpp" ]; then 30 exec ${CDIR}/../gcc41/cpp "$@" 31 else 32 INCOPT="-nobuiltininc -nostdinc \ 33 -isysroot @@INCPREFIX@@ \ 34 -isystem /usr/include \ 35 -isystem /usr/include/c++/4.4" 36 fi 37elif [ "${CCVER}" = "gcc46" ]; then 38 GCC46VER=`gnatc++ -dumpversion` 39 GCC46MAC=`gnatc++ -dumpmachine` 40 INCOPT="-nostdinc \ 41 -isysroot @@INCPREFIX@@ \ 42 -isystem /usr/include \ 43 -isystem /usr/pkg/include/c++/${GCC46VER} \ 44 -isystem /usr/pkg/include/c++/${GCC46VER}/${GCC46MAC}" 45fi 46 47. /etc/defaults/compilers.conf 48[ -f /etc/compilers.conf ] && . /etc/compilers.conf 49 50CUSTOM_CC=`eval echo \$\{${CCVER}_CC\}` 51CUSTOM_CFLAGS=`eval echo \$\{${CCVER}_CFLAGS\}` 52CUSTOM_CXX=`eval echo \$\{${CCVER}_CXX\}` 53CUSTOM_CXXFLAGS=`eval echo \$\{${CCVER}_CXXFLAGS\}` 54CUSTOM_CPP=`eval echo \$\{${CCVER}_CPP\}` 55CUSTOM_CPPFLAGS=`eval echo \$\{${CCVER}_CPPFLAGS\}` 56CUSTOM_VERSION=`eval echo \$\{${CCVER}_VERSION\}` 57 58if [ "${CUSTOM_VERSION}" != "" -a "$1" = "-dumpversion" ]; then 59 echo ${CUSTOM_VERSION} 60elif [ "${CNAME}" = "cc" -o "${CNAME}" = "gcc" ]; then 61 exec ${CUSTOM_CC} ${INCOPT} ${CUSTOM_CFLAGS} "$@" 62elif [ "${CNAME}" = "c++" -o "${CNAME}" = "g++" ]; then 63 exec ${CUSTOM_CXX} ${INCOPT} ${CUSTOM_CXXFLAGS} "$@" 64elif [ "${CNAME}" = "cpp" ]; then 65 exec ${CUSTOM_CPP} ${INCOPT} ${CUSTOM_CPPFLAGS} "$@" 66fi 67