Skip to content
Snippets Groups Projects
Commit d00a3472 authored by Bruce Momjian's avatar Bruce Momjian
Browse files

Update MinGW so it handles fseeko() similar to Unix.

parent 7e518a3d
No related branches found
No related tags found
No related merge requests found
......@@ -18999,7 +18999,8 @@ done
 
case $host_os in
# BSD/OS & NetBSD use a custom fseeko/ftello built on fsetpos/fgetpos
bsdi*|netbsd*)
# Mingw uses macros to access Win32 API calls
bsdi*|netbsd*|mingw*)
 
cat >>confdefs.h <<\_ACEOF
#define HAVE_FSEEKO 1
......
dnl Process this file with autoconf to produce a configure script.
dnl $PostgreSQL: pgsql/configure.in,v 1.582 2009/01/06 17:27:06 tgl Exp $
dnl $PostgreSQL: pgsql/configure.in,v 1.583 2009/01/07 03:39:33 momjian Exp $
dnl
dnl Developers, please strive to achieve this order:
dnl
......@@ -1319,7 +1319,8 @@ AC_CHECK_FUNCS(atexit, [],
AC_REPLACE_FUNCS(fseeko)
case $host_os in
# BSD/OS & NetBSD use a custom fseeko/ftello built on fsetpos/fgetpos
bsdi*|netbsd*)
# Mingw uses macros to access Win32 API calls
bsdi*|netbsd*|mingw*)
AC_DEFINE(HAVE_FSEEKO, 1, [Define to 1 because replacement version used.])
ac_cv_func_fseeko=yes;;
*)
......
......@@ -6,7 +6,7 @@
* Portions Copyright (c) 1996-2009, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
* $PostgreSQL: pgsql/src/bin/pg_dump/pg_dump.h,v 1.145 2009/01/01 17:23:54 momjian Exp $
* $PostgreSQL: pgsql/src/bin/pg_dump/pg_dump.h,v 1.146 2009/01/07 03:39:33 momjian Exp $
*
*-------------------------------------------------------------------------
*/
......@@ -16,25 +16,6 @@
#include "postgres_fe.h"
/*
* WIN32 does not provide 64-bit off_t, but does provide the functions operating
* with 64-bit offsets.
*/
#ifdef WIN32
#define pgoff_t __int64
#undef fseeko
#undef ftello
#ifdef WIN32_ONLY_COMPILER
#define fseeko(stream, offset, origin) _fseeki64(stream, offset, origin)
#define ftello(stream) _ftelli64(stream)
#else
#define fseeko(stream, offset, origin) fseeko64(stream, offset, origin)
#define ftello(stream) ftello64(stream)
#endif
#else
#define pgoff_t off_t
#endif
/*
* pg_dump uses two different mechanisms for identifying database objects:
*
......
......@@ -6,7 +6,7 @@
* Portions Copyright (c) 1996-2009, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
* $PostgreSQL: pgsql/src/include/port.h,v 1.123 2009/01/01 17:23:55 momjian Exp $
* $PostgreSQL: pgsql/src/include/port.h,v 1.124 2009/01/07 03:39:33 momjian Exp $
*
*-------------------------------------------------------------------------
*/
......@@ -341,10 +341,14 @@ extern int gettimeofday(struct timeval * tp, struct timezone * tzp);
extern char *crypt(const char *key, const char *setting);
#endif
/* WIN32 handled in port/win32.h */
#ifndef WIN32
#define pgoff_t off_t
#if defined(bsdi) || defined(netbsd)
extern int fseeko(FILE *stream, off_t offset, int whence);
extern off_t ftello(FILE *stream);
#endif
#endif
#ifndef HAVE_FSEEKO
#define fseeko(a, b, c) fseek(a, b, c)
......
/* $PostgreSQL: pgsql/src/include/port/win32.h,v 1.84 2008/02/17 02:09:31 tgl Exp $ */
/* $PostgreSQL: pgsql/src/include/port/win32.h,v 1.85 2009/01/07 03:39:33 momjian Exp $ */
#if defined(_MSC_VER) || defined(__BORLANDC__)
#define WIN32_ONLY_COMPILER
......@@ -190,6 +190,18 @@ struct itimerval
int setitimer(int which, const struct itimerval * value, struct itimerval * ovalue);
/*
* WIN32 does not provide 64-bit off_t, but does provide the functions operating
* with 64-bit offsets.
*/
#define pgoff_t __int64
#ifdef WIN32_ONLY_COMPILER
#define fseeko(stream, offset, origin) _fseeki64(stream, offset, origin)
#define ftello(stream) _ftelli64(stream)
#else
#define fseeko(stream, offset, origin) fseeko64(stream, offset, origin)
#define ftello(stream) ftello64(stream)
#endif
/*
* Supplement to <sys/types.h>.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment