libarchive: Fix integer type defaults for Windows

Most of the integer type defaults needed for MSVC and Borland actually
work with all Windows compilers.  This commit generalizes the defaults
to avoid compiler-specific tests.
This commit is contained in:
Brad King 2009-11-04 17:17:57 -05:00
parent f4b70b6323
commit 4c6f63a409
1 changed files with 25 additions and 35 deletions

View File

@ -477,9 +477,7 @@ CHECK_TYPE_SIZE("unsigned long long int" UNSIGNED_LONG_LONG_INT)
#
CHECK_TYPE_SIZE(dev_t DEV_T)
IF(NOT HAVE_DEV_T)
IF(MSVC OR BORLAND)
SET(dev_t "unsigned int")
ENDIF(MSVC OR BORLAND)
SET(dev_t "unsigned int")
ENDIF(NOT HAVE_DEV_T)
#
CHECK_TYPE_SIZE(gid_t GID_T)
@ -502,25 +500,23 @@ ENDIF(NOT HAVE_ID_T)
#
CHECK_TYPE_SIZE(int64_t INT64_T)
IF(NOT HAVE_INT64_T)
IF(MSVC OR BORLAND)
SET(int64_t __int64)
ENDIF(MSVC OR BORLAND)
IF(WIN32)
SET(int64_t "__int64")
ENDIF(WIN32)
ENDIF(NOT HAVE_INT64_T)
#
CHECK_TYPE_SIZE(intmax_t INTMAX_T)
IF(NOT HAVE_INTMAX_T)
IF(MSVC OR BORLAND)
SET(intmax_t "__int64")
ENDIF(MSVC OR BORLAND)
SET(intmax_t "int64_t")
ENDIF(NOT HAVE_INTMAX_T)
#
CHECK_TYPE_SIZE(mode_t MODE_T)
IF(NOT HAVE_MODE_T)
IF(MSVC OR BORLAND)
IF(WIN32)
SET(mode_t "unsigned short")
ELSE(MSVC OR BORLAND)
ELSE(WIN32)
SET(mode_t "int")
ENDIF(MSVC OR BORLAND)
ENDIF(WIN32)
ENDIF(NOT HAVE_MODE_T)
#
CHECK_TYPE_SIZE(off_t OFF_T)
@ -530,20 +526,20 @@ ENDIF(NOT HAVE_OFF_T)
#
CHECK_TYPE_SIZE(size_t SIZE_T)
IF(NOT HAVE_SIZE_T)
SET(size_t "unsigned int")
IF("${CMAKE_SIZEOF_VOID_P}" EQUAL 8)
SET(size_t "uint64_t")
ELSE("${CMAKE_SIZEOF_VOID_P}" EQUAL 8)
SET(size_t "uint32_t")
ENDIF("${CMAKE_SIZEOF_VOID_P}" EQUAL 8)
ENDIF(NOT HAVE_SIZE_T)
#
CHECK_TYPE_SIZE(ssize_t SSIZE_T)
IF(NOT HAVE_SSIZE_T)
IF(MSVC OR BORLAND)
IF(CMAKE_CL_64)
SET(ssize_t "__int64")
ELSE(CMAKE_CL_64)
SET(ssize_t "signed long")
ENDIF(CMAKE_CL_64)
ELSE(MSVC OR BORLAND)
SET(ssize_t "int")
ENDIF(MSVC OR BORLAND)
IF("${CMAKE_SIZEOF_VOID_P}" EQUAL 8)
SET(ssize_t "int64_t")
ELSE("${CMAKE_SIZEOF_VOID_P}" EQUAL 8)
SET(ssize_t "long")
ENDIF("${CMAKE_SIZEOF_VOID_P}" EQUAL 8)
ENDIF(NOT HAVE_SSIZE_T)
#
CHECK_TYPE_SIZE(uid_t UID_T)
@ -557,36 +553,30 @@ ENDIF(NOT HAVE_UID_T)
#
CHECK_TYPE_SIZE(uint16_t UINT16_T)
IF(NOT HAVE_UINT16_T)
IF(MSVC OR BORLAND)
SET(uint16_t "unsigned short")
ENDIF(MSVC OR BORLAND)
SET(uint16_t "unsigned short")
ENDIF(NOT HAVE_UINT16_T)
#
CHECK_TYPE_SIZE(uint32_t UINT32_T)
IF(NOT HAVE_UINT32_T)
IF(MSVC OR BORLAND)
IF(WIN32)
SET(uint32_t "unsigned int")
ENDIF(MSVC OR BORLAND)
ENDIF(WIN32)
ENDIF(NOT HAVE_UINT32_T)
CHECK_TYPE_SIZE(int32_t INT32_T)
IF(NOT HAVE_INT32_T)
IF(MSVC OR BORLAND)
SET(int32_t "int")
ENDIF(MSVC OR BORLAND)
SET(int32_t "int")
ENDIF(NOT HAVE_INT32_T)
#
CHECK_TYPE_SIZE(uint64_t UINT64_T)
IF(NOT HAVE_UINT64_T)
IF(MSVC OR BORLAND)
IF(WIN32)
SET(uint64_t "unsigned __int64")
ENDIF(MSVC OR BORLAND)
ENDIF(WIN32)
ENDIF(NOT HAVE_UINT64_T)
#
CHECK_TYPE_SIZE(uintmax_t UINTMAX_T)
IF(NOT HAVE_UINTMAX_T)
IF(MSVC OR BORLAND)
SET(uintmax_t "unsigned __int64")
ENDIF(MSVC OR BORLAND)
SET(uintmax_t "uint64_t")
ENDIF(NOT HAVE_UINTMAX_T)
#
CHECK_TYPE_SIZE(intptr_t INTPTR_T)