Re: pgevent warnings on mingw

From: "Hiroshi Saito" <z-saito(at)guitar(dot)ocn(dot)ne(dot)jp>
To: "Magnus Hagander" <magnus(at)hagander(dot)net>
Cc: "Andrew Dunstan" <andrew(at)dunslane(dot)net>, "PostgreSQL-development" <pgsql-hackers(at)postgresql(dot)org>, "Marko Kreen" <markokr(at)gmail(dot)com>
Subject: Re: pgevent warnings on mingw
Date: 2009-02-01 02:40:09
Message-ID: 7025F44AA6D4480DA49FBE931EEAF1E3@HIRO57887DE653
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi.

I am checking that consider sufficient test as Marko-san and it is satisfactory.
However, That there is a portion which does not suit the solution of MSVC
also understands. Therefore, How is this proposal?

1. )remove pgevent.def
It is always generated.

2.) improvement of the Makefile and Solution.pm

What do you think?

Regards,
Hiroshi Saito

----- Original Message -----
From: "Marko Kreen" <markokr(at)gmail(dot)com>

> On 1/31/09, Marko Kreen <markokr(at)gmail(dot)com> wrote:
>> On 1/31/09, Magnus Hagander <magnus(at)hagander(dot)net> wrote:
>> > Hiroshi Saito wrote:
>> > > Hi.
>> > >
>> > >>> dllwrap --def pgevent.def -o pgevent.dll pgevent.o pgmsgevent.o
>> > >>> Warning: resolving _DllUnregisterServer by linking to
>> > >>> _DllUnregisterServer(at)0
>> > >>> Use --enable-stdcall-fixup to disable these warnings
>> > >>> Use --disable-stdcall-fixup to disable these fixups
>> > >>> Warning: resolving _DllRegisterServer by linking to _DllRegisterServer(at)0
>> > >>> Warning: resolving _DllUnregisterServer by linking to
>> > >>> _DllUnregisterServer(at)0
>> > >>> Use --enable-stdcall-fixup to disable these warnings
>> > >>> Use --disable-stdcall-fixup to disable these fixups
>> > >>> Warning: resolving _DllRegisterServer by linking to _DllRegisterServer(at)0
>> > >>>
>> > >>> What do we have to do to clean this stuff up?
>> > >
>> > > I was solved for Marko-san at the time of the work of pgbouncer, and
>> > > obtained the solution.
>> > > The patch is this.
>> >
>> >
>> > This appears to be exactly what you are *not* supposed to do. Which is
>> > assign an ordinal. See:
>> > http://msdn.microsoft.com/en-us/library/8e705t74(VS.71).aspx
>>
>>
>> AFAICS by default the mingw assigns the ordinal anyway?
>>
>> So whats your point?
>
> FWIW, I experimented with various approaches on DLL generation,
> and my theory is now that numeric slot is mandatory for export,
> name slot optional. And what the above link above warns about
> is that if you manually assign a numeric slot, you may create gaps in
> slot table, thus resulting in larger image. But this assumes
> you already have slots that are manually assigned, which should
> not happen with pgevent.dll.
>
> Does it sound sane?
>
> With pgbouncer I used "dlltool --export-all-symbols -A" to generate
> the .def file, thus the slots are actually assigned automatically
> by dlltool, so no gap problems should arise. As Postgres does not
> generate .def automatically, thus Hiroshi simply posted the resulting
> .def file, which should not have gap problems.
>
> But such detailed .def avoids the confusing warnings from dllwrap.
> If you are worried about gap problems I suggest instead doing the
> same and making the .def file auto-generated.
>
> --
> marko
>
> ps. I suggest also tagging the "g_module" as static.
>
> --
> Sent via pgsql-hackers mailing list (pgsql-hackers(at)postgresql(dot)org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-hackers

Attachment Content-Type Size
pgevent_def_patch application/octet-stream 1.8 KB

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Andrew Dunstan 2009-02-01 02:41:40 Re: adding stuff to parser, question
Previous Message Grzegorz Jaskiewicz 2009-02-01 02:27:04 Re: adding stuff to parser, question