diff options
author | Bruce Evans <bde@FreeBSD.org> | 1999-10-09 11:31:50 +0000 |
---|---|---|
committer | Bruce Evans <bde@FreeBSD.org> | 1999-10-09 11:31:50 +0000 |
commit | 1d64c295bbdb773ca3d62cdb5a9eec06e12799c8 (patch) | |
tree | 84d09c6aaf702f70e17391e7ee33f2277abf1174 /lib/libz | |
parent | 8cd350e08c7ed48c02bb01f27aa9ee454dbe9274 (diff) | |
download | src-1d64c295bbdb773ca3d62cdb5a9eec06e12799c8.tar.gz src-1d64c295bbdb773ca3d62cdb5a9eec06e12799c8.zip |
Hard-configure z_off_t as long. Soft configuration using HAVE_UNISTD_H
just breaks the prototypes for gzseek() and gztell() when an application
defines HAVE_UNISTD_H before including <zlib.h>. z_off_t was always
long for compiling zlib, but was sometimes off_t for compiling
applications, e.g., Ethereal 0.7.5.
This "fix" preserves bug for bug binary compatibility. z_off_t should
be off_t for everything, but zlib doesn't support off_t being longer
than long, so using the correct type without fixing zlib's internals
would at best break binary compatibility. This "fix" also make the
namespace problems for HAVE_UNISTD_H no worse than hundreds of other
namespace prooblems in zconf.h. I'll wait for a new release of zlib
for proper fixes.
Reported by: Guy Harris via jkh
Notes
Notes:
svn path=/head/; revision=52054
Diffstat (limited to 'lib/libz')
-rw-r--r-- | lib/libz/zconf.h | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/lib/libz/zconf.h b/lib/libz/zconf.h index 5b882be76d4d..a294f58d0560 100644 --- a/lib/libz/zconf.h +++ b/lib/libz/zconf.h @@ -238,16 +238,18 @@ typedef uLong FAR uLongf; #ifdef HAVE_UNISTD_H # include <sys/types.h> /* for off_t */ # include <unistd.h> /* for SEEK_* and off_t */ -# define z_off_t off_t #endif #ifndef SEEK_SET # define SEEK_SET 0 /* Seek from beginning of file. */ # define SEEK_CUR 1 /* Seek from current position. */ # define SEEK_END 2 /* Set file pointer to EOF plus "offset" */ #endif -#ifndef z_off_t -# define z_off_t long -#endif + +/* + * This is hard-configured for FreeBSD, since zlib doesn't actually support + * using the system off_t for offsets unless off_t is no longer than long. + */ +#define z_off_t long /* MVS linker does not support external names larger than 8 bytes */ #if defined(__MVS__) |