summaryrefslogtreecommitdiffstats
path: root/Utilities/cmliblzma
diff options
context:
space:
mode:
authorChuck Atkins <chuck.atkins@kitware.com>2014-11-03 19:37:12 (GMT)
committerChuck Atkins <chuck.atkins@kitware.com>2014-11-03 19:37:12 (GMT)
commit996f822930b02fbf6f7b1bc2fa21ad52b10ebdcd (patch)
tree51c604821d1594e9b519da860f9a9b86b14ba796 /Utilities/cmliblzma
parent40bab8d17b18ca5e6864bf282326507c59826021 (diff)
downloadCMake-996f822930b02fbf6f7b1bc2fa21ad52b10ebdcd.zip
CMake-996f822930b02fbf6f7b1bc2fa21ad52b10ebdcd.tar.gz
CMake-996f822930b02fbf6f7b1bc2fa21ad52b10ebdcd.tar.bz2
liblzma: fix build on platforms with no SIZE_MAX defined.
Some systems don't define a SIZE_MAX (older versions of HP-UX with aCC). The logic was already in place to account for this condition but SIZEOF_SIZE_T was not getting cmoputed at configure time to allow it to function. This computes sizeof(size_t) at configure time to allow the appropriate logic to work. It also changes SIZEOF_SIZE_T to SIZE_OF_SIZE_T for consistency.
Diffstat (limited to 'Utilities/cmliblzma')
-rw-r--r--Utilities/cmliblzma/CMakeLists.txt1
-rw-r--r--Utilities/cmliblzma/common/sysdefs.h4
-rw-r--r--Utilities/cmliblzma/config.h.in4
3 files changed, 4 insertions, 5 deletions
diff --git a/Utilities/cmliblzma/CMakeLists.txt b/Utilities/cmliblzma/CMakeLists.txt
index c03147f..d991438 100644
--- a/Utilities/cmliblzma/CMakeLists.txt
+++ b/Utilities/cmliblzma/CMakeLists.txt
@@ -95,6 +95,7 @@ CHECK_TYPE_SIZE("unsigned short" SIZE_OF_UNSIGNED_SHORT)
CHECK_TYPE_SIZE("unsigned" SIZE_OF_UNSIGNED)
CHECK_TYPE_SIZE("unsigned long" SIZE_OF_UNSIGNED_LONG)
CHECK_TYPE_SIZE("unsigned long long" SIZE_OF_UNSIGNED_LONG_LONG)
+CHECK_TYPE_SIZE("size_t" SIZE_OF_SIZE_T)
CHECK_TYPE_SIZE("__int64" __INT64)
CHECK_TYPE_SIZE("unsigned __int64" UNSIGNED___INT64)
diff --git a/Utilities/cmliblzma/common/sysdefs.h b/Utilities/cmliblzma/common/sysdefs.h
index c84f01c..a6edea8 100644
--- a/Utilities/cmliblzma/common/sysdefs.h
+++ b/Utilities/cmliblzma/common/sysdefs.h
@@ -124,9 +124,9 @@
// The code currently assumes that size_t is either 32-bit or 64-bit.
#ifndef SIZE_MAX
-# if SIZEOF_SIZE_T == 4
+# if SIZE_OF_SIZE_T == 4
# define SIZE_MAX UINT32_MAX
-# elif SIZEOF_SIZE_T == 8
+# elif SIZE_OF_SIZE_T == 8
# define SIZE_MAX UINT64_MAX
# else
# error size_t is not 32-bit or 64-bit
diff --git a/Utilities/cmliblzma/config.h.in b/Utilities/cmliblzma/config.h.in
index b197f27..017c435 100644
--- a/Utilities/cmliblzma/config.h.in
+++ b/Utilities/cmliblzma/config.h.in
@@ -29,6 +29,7 @@
@SIZE_OF_UNSIGNED_CODE@
@SIZE_OF_UNSIGNED_LONG_CODE@
@SIZE_OF_UNSIGNED_LONG_LONG_CODE@
+@SIZE_OF_SIZE_T_CODE@
/*
* If we lack int64_t, define it to the first of __int64, int, long, and long long
@@ -277,9 +278,6 @@ typedef uint64_t uintmax_t;
/* Define to 1 if the system has the type `_Bool'. */
#cmakedefine HAVE__BOOL 1
-/* The size of `size_t', as computed by sizeof. */
-#cmakedefine SIZEOF_SIZE_T @SIZEOF_SIZE_T@
-
/* Define to 1 if the system supports fast unaligned access to 16-bit and
32-bit integers. */
#define TUKLIB_FAST_UNALIGNED_ACCESS 1