summaryrefslogtreecommitdiffstats
path: root/Utilities/cmlibarchive/libarchive
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2009-11-04 21:06:44 (GMT)
committerBrad King <brad.king@kitware.com>2009-11-04 21:06:44 (GMT)
commite5075bb8e8c358789618bdccc2e4da3a59cf8e0c (patch)
tree0d286b72247a52c512ddbb8ee1bf5f549906e8af /Utilities/cmlibarchive/libarchive
parent7f5361f040b267b3ecbafbbc4f406674ce779f30 (diff)
downloadCMake-e5075bb8e8c358789618bdccc2e4da3a59cf8e0c.zip
CMake-e5075bb8e8c358789618bdccc2e4da3a59cf8e0c.tar.gz
CMake-e5075bb8e8c358789618bdccc2e4da3a59cf8e0c.tar.bz2
libarchive: Fix unconfigured header logic
The commit "libarchive: Fix Borland integer constants" introduced use of HAVE_* configured macros into archive.h and archive_entry.h where they are not allowed. This commit replaces the logic with something that does not depend on the configured macros.
Diffstat (limited to 'Utilities/cmlibarchive/libarchive')
-rw-r--r--Utilities/cmlibarchive/libarchive/archive.h34
-rw-r--r--Utilities/cmlibarchive/libarchive/archive_entry.h25
2 files changed, 30 insertions, 29 deletions
diff --git a/Utilities/cmlibarchive/libarchive/archive.h b/Utilities/cmlibarchive/libarchive/archive.h
index a6c12ce..9d84121 100644
--- a/Utilities/cmlibarchive/libarchive/archive.h
+++ b/Utilities/cmlibarchive/libarchive/archive.h
@@ -35,39 +35,41 @@
* this header! If you must conditionalize, use predefined compiler and/or
* platform macros.
*/
+#if defined(__BORLANDC__) && __BORLANDC__ >= 0x560
+# define __LA_STDINT_H <stdint.h>
+#elif !defined(__WATCOMC__) && !defined(_MSC_VER) && !defined(__INTERIX) && !defined(__BORLANDC__)
+# define __LA_STDINT_H <inttypes.h>
+#endif
#include <sys/stat.h>
#include <sys/types.h> /* Linux requires this for off_t */
-#if !defined(__WATCOMC__) && !defined(_MSC_VER) && !defined(__INTERIX) && !defined(__BORLANDC__)
-/* Header unavailable on Watcom C or MS Visual C++ or SFU. */
-#include <inttypes.h> /* int64_t, etc. */
+#ifdef __LA_STDINT_H
+# include __LA_STDINT_H /* int64_t, etc. */
#endif
#include <stdio.h> /* For FILE * */
/* Get appropriate definitions of standard POSIX-style types. */
/* These should match the types used in 'struct stat' */
-#if defined(_WIN32) && !defined(__CYGWIN__) && !defined(__BORLANDC__)
+#if defined(_WIN32) && !defined(__CYGWIN__)
#define __LA_INT64_T __int64
-# if defined(_WIN64)
+# if defined(_SSIZE_T_DEFINED)
+# define __LA_SSIZE_T ssize_t
+# elif defined(_WIN64)
# define __LA_SSIZE_T __int64
# else
# define __LA_SSIZE_T long
# endif
-#define __LA_UID_T short
-#define __LA_GID_T short
-#else
-#if defined(__BORLANDC__)
-#include <sys/types.h>
+# if defined(__BORLANDC__)
+# define __LA_UID_T uid_t
+# define __LA_GID_T gid_t
+# else
+# define __LA_UID_T short
+# define __LA_GID_T short
+# endif
#else
#include <unistd.h> /* ssize_t, uid_t, and gid_t */
-#endif
-#if defined(__BORLANDC__) && !defined(HAVE_SYS_TYPES_H)
-#define __LA_INT64_T __int64
-#define __LA_SSIZE_T long
-#else
#define __LA_INT64_T int64_t
#define __LA_SSIZE_T ssize_t
-#endif
#define __LA_UID_T uid_t
#define __LA_GID_T gid_t
#endif
diff --git a/Utilities/cmlibarchive/libarchive/archive_entry.h b/Utilities/cmlibarchive/libarchive/archive_entry.h
index b1e24c2..01a05af 100644
--- a/Utilities/cmlibarchive/libarchive/archive_entry.h
+++ b/Utilities/cmlibarchive/libarchive/archive_entry.h
@@ -46,23 +46,22 @@
/* Get appropriate definitions of standard POSIX-style types. */
/* These should match the types used in 'struct stat' */
-#if defined(_WIN32) && !defined(__CYGWIN__) && !defined(__BORLANDC__)
+#if defined(_WIN32) && !defined(__CYGWIN__)
#define __LA_INT64_T __int64
-#define __LA_UID_T short
-#define __LA_GID_T short
-#define __LA_DEV_T unsigned int
-#define __LA_MODE_T unsigned short
-#else
-#ifdef __BORLANDC__
-# include <sys/types.h>
+# if defined(__BORLANDC__)
+# define __LA_UID_T uid_t
+# define __LA_GID_T gid_t
+# define __LA_DEV_T dev_t
+# define __LA_MODE_T mode_t
+# else
+# define __LA_UID_T short
+# define __LA_GID_T short
+# define __LA_DEV_T unsigned int
+# define __LA_MODE_T unsigned short
+# endif
#else
# include <unistd.h>
-#endif
-#if defined(__BORLANDC__) && !defined(HAVE_SYS_TYPES_H)
-#define __LA_INT64_T __int64
-#else
#define __LA_INT64_T int64_t
-#endif
#define __LA_UID_T uid_t
#define __LA_GID_T gid_t
#define __LA_DEV_T dev_t