From: | Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us> |
---|---|
To: | Lester Godwin <godwin(at)pushcorp(dot)com> |
Cc: | PostgreSQL-patches <pgsql-patches(at)postgresql(dot)org> |
Subject: | Re: Makefiles for Borland C 5.5 compiler |
Date: | 2002-12-30 20:50:12 |
Message-ID: | 200212302050.gBUKoCR18124@candle.pha.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-patches |
Thank you. Patch applied.
---------------------------------------------------------------------------
Lester Godwin wrote:
> Here's a patch that doesn't include the startup.c modifications.
> Thanks,
> LG
>
> ----- Original Message -----
> From: "Bruce Momjian" <pgman(at)candle(dot)pha(dot)pa(dot)us>
> To: "Lester Godwin" <godwin(at)pushcorp(dot)com>
> Sent: Monday, December 30, 2002 10:58 AM
> Subject: Re: Makefiles for Borland C 5.5 compiler
>
>
> >
> > OK, I tried to apply this patch, but it doesn't look right. I removed
> > the duplicate files you supplied, but I see this:
> >
> > + +-"$(**: =" &^
> > + +-")"
> > + !
> >
> > and some additional single line '!' entries. Is this correct? Can you
> > send a fixed patch?
> >
> > --------------------------------------------------------------------------
> -
> >
> > Lester Godwin wrote:
> > > The reason that psql/startup.c is included is because I added a small
> > > snipet of code:
> > >
> > > A small helper function:
> > >
> > > >#ifdef BCC32_STATIC
> > > >void winsock_cleanup(void)
> > > >{
> > > > WSACleanup();
> > > > return;
> > > >}
> > > >#endif
> > >
> > > And at the beginning of main():
> > >
> > > >#ifdef BCC32_STATIC
> > > >WSADATA wsaData;
> > > >
> > > >if (WSAStartup(MAKEWORD(1, 1), &wsaData))
> > > > {
> > > > fprintf(stderr, gettext("Error initializing Winsock Library\n"));
> > > > exit(EXIT_FAILURE);
> > > > }
> > > >
> > > > atexit(winsock_cleanup);
> > > >#endif
> > >
> > > to initialize and uninitialize the WINSOCK library when
> > > psql is compiled with the static Borland libpq library. Similar
> > > code is executed automatically in the DLL upon loading and unloading.
> > > Feel free to remove the file if you wish. It is just convenient for
> > > me to use a fully static linked, exe for psql. Also, I believe that
> > > this code should work with static linking in the MS Visual C
> > > environment as well.
> > >
> > > LG
> > >
> > >
> > > ----- Original Message -----
> > > From: "Bruce Momjian" <pgman(at)candle(dot)pha(dot)pa(dot)us>
> > > To: "Lester Godwin" <godwin(at)pushcorp(dot)com>
> > > Cc: <pgsql-patches(at)postgresql(dot)org>
> > > Sent: Sunday, December 29, 2002 10:43 PM
> > > Subject: Re: Makefiles for Borland C 5.5 compiler
> > >
> > >
> > > >
> > > > I am confused by this patch because it has new copies of
> psql/startup.c.
> > > > Is that desired? Can you send a new tarball?
> > > >
> > >
> > --------------------------------------------------------------------------
> > > -
> > > >
> > > > Lester Godwin wrote:
> > > > > Attached is a patch to provide makefiles, etc. to allow the
> compilation
> > > of
> > > > > the libpq interface static and dynamic libraries with the freely
> > > > > downloadable Borland C++ compiler version 5.5 and/or C++ Builder.
> Also
> > > > > included is a makefile that will build psql with static and/or
> dynamic
> > > link
> > > > > libraries. **NOTE** due to naming differences between Borland and
> MS,
> > > the
> > > > > Borland produced DLL can only be used with Borland compiled EXE's!
> If
> > > > > someone knows how to get around the naming differences and produce
> an
> > > exact
> > > > > replacement for the libpq.dll that would be compatible with existing
> > > Visual
> > > > > C++ apps, it may be of interest.
> > > > >
> > > > > Note that this diff is based on 7.3 tarball, not CVS HEAD, or 7.3rel
> > > branch.
> > > > >
> > > > > Lester Godwin
> > > > >
> > > >
> > > > [ Attachment, skipping... ]
> > > >
> > > > --
> > > > Bruce Momjian | http://candle.pha.pa.us
> > > > pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 359-1001
> > > > + If your life is a hard drive, | 13 Roberts Road
> > > > + Christ can be your backup. | Newtown Square, Pennsylvania
> > > 19073
> > >
> > >
> >
> > --
> > Bruce Momjian | http://candle.pha.pa.us
> > pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 359-1001
> > + If your life is a hard drive, | 13 Roberts Road
> > + Christ can be your backup. | Newtown Square, Pennsylvania
> 19073
> >
>
>
> ----------------------------------------------------------------------------
> ----
>
>
> > diff -r -N -C 3 ../postgresql-7.3/src/bcc32.mak ./src/bcc32.mak
> > *** ../postgresql-7.3/src/bcc32.mak Wed Dec 31 18:00:00 1969
> > --- ./src/bcc32.mak Thu Dec 12 14:36:32 2002
> > ***************
> > *** 0 ****
> > --- 1,51 ----
> > + # $Header: /cvsroot/pgsql-server/src/win32.mak,v 1.8 2002/09/03 21:45:41
> petere Exp $
> > +
> > + # Makefile for Borland C++ 5.5 (or compat)
> > + # Top-file makefile for Win32 parts of postgresql.
> > + # Note that most parts are not ported to Win32!
> > +
> > + !IF "$(CFG)" != "Release" && "$(CFG)" != "Debug"
> > + !MESSAGE Invalid configuration "$(CFG)" specified.
> > + !MESSAGE You can specify a configuration when running MAKE
> > + !MESSAGE by defining the macro CFG on the command line. For example:
> > + !MESSAGE
> > + !MESSAGE make -DCFG=[Release | Debug] /f bcc32.mak
> > + !MESSAGE
> > + !MESSAGE Possible choices for configuration are:
> > + !MESSAGE
> > + !MESSAGE "Release" (Win32 Release )
> > + !MESSAGE "Debug" (Win32 Debug)
> > + !MESSAGE
> > + !ENDIF
> > +
> > + !IF "$(OS)" == "Windows_NT"
> > + NULL=
> > + !ELSE
> > + NULL=nul
> > + !ENDIF
> > +
> > + ALL:
> > + cd include
> > + if not exist pg_config.h copy pg_config.h.win32 pg_config.h
> > + cd ..
> > + cd interfaces\libpq
> > + make -DCFG=$(CFG) /f bcc32.mak
> > + cd ..\..\bin\psql
> > + make -DCFG=$(CFG) /f bcc32.mak
> > + cd ..\..
> > + echo All Win32 parts have been built!
> > +
> > + CLEAN:
> > + cd interfaces\libpq
> > + make -DCFG=Release /f bcc32.mak CLEAN
> > + make -DCFG=Debug /f bcc32.mak CLEAN
> > + cd ..\..\bin\psql
> > + make -DCFG=Release /f bcc32.mak CLEAN
> > + make -DCFG=Debug /f bcc32.mak CLEAN
> > + cd ..\..
> > + echo All Win32 parts have been cleaned!
> > +
> > + DISTCLEAN: CLEAN
> > + cd include
> > + del config.h
> > + cd ..
> > diff -r -N -C 3 ../postgresql-7.3/src/bin/psql/bcc32.mak
> ./src/bin/psql/bcc32.mak
> > *** ../postgresql-7.3/src/bin/psql/bcc32.mak Wed Dec 31 18:00:00 1969
> > --- ./src/bin/psql/bcc32.mak Thu Dec 12 14:38:10 2002
> > ***************
> > *** 0 ****
> > --- 1,136 ----
> > + # Makefile for Borland C++ 5.5
> > + # Borland C++ base install directory goes here
> > + BCB=d:\Borland\Bcc55
> > +
> > + !MESSAGE Building PSQL.EXE ...
> > + !MESSAGE
> > + !IF "$(CFG)" == ""
> > + CFG=Release
> > + !MESSAGE No configuration specified. Defaulting to Release with STATIC
> libraries.
> > + !MESSAGE To use dynamic link libraries add -DDLL_LIBS to make command
> line.
> > + !MESSAGE
> > + !ELSE
> > + !MESSAGE Configuration "$(CFG)"
> > + !MESSAGE
> > + !ENDIF
> > +
> > + !IF "$(CFG)" != "Release" && "$(CFG)" != "Debug"
> > + !MESSAGE Invalid configuration "$(CFG)" specified.
> > + !MESSAGE You can specify a configuration when running MAKE
> > + !MESSAGE by defining the macro CFG on the command line. For example:
> > + !MESSAGE
> > + !MESSAGE make -DCFG=[Release | Debug] /f bcc32.mak
> > + !MESSAGE
> > + !MESSAGE Possible choices for configuration are:
> > + !MESSAGE
> > + !MESSAGE "Release" (Win32 Release EXE)
> > + !MESSAGE "Debug" (Win32 Debug EXE)
> > + !MESSAGE
> > + !ERROR An invalid configuration was specified.
> > + !ENDIF
> > +
> > + !IF "$(OS)" == "Windows_NT"
> > + NULL=
> > + !ELSE
> > + NULL=nul
> > + !ENDIF
> > +
> > + CPP=bcc32.exe
> > +
> > + !IF "$(CFG)" == "Debug"
> > + DEBUG=1
> > + OUTDIR=.\Debug
> > + INTDIR=.\Debug
> > + !else
> > + OUTDIR=.\Release
> > + INTDIR=.\Release
> > + !endif
> > +
> > + .path.obj = $(INTDIR)
> > +
> > + .c.obj:
> > + $(CPP) -o"$(INTDIR)\$&" $(CPP_PROJ) $<
> > +
> > + ALL : "$(OUTDIR)\psql.exe"
> > +
> > + CLEAN :
> > + -(at)erase "$(INTDIR)\command.obj"
> > + -(at)erase "$(INTDIR)\common.obj"
> > + -(at)erase "$(INTDIR)\help.obj"
> > + -(at)erase "$(INTDIR)\input.obj"
> > + -(at)erase "$(INTDIR)\stringutils.obj"
> > + -(at)erase "$(INTDIR)\mainloop.obj"
> > + -(at)erase "$(INTDIR)\copy.obj"
> > + -(at)erase "$(INTDIR)\startup.obj"
> > + -(at)erase "$(INTDIR)\prompt.obj"
> > + -(at)erase "$(INTDIR)\sprompt.obj"
> > + -(at)erase "$(INTDIR)\variables.obj"
> > + -(at)erase "$(INTDIR)\large_obj.obj"
> > + -(at)erase "$(INTDIR)\print.obj"
> > + -(at)erase "$(INTDIR)\describe.obj"
> > + -(at)erase "$(INTDIR)\tab-complete.obj"
> > + -(at)erase "$(INTDIR)\getopt.obj"
> > + -(at)erase "$(INTDIR)\mbprint.obj"
> > + -(at)erase "$(INTDIR)\psql.ilc"
> > + -(at)erase "$(INTDIR)\psql.ild"
> > + -(at)erase "$(INTDIR)\psql.tds"
> > + -(at)erase "$(INTDIR)\psql.ils"
> > + -(at)erase "$(INTDIR)\psql.ilf"
> > + -(at)erase "$(OUTDIR)\psql.exe"
> > +
> > + "$(OUTDIR)" :
> > + if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
> > +
> > + USERDEFINES = WIN32;_CONSOLE;_MBCS;HAVE_STRDUP
> > +
> > +
> # --------------------------------------------------------------------------
> -
> > + CPP_PROJ
> = -I$(BCB)\include;..\..\include;..\..\interfaces\libpq -c -D$(USERDEFINES)
> -tWM -tWC \
> > + -q -5 -a8 -pc -X -w-use -w-par -w-pia -w-csu -w-aus -w-ccc
> > +
> > + !IFDEF DEBUG
> > + CPP_PROJ = $(CPP_PROJ) -Od -r- -k -v -y -vi- -D_DEBUG
> > + LIBPG_DIR = Debug
> > + !ELSE
> > + CPP_PROJ = $(CPP_PROJ) -O -Oi -OS -DNDEBUG
> > + LIBPG_DIR = Release
> > + !ENDIF
> > +
> > + !IFDEF DLL_LIBS
> > + CPP_PROJ = $(CPP_PROJ) -D_RTLDLL
> > + LIBRARIES = cw32mti.lib
> ..\..\interfaces\libpq\$(LIBPG_DIR)\blibpqdll.lib
> > + !ELSE
> > + CPP_PROJ = $(CPP_PROJ) -DBCC32_STATIC
> > + LIBRARIES = cw32mt.lib ..\..\interfaces\libpq\$(LIBPG_DIR)\blibpq.lib
> > + !ENDIF
> > +
> > + LINK32=ilink32.exe
> > + LINK32_FLAGS=-L$(BCB)\lib;.\$(LIBPG_DIR) -x -v
> > + LINK32_OBJS= \
> > + command.obj \
> > + common.obj \
> > + help.obj \
> > + input.obj \
> > + stringutils.obj \
> > + mainloop.obj \
> > + copy.obj \
> > + startup.obj \
> > + prompt.obj \
> > + sprompt.obj \
> > + variables.obj \
> > + large_obj.obj \
> > + print.obj \
> > + describe.obj \
> > + tab-complete.obj \
> > + getopt.obj \
> > + mbprint.obj
> > +
> > +
> > + "$(OUTDIR)\psql.exe" : "$(OUTDIR)" $(LINK32_OBJS)
> > + $(LINK32) @&&!
> > + $(LINK32_FLAGS) +
> > + c0x32.obj $(LINK32_OBJS), +
> > + $@,, +
> > + import32.lib $(LIBRARIES),,
> > + !
> > +
> > + getopt.obj : "$(OUTDIR)" ..\..\port\getopt.c
> > diff -r -N -C 3 ../postgresql-7.3/src/bin/psql/startup.c
> ./src/bin/psql/startup.c
> > *** ../postgresql-7.3/src/bin/psql/startup.c Fri Oct 18 17:05:36 2002
> > --- ./src/bin/psql/startup.c Thu Dec 12 14:52:49 2002
> > ***************
> > *** 83,88 ****
> > --- 83,95 ----
> > printSSLInfo(void);
> > #endif
> >
> > + #ifdef BCC32_STATIC
> > + void winsock_cleanup(void)
> > + {
> > + WSACleanup();
> > + return;
> > + }
> > + #endif
> >
> > /*
> > *
> > ***************
> > *** 98,103 ****
> > --- 105,122 ----
> > char *username = NULL;
> > char *password = NULL;
> > bool need_pass;
> > +
> > + #ifdef BCC32_STATIC
> > + WSADATA wsaData;
> > +
> > + if (WSAStartup(MAKEWORD(1,1),&wsaData))
> > + {
> > + fpritnf(stderr,gettext("Error initializing WINSOCK library!\n"));
> > + exit(EXIT_FAILURE);
> > + }
> > +
> > + atexit(winsock_cleanup);
> > + #endif
> >
> > setlocale(LC_ALL, "");
> > #ifdef ENABLE_NLS
> > diff -r -N -C 3 ../postgresql-7.3/src/interfaces/libpq/bcc32.mak
> ./src/interfaces/libpq/bcc32.mak
> > *** ../postgresql-7.3/src/interfaces/libpq/bcc32.mak Wed Dec 31 18:00:00
> 1969
> > --- ./src/interfaces/libpq/bcc32.mak Thu Dec 12 14:37:10 2002
> > ***************
> > *** 0 ****
> > --- 1,141 ----
> > + # Makefile for Borland C++ 5.5
> > +
> > + # Will build a Win32 static library libpq.lib
> > + # and a Win32 dynamic library libpq.dll with import library
> libpqdll.lib
> > +
> > + # Borland C++ base install directory goes here
> > + BCB=d:\Borland\Bcc55
> > +
> > + !MESSAGE Building the Win32 DLL and Static Library...
> > + !MESSAGE
> > + !IF "$(CFG)" == ""
> > + CFG=Release
> > + !MESSAGE No configuration specified. Defaulting to Release.
> > + !MESSAGE
> > + !ELSE
> > + !MESSAGE Configuration "$(CFG)"
> > + !MESSAGE
> > + !ENDIF
> > +
> > + !IF "$(CFG)" != "Release" && "$(CFG)" != "Debug"
> > + !MESSAGE Invalid configuration "$(CFG)" specified.
> > + !MESSAGE You can specify a configuration when running MAKE
> > + !MESSAGE by defining the macro CFG on the command line. For example:
> > + !MESSAGE
> > + !MESSAGE make -DCFG=[Release | Debug] /f bcc32.mak
> > + !MESSAGE
> > + !MESSAGE Possible choices for configuration are:
> > + !MESSAGE
> > + !MESSAGE "Release" (Win32 Release DLL and Static Library)
> > + !MESSAGE "Debug" (Win32 Debug DLL and Static Library)
> > + !MESSAGE
> > + !ERROR An invalid configuration was specified.
> > + !ENDIF
> > +
> > + !IF "$(OS)" == "Windows_NT"
> > + NULL=
> > + !ELSE
> > + NULL=nul
> > + !ENDIF
> > +
> > + !IF "$(CFG)" == "Debug"
> > + DEBUG=1
> > + OUTDIR=.\Debug
> > + INTDIR=.\Debug
> > + !else
> > + OUTDIR=.\Release
> > + INTDIR=.\Release
> > + !endif
> > +
> > + USERDEFINES=FRONTEND;NDEBUG;WIN32;_WINDOWS;HAVE_VSNPRINTF;HAVE_STRDUP;
> > +
> > + CPP=bcc32.exe
> > + CPP_PROJ = -I$(BCB)\include;..\..\include -WD -c -D$(USERDEFINES) -tWM \
> > + -a8 -X -w-use -w-par -w-pia -w-csu -w-aus -w-ccc
> > +
> > + !IFDEF DEBUG
> > + CPP_PROJ = $(CPP_PROJ) -Od -r- -k -v -y -vi- -D_DEBUG
> > + !else
> > + CPP_PROJ = $(CPP_PROJ) -O -Oi -OS -DNDEBUG
> > + !endif
> > +
> > + LIB32=tlib.exe
> > + LIB32_FLAGS=
> > + LIB32_OBJS= \
> > + "$(OUTDIR)\win32.obj" \
> > + "$(INTDIR)\dllist.obj" \
> > + "$(INTDIR)\md5.obj" \
> > + "$(INTDIR)\fe-auth.obj" \
> > + "$(INTDIR)\fe-connect.obj" \
> > + "$(INTDIR)\fe-exec.obj" \
> > + "$(INTDIR)\fe-lobj.obj" \
> > + "$(INTDIR)\fe-misc.obj" \
> > + "$(INTDIR)\fe-print.obj" \
> > + "$(INTDIR)\fe-secure.obj" \
> > + "$(INTDIR)\pqexpbuffer.obj" \
> > + "$(INTDIR)\wchar.obj" \
> > + "$(INTDIR)\encnames.obj"
> > +
> > + RSC=brcc32.exe
> > + RSC_PROJ=/l 0x409 /fo"$(INTDIR)\libpq.res"
> > +
> > + LINK32=ilink32.exe
> > + LINK32_FLAGS = -Gn -L$(BCB)\lib;$(INTDIR); -x -Tpd -v
> > + LINK32_OBJS= "$(INTDIR)\libpqdll.obj"
> > +
> > +
> # --------------------------------------------------------------------------
> -
> > +
> > + .path.obj = $(INTDIR)
> > + .path.c = .;..\..\backend\libpq;..\..\backend\lib;..\..\backend\utils\mb
> > +
> > +
> # --------------------------------------------------------------------------
> -
> > +
> > + ALL: "$(OUTDIR)" "$(OUTDIR)\blibpq.dll" "$(OUTDIR)\blibpq.lib"
> > +
> > + CLEAN :
> > + -(at)erase "$(INTDIR)\dllist.obj"
> > + -(at)erase "$(INTDIR)\md5.obj"
> > + -(at)erase "$(INTDIR)\fe-auth.obj"
> > + -(at)erase "$(INTDIR)\fe-connect.obj"
> > + -(at)erase "$(INTDIR)\fe-exec.obj"
> > + -(at)erase "$(INTDIR)\fe-lobj.obj"
> > + -(at)erase "$(INTDIR)\fe-misc.obj"
> > + -(at)erase "$(INTDIR)\fe-print.obj"
> > + -(at)erase "$(INTDIR)\fe-secure.obj"
> > + -(at)erase "$(INTDIR)\pqexpbuffer.obj"
> > + -(at)erase "$(OUTDIR)\libpqdll.obj"
> > + -(at)erase "$(OUTDIR)\win32.obj"
> > + -(at)erase "$(INTDIR)\wchar.obj"
> > + -(at)erase "$(INTDIR)\encnames.obj"
> > + -(at)erase "$(OUTDIR)\libpq.res"
> > + -(at)erase "$(OUTDIR)\blibpq.lib"
> > + -(at)erase "$(OUTDIR)\blibpqdll.lib"
> > + -(at)erase "$(OUTDIR)\blibpq.dll"
> > + -(at)erase "$(OUTDIR)\blibpq.tds"
> > +
> > +
> > + "$(OUTDIR)" :
> > + @if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
> > +
> > + "$(OUTDIR)\blibpq.dll": "$(OUTDIR)\blibpq.lib" $(LINK32_OBJS)
> "$(INTDIR)\libpq.res" blibpqdll.def
> > + $(LINK32) @&&!
> > + $(LINK32_FLAGS) +
> > + c0d32.obj $(LINK32_OBJS), +
> > + $@,, +
> > + "$(OUTDIR)\blibpq.lib" import32.lib cw32mti.lib, +
> > + blibpqdll.def,"$(INTDIR)\libpq.res"
> > + !
> > + implib -a "$(OUTDIR)\blibpqdll.lib" blibpqdll.def $@
> > +
> > + "$(INTDIR)\libpq.res" : "$(INTDIR)" libpq.rc
> > + $(RSC) $(RSC_PROJ) libpq.rc
> > +
> > + "$(OUTDIR)\blibpq.lib": $(LIB32_OBJS)
> > + $(LIB32) $@ @&&!
> > + +-"$(**: =" &^
> > + +-")"
> > + !
> > +
> > + .c.obj:
> > + $(CPP) -o"$(INTDIR)\$&" $(CPP_PROJ) $<
> > +
> > diff -r -N -C 3 ../postgresql-7.3/src/interfaces/libpq/blibpqdll.def
> ./src/interfaces/libpq/blibpqdll.def
> > *** ../postgresql-7.3/src/interfaces/libpq/blibpqdll.def Wed Dec 31
> 18:00:00 1969
> > --- ./src/interfaces/libpq/blibpqdll.def Thu Dec 12 14:37:20 2002
> > ***************
> > *** 0 ****
> > --- 1,95 ----
> > + LIBRARY BLIBPQ
> > + EXPORTS
> > + _PQconnectdb @ 1
> > + _PQsetdbLogin @ 2
> > + _PQconndefaults @ 3
> > + _PQfinish @ 4
> > + _PQreset @ 5
> > + _PQrequestCancel @ 6
> > + _PQdb @ 7
> > + _PQuser @ 8
> > + _PQpass @ 9
> > + _PQhost @ 10
> > + _PQport @ 11
> > + _PQtty @ 12
> > + _PQoptions @ 13
> > + _PQstatus @ 14
> > + _PQerrorMessage @ 15
> > + _PQsocket @ 16
> > + _PQbackendPID @ 17
> > + _PQtrace @ 18
> > + _PQuntrace @ 19
> > + _PQsetNoticeProcessor @ 20
> > + _PQexec @ 21
> > + _PQnotifies @ 22
> > + _PQsendQuery @ 23
> > + _PQgetResult @ 24
> > + _PQisBusy @ 25
> > + _PQconsumeInput @ 26
> > + _PQgetline @ 27
> > + _PQputline @ 28
> > + _PQgetlineAsync @ 29
> > + _PQputnbytes @ 30
> > + _PQendcopy @ 31
> > + _PQfn @ 32
> > + _PQresultStatus @ 33
> > + _PQntuples @ 34
> > + _PQnfields @ 35
> > + _PQbinaryTuples @ 36
> > + _PQfname @ 37
> > + _PQfnumber @ 38
> > + _PQftype @ 39
> > + _PQfsize @ 40
> > + _PQfmod @ 41
> > + _PQcmdStatus @ 42
> > + _PQoidStatus @ 43
> > + _PQcmdTuples @ 44
> > + _PQgetvalue @ 45
> > + _PQgetlength @ 46
> > + _PQgetisnull @ 47
> > + _PQclear @ 48
> > + _PQmakeEmptyPGresult @ 49
> > + _PQprint @ 50
> > + _PQdisplayTuples @ 51
> > + _PQprintTuples @ 52
> > + _lo_open @ 53
> > + _lo_close @ 54
> > + _lo_read @ 55
> > + _lo_write @ 56
> > + _lo_lseek @ 57
> > + _lo_creat @ 58
> > + _lo_tell @ 59
> > + _lo_unlink @ 60
> > + _lo_import @ 61
> > + _lo_export @ 62
> > + _pgresStatus @ 63
> > + _PQmblen @ 64
> > + _PQresultErrorMessage @ 65
> > + _PQresStatus @ 66
> > + _termPQExpBuffer @ 67
> > + _appendPQExpBufferChar @ 68
> > + _initPQExpBuffer @ 69
> > + _resetPQExpBuffer @ 70
> > + _PQoidValue @ 71
> > + _PQclientEncoding @ 72
> > + _PQenv2encoding @ 73
> > + _appendBinaryPQExpBuffer @ 74
> > + _appendPQExpBufferStr @ 75
> > + _destroyPQExpBuffer @ 76
> > + _createPQExpBuffer @ 77
> > + _PQconninfoFree @ 78
> > + _PQconnectPoll @ 79
> > + _PQconnectStart @ 80
> > + _PQflush @ 81
> > + _PQisnonblocking @ 82
> > + _PQresetPoll @ 83
> > + _PQresetStart @ 84
> > + _PQsetClientEncoding @ 85
> > + _PQsetnonblocking @ 86
> > + _PQfreeNotify @ 87
> > + _PQescapeString @ 88
> > + _PQescapeBytea @ 89
> > + _printfPQExpBuffer @ 90
> > + _appendPQExpBuffer @ 91
> > + _pg_encoding_to_char @ 92
> > + _pg_utf_mblen @ 93
> > diff -r -N -C 3 ../postgresql-7.3/src/interfaces/libpq/win32.h
> ./src/interfaces/libpq/win32.h
> > *** ../postgresql-7.3/src/interfaces/libpq/win32.h Thu Oct 3 12:09:42
> 2002
> > --- ./src/interfaces/libpq/win32.h Thu Dec 12 14:58:15 2002
> > ***************
> > *** 1,40 ****
> > ! #ifndef __win32_h_included
> > ! #define __win32_h_included
> > !
> > ! /*
> > ! * strcasecmp() is not in Windows, stricmp is, though
> > ! */
> > ! #define strcasecmp(a,b) stricmp(a,b)
> > ! #define strncasecmp(a,b,c) _strnicmp(a,b,c)
> > !
> > ! /*
> > ! * Some other compat functions
> > ! */
> > #define open(a,b,c) _open(a,b,c)
> > #define close(a) _close(a)
> > #define read(a,b,c) _read(a,b,c)
> > #define write(a,b,c) _write(a,b,c)
> > #define popen(a,b) _popen(a,b)
> > #define pclose(a) _pclose(a)
> > #define vsnprintf(a,b,c,d) _vsnprintf(a,b,c,d)
> > #define snprintf _snprintf
> > !
> > ! /*
> > ! * crypt not available (yet)
> > ! */
> > ! #define crypt(a,b) ((char *) a)
> > !
> > ! #undef EAGAIN /* doesn't apply on sockets */
> > ! #undef EINTR
> > ! #define EINTR WSAEINTR
> > ! #define EWOULDBLOCK WSAEWOULDBLOCK
> > ! #define ECONNRESET WSAECONNRESET
> > ! #define EINPROGRESS WSAEINPROGRESS
> > !
> > ! /*
> > ! * support for handling Windows Socket errors
> > ! */
> > ! extern const char *winsock_strerror(int eno);
> > !
> > !
> > ! #endif
> > --- 1,48 ----
> > ! #ifndef __win32_h_included
> > ! #define __win32_h_included
> > !
> > ! /*
> > ! * strcasecmp() is not in Windows, stricmp is, though
> > ! */
> > ! #define strcasecmp(a,b) stricmp(a,b)
> > ! #define strncasecmp(a,b,c) _strnicmp(a,b,c)
> > !
> > ! /*
> > ! * Some other compat functions
> > ! */
> > ! #ifdef __BORLANDC__
> > ! #define _timeb timeb
> > ! #define _ftime(a) ftime(a)
> > ! #define _strnicmp(a,b,c) strnicmp(a,b,c)
> > ! #define _errno errno
> > ! #else
> > #define open(a,b,c) _open(a,b,c)
> > #define close(a) _close(a)
> > #define read(a,b,c) _read(a,b,c)
> > #define write(a,b,c) _write(a,b,c)
> > + #endif
> > +
> > #define popen(a,b) _popen(a,b)
> > #define pclose(a) _pclose(a)
> > #define vsnprintf(a,b,c,d) _vsnprintf(a,b,c,d)
> > #define snprintf _snprintf
> > !
> > ! /*
> > ! * crypt not available (yet)
> > ! */
> > ! #define crypt(a,b) ((char *) a)
> > !
> > ! #undef EAGAIN /* doesn't apply on sockets */
> > ! #undef EINTR
> > ! #define EINTR WSAEINTR
> > ! #define EWOULDBLOCK WSAEWOULDBLOCK
> > ! #define ECONNRESET WSAECONNRESET
> > ! #define EINPROGRESS WSAEINPROGRESS
> > !
> > ! /*
> > ! * support for handling Windows Socket errors
> > ! */
> > ! extern const char *winsock_strerror(int eno);
> > !
> > !
> > ! #endif
> >
[ Attachment, skipping... ]
--
Bruce Momjian | http://candle.pha.pa.us
pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073
From | Date | Subject | |
---|---|---|---|
Next Message | Szekely Krisztian | 2003-01-01 23:16:21 | pg_resetxlog Hungarian message file |
Previous Message | Manfred Koizar | 2002-12-30 18:50:52 | Re: MOVE strangeness |