From: | Alvaro Herrera <alvherre(at)2ndquadrant(dot)com> |
---|---|
To: | Michael Paquier <michael(at)paquier(dot)xyz> |
Cc: | Peter Eisentraut <peter(dot)eisentraut(at)2ndquadrant(dot)com>, pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: Clean up MinGW def file generation |
Date: | 2019-10-18 12:07:58 |
Message-ID: | 20191018120758.GA1661@alvherre.pgsql |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On 2019-Oct-17, Michael Paquier wrote:
> On Tue, Oct 15, 2019 at 09:00:23AM +0200, Peter Eisentraut wrote:
> > I think we can clean this up and just have the regular ddl.def built
> > normally at build time if required.
> >
> > Does anyone know more about this?
>
> This comes from here, but I cannot see a thread about this topic
> around this date:
> commit: a1d5d8574751d62a039d8ceb44329ee7c637196a
> author: Peter Eisentraut <peter_e(at)gmx(dot)net>
> date: Tue, 26 Feb 2008 06:41:24 +0000
> Refactor the code that creates the shared library export files to appear
> only once in Makefile.shlib and not in four copies.
Well, yes, but that code originates from much earlier. For example
2a63c1602d9d (Tom Lane, Oct. 2004) is the one that created the libpq
ones. But even that ancient one seems to be just refactoring some stuff
that was already there, namely something that seems to have been created
by commit 53cd7cd8a916:
commit 53cd7cd8a9168d4b2e2feb52129336429cc99b98
Author: Bruce Momjian <bruce(at)momjian(dot)us>
AuthorDate: Tue Mar 9 04:53:37 2004 +0000
CommitDate: Tue Mar 9 04:53:37 2004 +0000
Make a separate win32 debug DLL along with the non-debug version:
Currently, src/interfaces/libpq/win32.mak builds a statically-linked
library "libpq.lib", a debug dll "libpq.dll", import library for the
debug dll "libpqdll.lib", a release dll "libpq.dll", import library for
the release dll "libpqdll.lib". To avoid naming clashes, I would make
the debug dll and import libraries "libpqd.dll" and "libpqddll.lib".
Basically, the debug build uses the cl flags: "/MDd /D _DEBUG", and the
release build uses the cl flags "/MD /D NDEBUG". Usually the debug
build has a "D" suffix on the file name, so for example:
libpqd.dll libpq, debug build
libpqd.lib libpq, debug build, import library
libpq.dll libpq, release build
libpq.lib libpq, release build, import library
David Turner
This stuff was used by win32.mak, but I don't know if that tells anyone
anything.
--
Álvaro Herrera https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
From | Date | Subject | |
---|---|---|---|
Next Message | Stephen Frost | 2019-10-18 12:18:20 | Re: Proposal: Make use of C99 designated initialisers for nulls/values arrays |
Previous Message | Amit Kapila | 2019-10-18 12:01:58 | Re: PATCH: logical_work_mem and logical streaming of large in-progress transactions |