Re: Building Windows Server Extensions Using VC++ 2005

From: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
To: Magnus Hagander <mha(at)sollentuna(dot)net>
Cc: "Charles F(dot) I(dot) Savage" <cfis(at)interserv(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Building Windows Server Extensions Using VC++ 2005
Date: 2006-03-04 16:23:13
Message-ID: 200603041623.k24GNDS00518@candle.pha.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Magnus Hagander wrote:
> > > In pg_config.h:405 this is defined:
> > >
> > > /* Define to 1 if you have the <strings.h> header file. */ #define
> > > HAVE_STRINGS_H 1
> > >
> > > However, Visual Studio 2005 does not include this file. For a
> > > workaround I simply added it but that's a bit of hack.
> >
> > Ah, so even though you are using MSVC, you are using the
> > config file from MinGW. Easy fix, included in the patch
> > below, and applied for 8.2.
>
> Um, is WIN32_CLIENT_ONLY really defined when you're building a backend
> extension? That seems wrong.

Well, it is defined:

#if defined(_MSC_VER) || defined(__BORLANDC__)
#define WIN32_CLIENT_ONLY
#endif

> The whole problem seems to be the using of the pg_config.h from mingw
> when building with msvc. Why not just use the correct pg_config.h in the
> first place? What happens then?

We can't generate a pg_config.h for WIN32_CLIENT_ONLY because there is
no shell build environment.

> IIRC, there were other problems building extensions with MSVC - such as
> struct alignment and stuff. Not sure if that has been taken care of? If
> not, there really isn't much point in fixing the headers alone :-)

Well, I figure alignment would be based on the CPU, not the compiler,
but I might be wrong.

I added the capability, and why it was added, so if we decide the idea
is a failure, we know what to remove.

--
Bruce Momjian http://candle.pha.pa.us
SRA OSS, Inc. http://www.sraoss.com

+ If your life is a hard drive, Christ can be your backup. +

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2006-03-04 16:25:24 Re: problem with large maintenance_work_mem settings and
Previous Message Stefan Kaltenbrunner 2006-03-04 16:08:02 Re: problem with large maintenance_work_mem settings and