Re: Makefiles for Borland C 5.5 compiler - Mailing list pgsql-patches
From | Bruce Momjian |
---|---|
Subject | Re: Makefiles for Borland C 5.5 compiler |
Date | |
Msg-id | 200212302050.gBUKoCR18124@candle.pha.pa.us Whole thread Raw |
List | 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@candle.pha.pa.us> > To: "Lester Godwin" <godwin@pushcorp.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@candle.pha.pa.us> > > > To: "Lester Godwin" <godwin@pushcorp.com> > > > Cc: <pgsql-patches@postgresql.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@candle.pha.pa.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@candle.pha.pa.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 : > > + -@erase "$(INTDIR)\command.obj" > > + -@erase "$(INTDIR)\common.obj" > > + -@erase "$(INTDIR)\help.obj" > > + -@erase "$(INTDIR)\input.obj" > > + -@erase "$(INTDIR)\stringutils.obj" > > + -@erase "$(INTDIR)\mainloop.obj" > > + -@erase "$(INTDIR)\copy.obj" > > + -@erase "$(INTDIR)\startup.obj" > > + -@erase "$(INTDIR)\prompt.obj" > > + -@erase "$(INTDIR)\sprompt.obj" > > + -@erase "$(INTDIR)\variables.obj" > > + -@erase "$(INTDIR)\large_obj.obj" > > + -@erase "$(INTDIR)\print.obj" > > + -@erase "$(INTDIR)\describe.obj" > > + -@erase "$(INTDIR)\tab-complete.obj" > > + -@erase "$(INTDIR)\getopt.obj" > > + -@erase "$(INTDIR)\mbprint.obj" > > + -@erase "$(INTDIR)\psql.ilc" > > + -@erase "$(INTDIR)\psql.ild" > > + -@erase "$(INTDIR)\psql.tds" > > + -@erase "$(INTDIR)\psql.ils" > > + -@erase "$(INTDIR)\psql.ilf" > > + -@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 : > > + -@erase "$(INTDIR)\dllist.obj" > > + -@erase "$(INTDIR)\md5.obj" > > + -@erase "$(INTDIR)\fe-auth.obj" > > + -@erase "$(INTDIR)\fe-connect.obj" > > + -@erase "$(INTDIR)\fe-exec.obj" > > + -@erase "$(INTDIR)\fe-lobj.obj" > > + -@erase "$(INTDIR)\fe-misc.obj" > > + -@erase "$(INTDIR)\fe-print.obj" > > + -@erase "$(INTDIR)\fe-secure.obj" > > + -@erase "$(INTDIR)\pqexpbuffer.obj" > > + -@erase "$(OUTDIR)\libpqdll.obj" > > + -@erase "$(OUTDIR)\win32.obj" > > + -@erase "$(INTDIR)\wchar.obj" > > + -@erase "$(INTDIR)\encnames.obj" > > + -@erase "$(OUTDIR)\libpq.res" > > + -@erase "$(OUTDIR)\blibpq.lib" > > + -@erase "$(OUTDIR)\blibpqdll.lib" > > + -@erase "$(OUTDIR)\blibpq.dll" > > + -@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@candle.pha.pa.us | (610) 359-1001 + If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania 19073
pgsql-patches by date: