pgsql: Yet further rethinking of build changes for macOS Mojave.

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Yet further rethinking of build changes for macOS Mojave.
Date: 2018-11-02 22:54:21
Message-ID: E1gIiKb-0007da-G3@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Yet further rethinking of build changes for macOS Mojave.

The solution arrived at in commit e74dd00f5 presumes that the compiler
has a suitable default -isysroot setting ... but further experience
shows that in many combinations of macOS version, XCode version, Xcode
command line tools version, and phase of the moon, Apple's compiler
will *not* supply a default -isysroot value.

We could potentially go back to the approach used in commit 68fc227dd,
but I don't have a lot of faith in the reliability or life expectancy of
that either. Let's just revert to the approach already shipped in 11.0,
namely specifying an -isysroot switch globally. As a partial response to
the concerns raised by Jakob Egger, adjust the contents of Makefile.global
to look like

CPPFLAGS = -isysroot $(PG_SYSROOT) ...
PG_SYSROOT = /path/to/sysroot

This allows overriding the sysroot path at build time in a relatively
painless way.

Add documentation to installation.sgml about how to use the PG_SYSROOT
option. I also took the opportunity to document how to work around
macOS's "System Integrity Protection" feature.

As before, back-patch to all supported versions.

Discussion: https://postgr.es/m/20840.1537850987@sss.pgh.pa.us

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/1440c461f7ea665b7e743aa636aa6adafa5c6fc6

Modified Files
--------------
configure | 10 +++++++++
configure.in | 9 ++++++++
doc/src/sgml/installation.sgml | 51 ++++++++++++++++++++++++++++++++++++++++++
src/Makefile.global.in | 1 +
src/template/darwin | 7 +++---
5 files changed, 75 insertions(+), 3 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Tom Lane 2018-11-03 00:11:16 pgsql: First-draft release notes for 11.1.
Previous Message Thomas Munro 2018-11-02 22:08:19 pgsql: Fix NULL handling in multi-batch Parallel Hash Left Join.