summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2009-11-04 22:17:57 (GMT)
committerBrad King <brad.king@kitware.com>2009-11-04 22:17:57 (GMT)
commit4c6f63a4090e844295c1eed89394c06dfe974863 (patch)
tree1a5942f749e9f785ed775baee705a6b0c0b25414
parentf4b70b632302f8ff0d6d22e91e3bcc46d5bbb7e9 (diff)
downloadCMake-4c6f63a4090e844295c1eed89394c06dfe974863.zip
CMake-4c6f63a4090e844295c1eed89394c06dfe974863.tar.gz
CMake-4c6f63a4090e844295c1eed89394c06dfe974863.tar.bz2
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.
-rw-r--r--Utilities/cmlibarchive/CMakeLists.txt60
1 files changed, 25 insertions, 35 deletions
diff --git a/Utilities/cmlibarchive/CMakeLists.txt b/Utilities/cmlibarchive/CMakeLists.txt
index 4ec3ec7..b049a4e 100644
--- a/Utilities/cmlibarchive/CMakeLists.txt
+++ b/Utilities/cmlibarchive/CMakeLists.txt
@@ -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)