From 2566a7ab2592c7771a4578738b56f454e7e9a9e0 Mon Sep 17 00:00:00 2001 From: Brad King Date: Wed, 11 Nov 2009 09:20:08 -0500 Subject: [PATCH] Fix uid_t, git_t, dev_t, and mode_t on Borland SVN-Revision: 1640 --- CMakeLists.txt | 14 +++++++------- libarchive/archive.h | 9 +++++++-- libarchive/archive_entry.h | 15 +++++++++++---- 3 files changed, 25 insertions(+), 13 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index dbd847c12..ea50289d5 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -480,7 +480,7 @@ CHECK_TYPE_SIZE(gid_t GID_T) IF(NOT HAVE_GID_T) IF(WIN32) SET(gid_t "short") - ELSEIF(WIN32) + ELSE(WIN32) SET(gid_t "unsigned int") ENDIF(WIN32) ENDIF(NOT HAVE_GID_T) @@ -489,7 +489,7 @@ CHECK_TYPE_SIZE(id_t ID_T) IF(NOT HAVE_ID_T) IF(WIN32) SET(id_t "short") - ELSEIF(WIN32) + ELSE(WIN32) SET(id_t "unsigned int") ENDIF(WIN32) ENDIF(NOT HAVE_ID_T) @@ -513,16 +513,16 @@ ENDIF(NOT HAVE_INTMAX_T) # CHECK_TYPE_SIZE(mode_t MODE_T) IF(NOT HAVE_MODE_T) - IF(MSVC) + IF(WIN32) SET(mode_t "unsigned short") - ELSE(MSVC) + ELSE(WIN32) SET(mode_t "int") - ENDIF(MSVC) + ENDIF(WIN32) ENDIF(NOT HAVE_MODE_T) # CHECK_TYPE_SIZE(off_t OFF_T) IF(NOT HAVE_OFF_T) - SET(off_t "long long") + SET(off_t "__int64") ENDIF(NOT HAVE_OFF_T) # CHECK_TYPE_SIZE(size_t SIZE_T) @@ -547,7 +547,7 @@ CHECK_TYPE_SIZE(uid_t UID_T) IF(NOT HAVE_UID_T) IF(WIN32) SET(uid_t "short") - ELSEIF(WIN32) + ELSE(WIN32) SET(uid_t "unsigned int") ENDIF(WIN32) ENDIF(NOT HAVE_UID_T) diff --git a/libarchive/archive.h b/libarchive/archive.h index fa855f33e..1942188f2 100644 --- a/libarchive/archive.h +++ b/libarchive/archive.h @@ -57,8 +57,13 @@ # else # define __LA_SSIZE_T long # endif -#define __LA_UID_T short -#define __LA_GID_T short +# 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 /* ssize_t, uid_t, and gid_t */ #define __LA_INT64_T int64_t diff --git a/libarchive/archive_entry.h b/libarchive/archive_entry.h index fa5d9439e..3a12c9fa3 100644 --- a/libarchive/archive_entry.h +++ b/libarchive/archive_entry.h @@ -48,10 +48,17 @@ /* These should match the types used in 'struct stat' */ #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 +# 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 #define __LA_INT64_T int64_t -- 2.47.3