cannam@167: dnl @synopsis AX_COMPILER_VENDOR cannam@167: dnl @summary find the vendor (gnu, intel, etc.) of the C/C++ compiler cannam@167: dnl @category C cannam@167: dnl @category C++ cannam@167: dnl cannam@167: dnl Determine the vendor of the C/C++ compiler, e.g., gnu, intel, ibm, cannam@167: dnl sun, hp, borland, comeau, dec, cray, kai, lcc, metrowerks, sgi, cannam@167: dnl microsoft, watcom, etc. The vendor is returned in the cache variable cannam@167: dnl $ax_cv_c_compiler_vendor for C and $ax_cv_cxx_compiler_vendor for C++. cannam@167: dnl cannam@167: dnl @version 2007-08-01 cannam@167: dnl @license GPLWithACException cannam@167: dnl @author Steven G. Johnson with Matteo Frigo cannam@167: cannam@167: AC_DEFUN([AX_COMPILER_VENDOR], cannam@167: [ cannam@167: AC_CACHE_CHECK([for _AC_LANG compiler vendor], ax_cv_[]_AC_LANG_ABBREV[]_compiler_vendor, cannam@167: [ax_cv_[]_AC_LANG_ABBREV[]_compiler_vendor=unknown cannam@167: # note: don't check for gcc first since some other compilers define __GNUC__ cannam@167: for ventest in intel:__ICC,__ECC,__INTEL_COMPILER ibm:__ibmxl__,__xlc__,__xlC__,__IBMC__,__IBMCPP__ pathscale:__PATHCC__,__PATHSCALE__ clang:__clang__ gnu:__GNUC__ sun:__SUNPRO_C,__SUNPRO_CC hp:__HP_cc,__HP_aCC dec:__DECC,__DECCXX,__DECC_VER,__DECCXX_VER borland:__BORLANDC__,__TURBOC__ comeau:__COMO__ cray:_CRAYC kai:__KCC lcc:__LCC__ metrowerks:__MWERKS__ sgi:__sgi,sgi microsoft:_MSC_VER watcom:__WATCOMC__ portland:__PGI; do cannam@167: vencpp="defined("`echo $ventest | cut -d: -f2 | sed 's/,/) || defined(/g'`")" cannam@167: AC_COMPILE_IFELSE([AC_LANG_PROGRAM(,[ cannam@167: #if !($vencpp) cannam@167: thisisanerror; cannam@167: #endif cannam@167: ])], [ax_cv_]_AC_LANG_ABBREV[_compiler_vendor=`echo $ventest | cut -d: -f1`; break]) cannam@167: done cannam@167: ]) cannam@167: ]) cannam@167: