Re: macos exported symbols list not used for loadable modules

Jacob Champion <jacob.champion@enterprisedb.com>

From: Jacob Champion <jacob.champion@enterprisedb.com>
To: Peter Eisentraut <peter@eisentraut.org>
Cc: pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2025-06-05T17:28:01Z
Lists: pgsql-hackers
On Tue, Jun 3, 2025 at 12:48 AM Peter Eisentraut <peter@eisentraut.org> wrote:
>
> On macOS, when building with the make system, the exported symbols list
> (SHLIB_EXPORTS) is ignored.  I don't think that is intentional.  It was
> probably just forgotten, since that combination has never actually been
> used until now (for libpq-oauth).

Oops, thank you for noticing that.

> (Alternatively: Am I missing something?  Is this combination not useful?
>   Was it not supported in older versions at some point?  I couldn't
> think of anything.)
>
> The meson build system handles this correctly.
>
> I suggest that we fix this.  I attach patch 0001 with a minimal fix,
> patch 0002 is a bit more refactoring to make the code match the layout
> for other platforms.

LGTM, and works on my machine. Unfortunately I don't have any insight
into the history.

Thanks!
--Jacob



Commits

  1. Use exported symbols list on macOS for loadable modules as well