diff options
Diffstat (limited to 'Modules/CheckSizeOf.cmake')
-rw-r--r-- | Modules/CheckSizeOf.cmake | 43 |
1 files changed, 24 insertions, 19 deletions
diff --git a/Modules/CheckSizeOf.cmake b/Modules/CheckSizeOf.cmake index ddeb350..d375135 100644 --- a/Modules/CheckSizeOf.cmake +++ b/Modules/CheckSizeOf.cmake @@ -7,23 +7,28 @@ # MACRO(CHECK_TYPE_SIZE TYPE VARIABLE) - SET(MACRO_CHECK_TYPE_SIZE_FLAGS -DCHECK_SIZE_OF="${TYPE}") - IF(HAVE_SYS_TYPES_H) - SET(MACRO_CHECK_TYPE_SIZE_FLAGS "${MACRO_CHECK_TYPE_SIZE_FLAGS} -DHAVE_SYS_TYPES_H") - ENDIF(HAVE_SYS_TYPES_H) - IF(HAVE_STDINT_H) - SET(MACRO_CHECK_TYPE_SIZE_FLAGS "${MACRO_CHECK_TYPE_SIZE_FLAGS} -DHAVE_STDINT_H") - ENDIF(HAVE_STDINT_H) - MESSAGE(STATUS "Check size of ${TYPE}") - TRY_RUN(${VARIABLE} HAVE_${VARIABLE} - ${PROJECT_BINARY_DIR} - ${CMAKE_ROOT}/Modules/CheckSizeOf.c - CMAKE_FLAGS -DCOMPILE_DEFINITIONS:STRING=${MACRO_CHECK_TYPE_SIZE_FLAGS} - OUTPUT_VARIABLE OUTPUT) - IF(NOT HAVE_${VARIABLE}) - MESSAGE(STATUS "Error in Check size of ${TYPE}") - WRITE_FILE(${PROJECT_BINARY_DIR}/CMakeError.log - "Determining size of ${TYPE} failed with the following output:\n${OUTPUT}\n" - APPEND) - ENDIF(NOT HAVE_${VARIABLE}) + IF(NOT ${VARIABLE}) + SET(MACRO_CHECK_TYPE_SIZE_FLAGS -DCHECK_SIZE_OF="${TYPE}") + IF(HAVE_SYS_TYPES_H) + SET(MACRO_CHECK_TYPE_SIZE_FLAGS + "${MACRO_CHECK_TYPE_SIZE_FLAGS} -DHAVE_SYS_TYPES_H") + ENDIF(HAVE_SYS_TYPES_H) + IF(HAVE_STDINT_H) + SET(MACRO_CHECK_TYPE_SIZE_FLAGS "${MACRO_CHECK_TYPE_SIZE_FLAGS} -DHAVE_STDINT_H") + ENDIF(HAVE_STDINT_H) + MESSAGE(STATUS "Check size of ${TYPE}") + TRY_RUN(${VARIABLE} HAVE_${VARIABLE} + ${PROJECT_BINARY_DIR} + ${CMAKE_ROOT}/Modules/CheckSizeOf.c + CMAKE_FLAGS -DCOMPILE_DEFINITIONS:STRING=${MACRO_CHECK_TYPE_SIZE_FLAGS} + OUTPUT_VARIABLE OUTPUT) + IF(HAVE_${VARIABLE}) + MESSAGE(STATUS "Check size of ${TYPE} - done") + ELSE(HAVE_${VARIABLE}) + MESSAGE(STATUS "Check size of ${TYPE} - failed") + WRITE_FILE(${PROJECT_BINARY_DIR}/CMakeError.log + "Determining size of ${TYPE} failed with the following output:\n${OUTPUT}\n" + APPEND) + ENDIF(HAVE_${VARIABLE}) + ENDIF(NOT ${VARIABLE}) ENDMACRO(CHECK_TYPE_SIZE) |