From 14e2d9a896a87c4731aae3bd71484f0b7a473227 Mon Sep 17 00:00:00 2001 From: Alvaro Herrera Date: Tue, 27 Sep 2016 01:05:21 -0300 Subject: [PATCH] Include where needed is required by POSIX.1-2001 to get the prototype of select(2), but nearly no systems enforce that because older standards let you get away with including some other headers. Recent OpenBSD hacking has removed that frail touch of friendliness, however, which broke some compiles; fix all the way back to 9.1 by adding the required standard. Only vacuumdb.c was reported to fail, but it seems easier to fix the whole lot in a fell swoop. Per bug #14334 by Sean Farrell. --- src/backend/libpq/auth.c | 3 +++ src/backend/postmaster/pgstat.c | 3 +++ src/bin/pg_basebackup/pg_basebackup.c | 4 +++- src/port/pgsleep.c | 3 +++ src/test/examples/testlibpq2.c | 4 ++++ 5 files changed, 16 insertions(+), 1 deletion(-) diff --git a/src/backend/libpq/auth.c b/src/backend/libpq/auth.c index 8c6ff8e6efc..58a85348683 100644 --- a/src/backend/libpq/auth.c +++ b/src/backend/libpq/auth.c @@ -20,6 +20,9 @@ #include #include #include +#ifdef HAVE_SYS_SELECT_H +#include +#endif #include "libpq/auth.h" #include "libpq/crypt.h" diff --git a/src/backend/postmaster/pgstat.c b/src/backend/postmaster/pgstat.c index 3ee2c07adc2..86b6c4ce6f7 100644 --- a/src/backend/postmaster/pgstat.c +++ b/src/backend/postmaster/pgstat.c @@ -34,6 +34,9 @@ #ifdef HAVE_SYS_POLL_H #include #endif +#ifdef HAVE_SYS_SELECT_H +#include +#endif #include "pgstat.h" diff --git a/src/bin/pg_basebackup/pg_basebackup.c b/src/bin/pg_basebackup/pg_basebackup.c index c78b7ec8853..44da062ea17 100644 --- a/src/bin/pg_basebackup/pg_basebackup.c +++ b/src/bin/pg_basebackup/pg_basebackup.c @@ -18,7 +18,9 @@ #include #include #include - +#ifdef HAVE_SYS_SELECT_H +#include +#endif #ifdef HAVE_LIBZ #include #endif diff --git a/src/port/pgsleep.c b/src/port/pgsleep.c index 988bfb05db1..867cf9bf411 100644 --- a/src/port/pgsleep.c +++ b/src/port/pgsleep.c @@ -14,6 +14,9 @@ #include #include +#ifdef HAVE_SYS_SELECT_H +#include +#endif /* * In a Windows backend, we don't use this implementation, but rather diff --git a/src/test/examples/testlibpq2.c b/src/test/examples/testlibpq2.c index 850993f6e82..07c6317a212 100644 --- a/src/test/examples/testlibpq2.c +++ b/src/test/examples/testlibpq2.c @@ -34,6 +34,10 @@ #include #include #include +#ifdef HAVE_SYS_SELECT_H +#include +#endif + #include "libpq-fe.h" static void -- 2.39.5