Subject: pgsql: Fix order of -I switches for building pg_regress.o.

From: Tom Lane <[email-masked]>
Date: Wed, 26 Mar 2025 00:04:06 +0000

Fix order of -I switches for building pg_regress.o.

We need the -I switch for libpq_srcdir to come before any -I switches
injected by configure.  Otherwise there is a risk of pulling in a
mismatched version of libpq_fe.h from someplace like
/usr/local/include, if the platform has another Postgres version
installed there.  This evidently accounts for today's buildfarm
failures on "anaconda".

In principle the -I switch for src/port/ is at similar hazard, and has
been for a very long time.  But the only .h files we keep there are
pg_config_paths.h and pthread-win32.h, neither of which get installed
on Unix-ish systems, so the odds of picking up a conflicting header
seem pretty small.  That doubtless accounts for the lack of prior
reports.

Back-patch to v17 where pg_regress acquired a build dependency on
libpq_fe.h.  We could go back further to fix the hazard for src/port/
in older branches, but it seems unlikely to be worth troubling over.

Reported-by: Nathan Bossart <[email-masked]>
Author: Tom Lane <[email-masked]>
Discussion: https://postgr.es/m/Z-MhRzoc7t-nPUQG@nathan
Backpatch-through: 17

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/cb36f8ec2124b0c495da057a2f55735fe858be0e

Modified Files
--------------
src/test/regress/GNUmakefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)