Re: PG vs macOS Mojave

From: Jakob Egger <jakob(at)eggerapps(dot)at>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: pgsql-hackers(at)lists(dot)postgresql(dot)org
Subject: Re: PG vs macOS Mojave
Date: 2018-10-16 11:56:49
Message-ID: DF261D4E-DFB6-4474-9B35-7BBEC93AD959@eggerapps.at
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Am 25. Sep. 2018 um 06:49 schrieb Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>:
> It's a bit scary to be adding -isysroot globally.
> (...)
> I've tested this on all the macOS versions I have at hand, and it
> doesn't seem to break anything.
> (...)
> Thoughts?
>
> regards, tom lane

This breaks building extensions with a different SDK than the server itself.

Previously, it was possible for users to download a binary PostgreSQL distribution and build an extension just by typing 'make install'.

Now pgxs/src/makefile.global contains -isysroot of the machine where PostgreSQL was built. If they use a different version of Xcode, or if they renamed Xcode (I often use multiple versions side by side), compilation will fail.

As a workaround for Postgres.app, I've tried setting PG_SYSROOT to /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk (which is a symlink to the current SDK). This allows building extensions on a newer OS than what I use for building the server, but if the user renames Xcode that still doesn't help.

Jakob

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Magnus Hagander 2018-10-16 12:02:48 Re: Creating Certificates
Previous Message Amit Khandekar 2018-10-16 11:04:41 Re: TupleTableSlot abstraction