openjpeg/src/bin/fltk/flviewer/CMake/defs.cmake

125 lines
3.1 KiB
CMake

#
INCLUDE(${CMAKE_ROOT}/Modules/CheckFunctionExists.cmake)
CHECK_FUNCTION_EXISTS(_fseeki64 HAVE_FSEEKI64)
CHECK_FUNCTION_EXISTS(fseeko HAVE_FSEEKO)
#
INCLUDE(${CMAKE_ROOT}/Modules/CheckTypeSize.cmake)
#
CHECK_TYPE_SIZE("ptrdiff_t" PTRDIFF_HAS_SIZE)
IF(PTRDIFF_HAS_SIZE)
SET(PTRDIFF_S "#define PTRDIFF_T ptrdiff_t")
IF(UNIX)
SET(PTRDIFF_FORMAT_S "#define PTRDIFF_FORMAT \"%ld\"")
ELSE()
IF(PTRDIFF_HAS_SIZE EQUAL 8)
SET(PTRDIFF_FORMAT_S "#define PTRDIFF_FORMAT \"%I64d\"")
ELSE()
SET(PTRDIFF_FORMAT_S "#define PTRDIFF_FORMAT \"%ld\"")
ENDIF()
ENDIF()
ELSE()
SET(PTRDIFF_S "/* #undef PTRDIFF_T */")
SET(PTRDIFF_FORMAT_S "/* #undef PTRDIFF_FORMAT */")
ENDIF()
#
CHECK_TYPE_SIZE("size_t" SIZE_T_HAS_SIZE)
IF(SIZE_T_HAS_SIZE)
SET(SIZE_T_S "size_t")
ENDIF()
#
IF(UNIX)
CHECK_TYPE_SIZE("int64_t" INT64_HAS_SIZE)
IF(INT64_HAS_SIZE EQUAL 8)
SET(INT64_S "int64_t")
SET(INT64_FORMAT_S "\"%ld\"")
ENDIF()
CHECK_TYPE_SIZE("uint64_t" UINT64_HAS_SIZE)
IF(UINT64_HAS_SIZE EQUAL 8)
SET(UINT64_S "uint64_t")
SET(UINT64_FORMAT_S "\"%lu\"")
ENDIF()
ELSE()
CHECK_TYPE_SIZE("signed __int64" INT64_HAS_SIZE)
IF(INT64_HAS_SIZE EQUAL 8)
SET(INT64_S "signed __int64")
SET(INT64_FORMAT_S "\"%I64d\"")
ENDIF()
CHECK_TYPE_SIZE("unsigned __int64" UINT64_HAS_SIZE)
IF(UINT64_HAS_SIZE EQUAL 8)
SET(UINT64_S "unsigned __int64")
SET(UINT64_FORMAT_S "\"%I64u\"")
ENDIF()
ENDIF()
#
IF(INT64_HAS_SIZE LESS 8)
CHECK_TYPE_SIZE("signed long" INT64_HAS_SIZE)
IF(INT64_HAS_SIZE EQUAL 8)
SET(INT64_S "signed long")
SET(INT64_FORMAT_S "\"%ld\"")
ENDIF()
ENDIF()
#
IF(UINT64_HAS_SIZE LESS 8)
CHECK_TYPE_SIZE("unsigned long" UINT64_HAS_SIZE)
IF(UINT64_HAS_SIZE EQUAL 8)
SET(UINT64_S "unsigned long")
SET(UINT64_FORMAT_S "\"%lu\"")
ENDIF()
ENDIF()
#
IF(INT64_HAS_SIZE LESS 8)
IF(UNIX)
CHECK_TYPE_SIZE("signed long long" LONG_LONG_HAS_SIZE)
IF(LONG_LONG_HAS_SIZE EQUAL 8)
SET(INT64_S "signed long long")
SET(INT64_FORMAT_S "\"%lld\"")
SET(INT64_HAS_SIZE 8)
ENDIF()
ELSE()
CHECK_TYPE_SIZE("signed long long" LONG_LONG_HAS_SIZE)
IF(LONG_LONG_HAS_SIZE EQUAL 8)
SET(INT64_S "signed long long")
SET(INT64_FORMAT_S "\"%I64d\"")
SET(INT64_HAS_SIZE 8)
ENDIF()
ENDIF()
ENDIF()
#
IF(UINT64_HAS_SIZE LESS 8)
IF(UNIX)
CHECK_TYPE_SIZE("unsigned long long" ULONG_LONG_HAS_SIZE)
IF(ULONG_LONG_HAS_SIZE EQUAL 8)
SET(UINT64_S "unsigned long long")
SET(UINT64_FORMAT_S "\"%llu\"")
SET(UINT64_HAS_SIZE 8)
ENDIF()
ELSE()
CHECK_TYPE_SIZE("unsigned long long" ULONG_LONG_HAS_SIZE)
IF(ULONG_LONG_HAS_SIZE EQUAL 8)
SET(UINT64_S "unsigned long long")
SET(UINT64_FORMAT_S "\"%I64u\"")
SET(UINT64_HAS_SIZE 8)
ENDIF()
ENDIF()
ENDIF()
#
IF(INT64_HAS_SIZE LESS 8)
CHECK_TYPE_SIZE("signed long" INT64_HAS_SIZE)
IF(INT64_HAS_SIZE)
SET(INT64_S "signed long")
SET(INT64_FORMAT_S "\"%ld\"")
ENDIF()
ENDIF()
#
IF(UINT64_HAS_SIZE LESS 8)
CHECK_TYPE_SIZE("unsigned long" UINT64_HAS_SIZE)
IF(UINT64_HAS_SIZE)
SET(UINT64_S "unsigned long")
SET(UINT64_FORMAT_S "\"%lu\"")
ENDIF()
ENDIF()
#
#MESSAGE(STATUS "INT64_HAS_SIZE => ${INT64_HAS_SIZE}")
#MESSAGE(STATUS "UINT64_HAS_SIZE => ${UINT64_HAS_SIZE}")
#