Re: Unify DLSUFFIX on Darwin

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Peter Eisentraut <peter(dot)eisentraut(at)enterprisedb(dot)com>
Cc: pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Unify DLSUFFIX on Darwin
Date: 2022-06-22 13:45:20
Message-ID: 3336874.1655905520@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Peter Eisentraut <peter(dot)eisentraut(at)enterprisedb(dot)com> writes:
> macOS has traditionally used extension .dylib for shared libraries (used
> at build time) and .so for dynamically loaded modules (used by
> dlopen()). This complicates the build system a bit. Also, Meson uses
> .dylib for both, so it would be worth unifying this in order to be able
> to get equal build output.

> There doesn't appear to be any reason to use any particular extension
> for dlopened modules, since dlopen() will accept anything and PostgreSQL
> is well-factored to be able to deal with any extension. Other software
> packages that I have handy appear to be about 50/50 split on which
> extension they use for their plugins. So it seems possible to change
> this safely.

Doesn't this amount to a fundamental ABI break for extensions?
Yesterday they had to ship foo.so, today they have to ship foo.dylib.

I'm not against the idea if we can avoid widespread extension
breakage, but that part seems like a problem.

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2022-06-22 13:49:17 Re: SYSTEM_USER reserved word implementation
Previous Message Drouvot, Bertrand 2022-06-22 13:31:16 Re: [PATCH] Expose port->authn_id to extensions and triggers