aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2014-05-08 12:33:29 -0400
committerTom Lane <tgl@sss.pgh.pa.us>2014-05-08 12:33:29 -0400
commit0c15a524c532c1006a7bd36d3a680f8e8b8db9fc (patch)
tree2aa0a1aba1342d3bc6f957c50f8ef8b60131c336
parent4f7bb4b2a36facc94a1d6b821ec6733093aa9bc6 (diff)
downloadpostgresql-0c15a524c532c1006a7bd36d3a680f8e8b8db9fc.tar.gz
postgresql-0c15a524c532c1006a7bd36d3a680f8e8b8db9fc.zip
Allow for platforms that have optreset but not <getopt.h>.
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
-rw-r--r--src/include/pg_getopt.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/include/pg_getopt.h b/src/include/pg_getopt.h
index 648800414e3..0b38404ed3b 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 <getopt.h>. 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