From 0c15a524c532c1006a7bd36d3a680f8e8b8db9fc Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Thu, 8 May 2014 12:33:29 -0400 Subject: [PATCH] Allow for platforms that have optreset but not . Reportedly, some versions of mingw are like that, and it seems plausible in general that older platforms might be that way. However, we'd determined experimentally that just doing "extern int" conflicts with the way Cygwin declares these variables, so explicitly exclude Cygwin. Michael Paquier, tweaked by me to hopefully not break Cygwin --- src/include/pg_getopt.h | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/include/pg_getopt.h b/src/include/pg_getopt.h index 648800414e..0b38404ed3 100644 --- a/src/include/pg_getopt.h +++ b/src/include/pg_getopt.h @@ -29,12 +29,16 @@ extern int optind; extern int opterr; extern int optopt; -#ifdef HAVE_INT_OPTRESET +#endif /* HAVE_GETOPT_H */ + +/* + * Some platforms have optreset but not . Cygwin, however, + * doesn't like this either. + */ +#if defined(HAVE_INT_OPTRESET) && !defined(__CYGWIN__) extern int optreset; #endif -#endif /* HAVE_GETOPT_H */ - #ifndef HAVE_GETOPT extern int getopt(int nargc, char *const * nargv, const char *ostr); #endif