Skip site navigation (1) Skip section navigation (2)

Re: BCC55 and libpq 8.2

From: Bruce Momjian <bruce(at)momjian(dot)us>
To: L Bayuk <lbayuk(at)pobox(dot)com>
Cc: pgsql-interfaces(at)postgresql(dot)org
Subject: Re: BCC55 and libpq 8.2
Date: 2007-01-09 03:48:02
Message-ID: 200701090348.l093m2w03835@momjian.us (view raw or flat)
Thread:
Lists: pgsql-interfacespgsql-patches
L Bayuk wrote:
> On Mon, Jan 08, 2007 at 10:54:23AM -0500, Bruce Momjian wrote:
> > L Bayuk wrote:
> > >...
> > > 1. In the past, I've had to define "inline" to nothing...
> > We adjusted inline for 8.2 so I figured you will need to retest this
> > before we add it.
> 
> Tested and works as is in 8.2.0. No need to #define inline (as nothing).
> 
> >...
> > > 3. To build libpq with BCC for use with pgtcl-ng, I had to add "-c" to the
> > > LINK32_FLAGS (makes symbols case sensitive, due to PQflush() vs pqFlush()
> > > if I recall), and change the runtime library from cw32mti.lib to cw32mt.lib
> > > (static version). I don't know if these are specific to linking with Tcl
> > > libraries, but I can't see it would hurt anyone else. Can I include these
> > > in the patch?
> > 
> > I did some research and it seems the MS linker is case-sensitive by
> > default, while BCC is case-insensitive by default, so that -c option is
> > something we definately should add to the bcc makefile.
> 
> I think I was wrong. According to the Borland Linker documentation, -c
> defaults on (case sensitive). But when I link without -c, it warns about
> pqFlush vs PQflush.  Confusing. I'm going to try it again, both ways.

Ah, interesting.

> Why are there two functions anyway? I suppose historical reasons.
> Since PQflush(c) is { return pqFlush(c); } I guess if the linker gets
> the case thing wrong we loop until overrunning the stack.

Yes, I assume historical, so feel free to add -c, but add a
documentation comment about it so we remember.

> I would also prefer to use cm32mt.lib; it makes blibpq.dll bigger but
> otherwise it requires another DLL at runtime, I think (cw3250mt.dll).

Sure.

> > > I will try your patch, and look into the inline thing as soon as I can,
> > > perhaps Monday.
> > 
> > Great.  Just send me a patch that works on your setup and I will apply
> > it.  Thanks.
> 
> Don't apply your patch. There is an extra #endif in port/win32.h after the
> patch which breaks it. I will fix, add the psql/bcc32.mak stuff, test it,
> and post it on [PATCHES].

OK, great.  Thanks.

-- 
  Bruce Momjian   bruce(at)momjian(dot)us
  EnterpriseDB    http://www.enterprisedb.com

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

In response to

Responses

pgsql-patches by date

Next:From: Tom LaneDate: 2007-01-09 05:57:47
Subject: Re: README for vcbuild
Previous:From: Bruce MomjianDate: 2007-01-09 03:15:26
Subject: Re: [HACKERS] SGML index build fix

pgsql-interfaces by date

Next:From: Brijesh ShrivastavDate: 2007-01-09 17:30:22
Subject: Inserting data a UDT in binary format using LIBPQ
Previous:From: L BayukDate: 2007-01-09 00:34:08
Subject: Re: BCC55 and libpq 8.2

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group