summaryrefslogtreecommitdiffstats
path: root/source/configure.in
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>1999-02-04 21:29:18 +0000
committerJeremy Allison <jra@samba.org>1999-02-04 21:29:18 +0000
commit6fe4790b6931fe974755f59405da617c1130359f (patch)
treebeb3bc65551296118e9a35b2fc9cfb4494fb7ea0 /source/configure.in
parent7b05d1df517b67897ec459481aaae8dc6b9e94ae (diff)
downloadsamba-6fe4790b6931fe974755f59405da617c1130359f.tar.gz
samba-6fe4790b6931fe974755f59405da617c1130359f.tar.xz
samba-6fe4790b6931fe974755f59405da617c1130359f.zip
Fixes for HPUX.
I have added a new define for configure - HAVE_EXPLICIT_LARGEFILE_SUPPORT. This is tested for at the end of configure by the following check : "As a gating factor for large file support, in order to use <4GB files we must have the following minimal support available. long long, a 64 bit off_t or off64_t, a 64 bit ino_t or ino64_t. If we don't have all of these then disable large file support." I have to do this as HPUX will detect the open64 etc. functions in libc but *THEY DON'T WORK* before HPUX11.x. The definitions in include/includes.h that set up large file defines, and the calls in lib/system.c that use the explicit large file functions are now depended on HAVE_EXPLICIT_LARGEFILE_SUPPORT also being defined. include/rpc_lsa.h: Upped number of groups to 96 as a temporary measure. Jeremy.
Diffstat (limited to 'source/configure.in')
-rw-r--r--source/configure.in35
1 files changed, 31 insertions, 4 deletions
diff --git a/source/configure.in b/source/configure.in
index 7edf9c35b5d..652b8ec5eba 100644
--- a/source/configure.in
+++ b/source/configure.in
@@ -56,12 +56,14 @@ case "$host_os" in
CPPFLAGS="$CPPFLAGS -Ae"
fi
#
-# Defines needed for HPUX large file support..
+# Defines needed for HPUX support.
#
case `uname -r` in
- *10*|*11*)
- AC_MSG_RESULT([enabling large file support])
- CPPFLAGS="$CPPFLAGS -D_LARGEFILE64_SOURCE"
+ *9*|*10*)
+ CPPFLAGS="$CPPFLAGS -D_HPUX_SOURCE -D_POSIX_SOURCE"
+ ;;
+ *11*)
+ CPPFLAGS="$CPPFLAGS -D_HPUX_SOURCE -D_POSIX_SOURCE -D_LARGEFILE64_SOURCE"
;;
esac
;;
@@ -1458,6 +1460,31 @@ if test $space = no; then
fi
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, a 64 bit off_t or off64_t, a 64 bit ino_t or
+# ino64_t. If we don't have all of these then disable large
+# file support.
+#
+echo "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))) && (defined(HAVE_INO64_T) || (defined(SIZEOF_INO_T) && (SIZEOF_INO_T == 8)))
+#include <sys/types.h>
+#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
+ echo "yes"
+ AC_DEFINE(HAVE_EXPLICIT_LARGEFILE_SUPPORT)
+else
+ echo "no"
+fi
+
echo "checking configure summary"
AC_TRY_RUN([#include "${srcdir-.}/tests/summary.c"],
echo "configure OK";,