]> arthur.barton.de Git - netatalk.git/blobdiff - macros/largefile-check.m4
Merge branch 'branch-netatalk-3-0' of netafp.com:git/netatalk into branch-netatalk-3-0
[netatalk.git] / macros / largefile-check.m4
index ec526bde75b6c845c478c49882421f44ac185389..8610f5ee23806b878febfa5157904d81968a8a59 100644 (file)
@@ -30,10 +30,13 @@ define(WX_SYS_LARGEFILE_MACRO_VALUE,
 
     if test "$$3" != no; then
         wx_largefile=yes
-        AC_DEFINE_UNQUOTED([$1], [$$3])
+        AC_DEFINE_UNQUOTED([$1], [$$3], [$1 (for LARGEFILE support)])
     fi
 ])
 
+
+
+
 dnl AC_SYS_LARGEFILE
 dnl ----------------
 dnl By default, many hosts won't let programs access large files;
@@ -52,11 +55,23 @@ if test "$enable_largefile" != no; then
         WX_SYS_LARGEFILE_MACRO_VALUE(_LARGE_FILES, 1, ac_cv_sys_large_files)
     fi
 
-    AC_MSG_CHECKING(if large file support is available)
-    if test "x$wx_largefile" = "xyes"; then
-        AC_DEFINE(HAVE_LARGEFILE_SUPPORT)
+    
+    AC_CACHE_CHECK([for 64 bit off_t],netatalk_cv_SIZEOF_OFF_T,[
+    AC_TRY_RUN([#include <stdio.h>
+#include <stdlib.h>
+#include <sys/stat.h>
+main() { exit((sizeof(off_t) == 8) ? 0 : 1); }],
+netatalk_cv_SIZEOF_OFF_T=yes,netatalk_cv_SIZEOF_OFF_T=no,netatalk_cv_SIZEOF_OFF_T=cross)])
+
+    AC_MSG_CHECKING([if large file support is available])
+    if test "x$netatalk_cv_SIZEOF_OFF_T" != "xno"; then
+        AC_DEFINE(HAVE_LARGEFILE_SUPPORT, [], [LARGEFILE support])
+       AC_MSG_RESULT([yes])
+        ifelse([$1], , :, [$1])
+    else
+        AC_MSG_RESULT([no])
+        ifelse([$2], , :, [$2])
     fi
-    AC_MSG_RESULT($wx_largefile)
 fi
 ])