Jason Tishler <Jason.Tishler@dothill.com> writes:
>> These changes look fine as far as they go, but if you think
>> TransactionCommandContext needs to be DLLIMPORT, why not the other
>> global context variables, too?
> I took the minimalist approach -- meaning that I only made the minimum
> number of changes necessary to get PostgreSQL to compile cleanly under
> Cygwin. You are correct, the other global context variables should
> also be marked DLLIMPORT. There are probably other global variables
> that should be marked too.
> The completeness approach would DLLIMPORT "everything" (similar to
> the way that Python uses DL_EXPORT), but that would be a lot of source
> code changes...
Seems like that's heading in the wrong direction. Isn't there a
compiler switch or something we could give to make ALL global vars be
automatically marked DLLIMPORT? That's generally how it works on Unix
platforms (for example, on HPUX the -E linker switch makes these symbols
available to dynamically linked shlibs). I don't really like the idea
of cluttering the source code for the benefit of one platform...
regards, tom lane