Received: from localhost (maia-5.hub.org [200.46.204.182]) by postgresql.org (Postfix) with ESMTP id C19699FB251 for ; Mon, 8 Jan 2007 23:48:12 -0400 (AST) Received: from postgresql.org ([200.46.204.71]) by localhost (mx1.hub.org [200.46.204.182]) (amavisd-new, port 10024) with ESMTP id 25924-07 for ; Mon, 8 Jan 2007 23:47:57 -0400 (AST) X-Greylist: from auto-whitelisted by SQLgrey-1.7.4 Received: from momjian.us (momjian.us [70.90.9.53]) by postgresql.org (Postfix) with ESMTP id 24DDC9FB22F for ; Mon, 8 Jan 2007 23:48:03 -0400 (AST) Received: (from bruce@localhost) by momjian.us (8.11.6/8.11.6) id l093m2w03835; Mon, 8 Jan 2007 22:48:02 -0500 (EST) From: Bruce Momjian Message-Id: <200701090348.l093m2w03835@momjian.us> Subject: Re: BCC55 and libpq 8.2 In-Reply-To: <20070109003408.GA341@mail.mindspring.com> To: L Bayuk Date: Mon, 8 Jan 2007 22:48:02 -0500 (EST) CC: pgsql-interfaces@postgresql.org X-Mailer: ELM [version 2.4ME+ PL123] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="US-ASCII" X-Virus-Scanned: Maia Mailguard 1.0.1 X-Archive-Number: 200701/9 X-Sequence-Number: 6387 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@momjian.us EnterpriseDB http://www.enterprisedb.com + If your life is a hard drive, Christ can be your backup. +