1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
|
#
# Check if the system supports 64 bit streams
#
# CHECK_FOR_64BIT_STREAMS - macro which checks the existence of 64 bit streams
# VARIABLE - variable to return result
#
MACRO(CHECK_FOR_64BIT_STREAMS VARIABLE)
IF("${VARIABLE}" MATCHES "^${VARIABLE}$")
SET(MACRO_CHECK_FOR_64BIT_STREAMS_FLAGS ${CMAKE_REQUIRED_FLAGS})
IF(CMAKE_NO_ANSI_STREAM_HEADERS)
SET(MACRO_CHECK_FOR_64BIT_STREAMS_FLAGS
"${MACRO_CHECK_FOR_64BIT_STREAMS_FLAGS} -DNO_ANSI")
ENDIF(CMAKE_NO_ANSI_STREAM_HEADERS)
IF(SIZEOF_LONG_LONG)
SET(MACRO_CHECK_FOR_64BIT_STREAMS_FLAGS
"${MACRO_CHECK_FOR_64BIT_STREAMS_FLAGS} -DSIZEOF_LONG_LONG")
ENDIF(SIZEOF_LONG_LONG)
IF(SIZEOF___INT64)
SET(MACRO_CHECK_FOR_64BIT_STREAMS_FLAGS
"${MACRO_CHECK_FOR_64BIT_STREAMS_FLAGS} -DSIZEOF___INT64")
ENDIF(SIZEOF___INT64)
MESSAGE(STATUS "Check if system supports 64 bit streams")
TRY_COMPILE(${VARIABLE}
${CMAKE_BINARY_DIR}
${Xdmf_SOURCE_DIR}/CMake/CheckFor64BitStreams.cxx
CMAKE_FLAGS
-DCOMPILE_DEFINITIONS:STRING=${MACRO_CHECK_FOR_64BIT_STREAMS_FLAGS}
OUTPUT_VARIABLE OUTPUT)
IF(${VARIABLE})
MESSAGE(STATUS "Check if system supports 64 bit streams - yes")
SET(${VARIABLE} 1 CACHE INTERNAL "Whether streams support 64-bit types")
ELSE(${VARIABLE})
MESSAGE(STATUS "Check if system supports 64 bit streams - no")
SET(${VARIABLE} "" CACHE INTERNAL "Whether streams support 64-bit types")
WRITE_FILE(${CMAKE_BINARY_DIR}/CMakeFiles/CMakeError.log
"Determining if the system supports 64 bit streams "
"failed with the following output:\n"
"${OUTPUT}\n" APPEND)
ENDIF(${VARIABLE})
ENDIF("${VARIABLE}" MATCHES "^${VARIABLE}$")
ENDMACRO(CHECK_FOR_64BIT_STREAMS)
|