ENH: add compiler id for IAR compiler (http://www.iar.com/)

ENH: don't run endian test again if the variable is already set

Alex
This commit is contained in:
Alexander Neundorf 2007-05-24 08:33:05 -04:00
parent 1835c327ff
commit e10e3bc86e
3 changed files with 9 additions and 0 deletions

View File

@ -33,6 +33,10 @@
#elif defined(_MSC_VER)
# define COMPILER_ID "MSVC"
/*IAR Systems compiler for embedded systems, beside this id not yet supported*/
#elif defined(__IAR_SYSTEMS_ICC__)
# define COMPILER_ID "IAR"
#elif defined(_COMPILER_VERSION)
# define COMPILER_ID "MIPSpro"

View File

@ -97,6 +97,7 @@ ENDIF (NOT _CMAKE_TOOLCHAIN_PREFIX)
# if we have a MS cross compiler, it usually has a suffix, like
# e.g. clarm.exe or clmips.exe. Use this suffix for the CXX compiler too.
# the same is true e.g. for the IAR cross compiler, which is "icc<suffix>"
IF (NOT _CMAKE_TOOLCHAIN_SUFFIX)
GET_FILENAME_COMPONENT(COMPILER_BASENAME "${CMAKE_C_COMPILER}" NAME)
IF (COMPILER_BASENAME MATCHES "^cl(.+)\\.exe$")

View File

@ -5,6 +5,8 @@
#
MACRO(TEST_BIG_ENDIAN VARIABLE)
SET(CMAKE_ALLOW_UNKNOWN_VARIABLE_READ_ACCESS 1)
IF(NOT DEFINED ${VARIABLE})
IF("HAVE_${VARIABLE}" MATCHES "^HAVE_${VARIABLE}$")
TRY_RUN(${VARIABLE} HAVE_${VARIABLE}
${CMAKE_BINARY_DIR}
@ -34,4 +36,6 @@ MACRO(TEST_BIG_ENDIAN VARIABLE)
MESSAGE("Check if the system is big endian - failed")
ENDIF(HAVE_${VARIABLE})
ENDIF("HAVE_${VARIABLE}" MATCHES "^HAVE_${VARIABLE}$")
ENDIF(NOT DEFINED ${VARIABLE})
SET(CMAKE_ALLOW_UNKNOWN_VARIABLE_READ_ACCESS)
ENDMACRO(TEST_BIG_ENDIAN)