diff --git a/CHANGES b/CHANGES index b6fb701..8034a75 100644 --- a/CHANGES +++ b/CHANGES @@ -294,6 +294,10 @@ Porting: Thanks to Paul Hunt for sending a fix of the configure --enable-openssl-base processing. + Enable direct largefile support on "smaller" systems per + _FILE_OFFSET_BITS and _LARGE_FILES. + Thanks to Fergus Dall for sending a patch. + Testing: Removed obselete parts from test.sh diff --git a/config.h.in b/config.h.in index bf1a72d..fed2f05 100644 --- a/config.h.in +++ b/config.h.in @@ -613,6 +613,12 @@ /* is uint64_t already defined? */ #undef HAVE_TYPE_UINT64 +/* Number of bits in a file offset, on hosts where this is settable. */ +#undef _FILE_OFFSET_BITS + +/* Define for large files, on AIX-style hosts. */ +#undef _LARGE_FILES + /* Define if snprintf() returns required len on truncation (C-99 conform) */ #undef HAVE_C99_SNPRINTF diff --git a/configure.ac b/configure.ac index aa3c84d..009fd9c 100644 --- a/configure.ac +++ b/configure.ac @@ -30,6 +30,8 @@ if test -z "$CFLAGS"; then export CFLAGS=-O fi +AC_SYS_LARGEFILE + dnl Checks for programs. AC_PROG_INSTALL(install) AC_PROG_CC diff --git a/procan-cdefs.c b/procan-cdefs.c index e0cade7..d9587f8 100644 --- a/procan-cdefs.c +++ b/procan-cdefs.c @@ -41,6 +41,14 @@ int procan_cdefs(FILE *outfile) { fprintf(outfile, "#define SHUT_RDWR %u\n", SHUT_RDWR); #endif + /* Compile time controls */ +#ifdef _FILE_OFFSET_BITS + fprintf(outfile, "#define _FILE_OFFSET_BITS %u\n", _FILE_OFFSET_BITS); +#endif +#ifdef _LARGE_FILES + fprintf(outfile, "#define _LARGE_FILES %u\n", _LARGE_FILES); +#endif + /* termios constants */ #ifdef CRDLY fprintf(outfile, "#define CRDLY 0%011o\n", CRDLY);