summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Eisentraut2008-02-19 18:02:30 +0000
committerPeter Eisentraut2008-02-19 18:02:30 +0000
commit18d7fbcce91126a6f77daa389f72f4dd56f4c730 (patch)
tree89c43623d567b2e13a11dd9bec9c7fc68c5379bc
parent0542bae531cb3fdee7254d101dc2961310803316 (diff)
Backport fixed AC_FUNC_FSEEKO
-rw-r--r--config/c-library.m426
-rwxr-xr-xconfigure12
2 files changed, 34 insertions, 4 deletions
diff --git a/config/c-library.m4 b/config/c-library.m4
index f27fdf5b18..38574cfd9a 100644
--- a/config/c-library.m4
+++ b/config/c-library.m4
@@ -297,3 +297,29 @@ int main()
])dnl AC_CACHE_VAL
AC_MSG_RESULT([$pgac_cv_printf_arg_control])
])# PGAC_FUNC_PRINTF_ARG_CONTROL
+
+
+# backport from Autoconf 2.61a
+# http://git.savannah.gnu.org/gitweb/?p=autoconf.git;a=commitdiff;h=f0c325537a22105536ac8c4e88656e50f9946486
+
+# AC_FUNC_FSEEKO
+# --------------
+AN_FUNCTION([ftello], [AC_FUNC_FSEEKO])
+AN_FUNCTION([fseeko], [AC_FUNC_FSEEKO])
+AC_DEFUN([AC_FUNC_FSEEKO],
+[_AC_SYS_LARGEFILE_MACRO_VALUE(_LARGEFILE_SOURCE, 1,
+ [ac_cv_sys_largefile_source],
+ [Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2).],
+ [[#include <sys/types.h> /* for off_t */
+ #include <stdio.h>]],
+ [[int (*fp) (FILE *, off_t, int) = fseeko;
+ return fseeko (stdin, 0, 0) && fp (stdin, 0, 0);]])
+
+# We used to try defining _XOPEN_SOURCE=500 too, to work around a bug
+# in glibc 2.1.3, but that breaks too many other things.
+# If you want fseeko and ftello with glibc, upgrade to a fixed glibc.
+if test $ac_cv_sys_largefile_source != unknown; then
+ AC_DEFINE(HAVE_FSEEKO, 1,
+ [Define to 1 if fseeko (and presumably ftello) exists and is declared.])
+fi
+])# AC_FUNC_FSEEKO
diff --git a/configure b/configure
index bd5ac2366d..fb1f1813bc 100755
--- a/configure
+++ b/configure
@@ -18051,11 +18051,13 @@ _ACEOF
cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
-#include <stdio.h>
+#include <sys/types.h> /* for off_t */
+ #include <stdio.h>
int
main ()
{
-return fseeko (stdin, 0, 0) && (fseeko) (stdin, 0, 0);
+int (*fp) (FILE *, off_t, int) = fseeko;
+ return fseeko (stdin, 0, 0) && fp (stdin, 0, 0);
;
return 0;
}
@@ -18095,11 +18097,13 @@ cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
#define _LARGEFILE_SOURCE 1
-#include <stdio.h>
+#include <sys/types.h> /* for off_t */
+ #include <stdio.h>
int
main ()
{
-return fseeko (stdin, 0, 0) && (fseeko) (stdin, 0, 0);
+int (*fp) (FILE *, off_t, int) = fseeko;
+ return fseeko (stdin, 0, 0) && fp (stdin, 0, 0);
;
return 0;
}