Re: Strip -mmacosx-version-min options from plperl build - Mailing list pgsql-hackers

From Andrew Dunstan
Subject Re: Strip -mmacosx-version-min options from plperl build
Date
Msg-id a9c57fe2-085d-7037-4178-f821c8148159@dunslane.net
Whole thread Raw
In response to Re: Strip -mmacosx-version-min options from plperl build  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: Strip -mmacosx-version-min options from plperl build
List pgsql-hackers
On 2022-08-25 Th 09:43, Tom Lane wrote:
> Peter Eisentraut <peter.eisentraut@enterprisedb.com> writes:
>>>> In short: if the Cygwin Perl headers redefine PGDLLEXPORT (unlikely)
>>>> or somehow #define "__attribute__()" or "visibility()" into no-ops
>>>> (perhaps more likely) then we could explain this failure, and that
>>>> would also explain why it doesn't fail elsewhere.
>> This could be checked by running plperl.c through the preprocessor 
>> (replace gcc -c plperl.c -o plperl.o by gcc -E plperl.c -o plperl.i) and 
>> seeing what becomes of those symbols.
> Yeah, that was what I was going to suggest: grep the "-E" output for
> _PG_init and Pg_magic_func and confirm what their extern declarations
> look like.


$ egrep '_PG_init|Pg_magic_func'  plperl.i
extern __attribute__((visibility("default"))) void _PG_init(void);
extern __attribute__((visibility("default"))) const Pg_magic_struct
*Pg_magic_func(void); const Pg_magic_struct * Pg_magic_func(void) {
static const Pg_magic_struct Pg_magic_data = { sizeof(Pg_magic_struct),
160000 / 100, 100, 32, 64,
_PG_init(void)


cheers


andrew



--
Andrew Dunstan
EDB: https://www.enterprisedb.com




pgsql-hackers by date:

Previous
From: Andres Freund
Date:
Subject: Re: V14 and later build the backend with -lpthread
Next
From: Andres Freund
Date:
Subject: Re: Strip -mmacosx-version-min options from plperl build