From d5c7de8650ee2e05de591f3901c2cad010b88b77 Mon Sep 17 00:00:00 2001 From: Andrew Bartlett Date: Wed, 28 Mar 2012 09:47:53 +1100 Subject: build: Require 64-bit files support and do not define HAVE_EXPLICIT_LARGEFILE_SUPPORT --- buildtools/wafsamba/wscript | 3 ++- source3/configure.in | 16 +++++++--------- source3/wscript | 10 ---------- 3 files changed, 9 insertions(+), 20 deletions(-) diff --git a/buildtools/wafsamba/wscript b/buildtools/wafsamba/wscript index 49d21078c4..a302280038 100755 --- a/buildtools/wafsamba/wscript +++ b/buildtools/wafsamba/wscript @@ -362,7 +362,8 @@ def configure(conf): conf.CHECK_HEADERS('limits.h assert.h') # see if we need special largefile flags - conf.CHECK_LARGEFILE() + if not conf.CHECK_LARGEFILE(): + raise Utils.WafError('Samba requires large file support support, but not available on this platform: sizeof(off_t) < 8') if 'HAVE_STDDEF_H' in conf.env and 'HAVE_STDLIB_H' in conf.env: conf.DEFINE('STDC_HEADERS', 1) diff --git a/source3/configure.in b/source3/configure.in index ba9ae375fe..74c962652f 100644 --- a/source3/configure.in +++ b/source3/configure.in @@ -5268,25 +5268,23 @@ fi # # As a gating factor for large file support, in order to # use <4GB files we must have the following minimal support -# available. -# long long, and a 64 bit off_t or off64_t. -# If we don't have all of these then disable large -# file support. +# available: a 64 bit off_t +# If we don't have all of these then fail the build # AC_MSG_CHECKING([if large file support can be enabled]) AC_TRY_COMPILE([ -#if defined(HAVE_LONGLONG) && (defined(HAVE_OFF64_T) || (defined(SIZEOF_OFF_T) && (SIZEOF_OFF_T == 8))) +#if (defined(SIZEOF_OFF_T) && (SIZEOF_OFF_T == 8)) #include #else __COMPILE_ERROR_ #endif ], [int i], -samba_cv_HAVE_EXPLICIT_LARGEFILE_SUPPORT=yes,samba_cv_HAVE_EXPLICIT_LARGEFILE_SUPPORT=no) -if test x"$samba_cv_HAVE_EXPLICIT_LARGEFILE_SUPPORT" = x"yes"; then - AC_DEFINE(HAVE_EXPLICIT_LARGEFILE_SUPPORT,1,[Whether large file support can be enabled]) +samba_cv_HAVE_LARGEFILE_SUPPORT=yes,samba_cv_HAVE_LARGEFILE_SUPPORT=no) +if test x"$samba_cv_HAVE_LARGEFILE_SUPPORT" != x"yes"; then + AC_MSG_ERROR(["large file support support not available: sizeof(off_t) != 8"]) fi -AC_MSG_RESULT([$samba_cv_HAVE_EXPLICIT_LARGEFILE_SUPPORT]) +AC_MSG_RESULT([$samba_cv_HAVE_LARGEFILE_SUPPORT]) ################################################# diff --git a/source3/wscript b/source3/wscript index dc80bdbbfd..1e703dd2b1 100644 --- a/source3/wscript +++ b/source3/wscript @@ -356,16 +356,6 @@ return acl_get_perm_np(permset_d, perm); headers='unistd.h fcntl.h') conf.CHECK_DECLS('readahead', headers='fcntl.h', always=True) - conf.CHECK_CODE(''' - #if defined(HAVE_LONGLONG) && (defined(HAVE_OFF64_T) || (defined(SIZEOF_OFF_T) && (SIZEOF_OFF_T == 8))) - #include - #else - __COMPILE_ERROR_ - #endif - int i;''', - 'HAVE_EXPLICIT_LARGEFILE_SUPPORT', - msg="Checking whether large file support can be enabled") - if Options.options.with_aio_support: conf.CHECK_FUNCS_IN('aio_read', 'aio') conf.CHECK_FUNCS_IN('aio_read', 'rt') -- cgit