Re: macos exported symbols list not used for loadable modules

Peter Eisentraut <peter@eisentraut.org>

From: Peter Eisentraut <peter@eisentraut.org>
To: Jacob Champion <jacob.champion@enterprisedb.com>
Cc: pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2025-06-10T05:15:38Z
Lists: pgsql-hackers
On 05.06.25 19:28, Jacob Champion wrote:
> 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.

Ok, fix committed.




Commits

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