@@ -61,8 +61,13 @@
#else
#include <unistd.h> /* ssize_t, uid_t, and gid_t */
#endif
+#if defined(__BORLANDC__)
+#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
@@ -58,7 +58,11 @@
# include <unistd.h>
#define __LA_DEV_T dev_t
@@ -101,7 +101,7 @@ archive_read_open_fd(struct archive *a, int fd, size_t block_size)
mine->can_skip = 1;
} else
mine->can_skip = 0;
-#if defined(__CYGWIN__)
+#if defined(__CYGWIN__) || defined(__BORLANDC__)
setmode(mine->fd, O_BINARY);
#elif defined(_WIN32)
_setmode(mine->fd, _O_BINARY);
@@ -97,7 +97,7 @@ archive_read_open_FILE(struct archive *a, FILE *f)
setmode(fileno(mine->f), O_BINARY);
_setmode(_fileno(mine->f), _O_BINARY);
@@ -99,7 +99,7 @@ archive_read_open_filename(struct archive *a, const char *filename,
*/
filename = ""; /* Normalize NULL to "" */
fd = 0;
setmode(0, O_BINARY);
_setmode(0, _O_BINARY);
@@ -117,7 +117,9 @@
#define read __la_read
#define rmdir __la_rmdir
#define stat(path,stref) __la_stat(path,stref)
+#ifndef __BORLANDC__
#define strdup _strdup
#define tzset _tzset
#define umask _umask
#define unlink __la_unlink
@@ -70,7 +70,7 @@ archive_write_open_fd(struct archive *a, int fd)
return (ARCHIVE_FATAL);
}
mine->fd = fd;