Re: narwhal and PGDLLIMPORT - Mailing list pgsql-hackers

From Tom Lane
Subject Re: narwhal and PGDLLIMPORT
Date
Msg-id 20922.1392477410@sss.pgh.pa.us
Whole thread Raw
In response to Re: narwhal and PGDLLIMPORT  (Andres Freund <andres@2ndquadrant.com>)
Responses Re: narwhal and PGDLLIMPORT  (Andres Freund <andres@2ndquadrant.com>)
List pgsql-hackers
Andres Freund <andres@2ndquadrant.com> writes:
> On 2014-02-12 14:11:10 -0500, Tom Lane wrote:
>> Marco Atzeri <marco.atzeri@gmail.com> writes:
>>> from /usr/include/getopt.h
>>> extern char __declspec(dllimport) *optarg;      /* argument associated 
>>> with option */

>> Hm.  All of our files that use getopt also do
>> extern char *optarg;

> So, now that brolga is revived, this unsurprisingly causes breakage
> there after the --disable-auto-export change. ISTM the easiest way to
> deal with this is to just adorn all those with a PGDLLIMPORT?

Uh, no, because that's backwards: we'd need the __declspec(dllimport)
in the backend code.

The best thing probably is not to have the duplicate declarations on
platforms that don't need 'em.  Unfortunately, I seem to recall that
the current coding was arrived at to forestall link problems on weird
platforms that *had* these symbols declared and yet we needed externs
anyway.  We might have to do something as ugly as "#ifndef CYGWIN".
        regards, tom lane



pgsql-hackers by date:

Previous
From: Andres Freund
Date:
Subject: Re: 9.2.1 & index-only scans : abnormal heap fetches after VACUUM FULL
Next
From: Andres Freund
Date:
Subject: Re: Memory ordering issue in LWLockRelease, WakeupWaiters, WALInsertSlotRelease