Re: problem in MS-VC6 environment. - Mailing list pgsql-patches
From | Bruce Momjian |
---|---|
Subject | Re: problem in MS-VC6 environment. |
Date | |
Msg-id | 200512081751.jB8HpCt19907@candle.pha.pa.us Whole thread Raw |
In response to | problem in MS-VC6 environment. ("Hiroshi Saito" <saito@inetrt.skcapi.co.jp>) |
List | pgsql-patches |
Patch applied to CVS HEAD and 8.1.X. Thanks. I used WIN32_CLIENT_ONLY rather than _MSC_VER because that covers both MSC and Borland C. Updated patch attached. --------------------------------------------------------------------------- Hiroshi Saito wrote: > Hi Dave-san and Bruce-san. > > I have the problem, when building by MS-VC6. > An error occurs in the 8.1.0 present source codes. > > nmake -f win32.mak > ..\..\port\getaddrinfo.c(244) : error C2065: 'WSA_NOT_ENOUGH_MEMORY' > ..\..\port\getaddrinfo.c(342) : error C2065: 'WSATYPE_NOT_FOUND' > > This is used by winsock2.h. However, Construction of a windows base is winsock.h. > Then, Since MinGW has special environment, this is right. but, it is not found in VC6. > Furthermore, in getaddrinfo.c, IPV6-API is used by LoadLibraryA("ws2_32"); > Referring to of dll the external memory generates this violation by VC6 specification. > > I considered whether the whole should have been converted into winsock2. > However, Now, DLL of MinGW creation operates wonderfully as it is. > That's right, it has pliability by replacement of simple DLL. > Then, I propose the system using winsock(non IPV6) in construction of VC6. > > By this patch, the construction by VC6 finished obediently. > > I may have some misapprehensions.Therefore, your suggestion is desired. > Thank you in advance for your understanding. > > Regards, > Hiroshi Saito > [ Attachment, skipping... ] > > ---------------------------(end of broadcast)--------------------------- > TIP 3: Have you checked our extensive FAQ? > > http://www.postgresql.org/docs/faq -- 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 Index: src/bin/pg_config/win32.mak =================================================================== RCS file: /cvsroot/pgsql/src/bin/pg_config/win32.mak,v retrieving revision 1.3 diff -c -c -r1.3 win32.mak *** src/bin/pg_config/win32.mak 27 Sep 2005 17:39:33 -0000 1.3 --- src/bin/pg_config/win32.mak 8 Dec 2005 17:47:49 -0000 *************** *** 55,61 **** LINK32=link.exe LINK32_FLAGS=kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib\ ! advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib\ odbccp32.lib wsock32.lib /nologo /subsystem:console /incremental:no\ /pdb:"$(OUTDIR)\pg_config.pdb" /machine:I386 $(LOPT) /out:"$(OUTDIR)\pg_config.exe" LINK32_OBJS= \ --- 55,61 ---- LINK32=link.exe LINK32_FLAGS=kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib\ ! advapi32.lib shell32.lib shfolder.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib\ odbccp32.lib wsock32.lib /nologo /subsystem:console /incremental:no\ /pdb:"$(OUTDIR)\pg_config.pdb" /machine:I386 $(LOPT) /out:"$(OUTDIR)\pg_config.exe" LINK32_OBJS= \ Index: src/include/getaddrinfo.h =================================================================== RCS file: /cvsroot/pgsql/src/include/getaddrinfo.h,v retrieving revision 1.17 diff -c -c -r1.17 getaddrinfo.h *** src/include/getaddrinfo.h 15 Oct 2005 02:49:41 -0000 1.17 --- src/include/getaddrinfo.h 8 Dec 2005 17:47:49 -0000 *************** *** 42,47 **** --- 42,51 ---- #define EAI_MEMORY (-10) #define EAI_SYSTEM (-11) #else /* WIN32 */ + #if defined(WIN32_CLIENT_ONLY) + #define WSA_NOT_ENOUGH_MEMORY (WSAENOBUFS) + #define WSATYPE_NOT_FOUND (WSABASEERR+109) + #endif #define EAI_AGAIN WSATRY_AGAIN #define EAI_BADFLAGS WSAEINVAL #define EAI_FAIL WSANO_RECOVERY Index: src/port/getaddrinfo.c =================================================================== RCS file: /cvsroot/pgsql/src/port/getaddrinfo.c,v retrieving revision 1.21 diff -c -c -r1.21 getaddrinfo.c *** src/port/getaddrinfo.c 15 Oct 2005 02:49:51 -0000 1.21 --- src/port/getaddrinfo.c 8 Dec 2005 17:47:50 -0000 *************** *** 40,45 **** --- 40,46 ---- #include <windows.h> + #if !defined(WIN32_CLIENT_ONLY) /* * The native routines may or may not exist on the Windows platform we are on, * so we dynamically look up the routines, and call them via function pointers. *************** *** 129,134 **** --- 130,136 ---- return (getaddrinfo_ptr != NULL); } #endif + #endif /* *************** *** 149,155 **** *psin; struct addrinfo hints; ! #ifdef WIN32 /* * If Windows has native IPv6 support, use the native Windows routine. --- 151,157 ---- *psin; struct addrinfo hints; ! #if defined(WIN32) && !defined(WIN32_CLIENT_ONLY) /* * If Windows has native IPv6 support, use the native Windows routine. *************** *** 272,278 **** { if (res) { ! #ifdef WIN32 /* * If Windows has native IPv6 support, use the native Windows routine. --- 274,280 ---- { if (res) { ! #if defined(WIN32) && !defined(WIN32_CLIENT_ONLY) /* * If Windows has native IPv6 support, use the native Windows routine. *************** *** 364,370 **** char *node, int nodelen, char *service, int servicelen, int flags) { ! #ifdef WIN32 /* * If Windows has native IPv6 support, use the native Windows routine. --- 366,372 ---- char *node, int nodelen, char *service, int servicelen, int flags) { ! #if defined(WIN32) && !defined(WIN32_CLIENT_ONLY) /* * If Windows has native IPv6 support, use the native Windows routine.
pgsql-patches by date: