discuss-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH] GSWeb Patch for Windows, but...


From: S.J.Chun
Subject: [PATCH] GSWeb Patch for Windows, but...
Date: Thu, 6 May 2004 16:31:17 +0900 (KST)

Hi, attached file is diff between original and my build. but even with this 
patch, the build process, especially
making dll, requires manual process. (I've used a2dl, implib32.exe and other 
tools) Most important patch is
for Non blocking socket code, where file descriptor/socket handle difference in 
Windows platform makes trouble.
Other parts are for just compilation.

Hope this can help.
diff -urN gsweb/GSWExtensions.framework/Makefile.preamble 
gsweb.win/GSWExtensions.framework/Makefile.preamble
--- gsweb/GSWExtensions.framework/Makefile.preamble     Thu May  6 14:56:46 2004
+++ gsweb.win/GSWExtensions.framework/Makefile.preamble Thu May  6 16:02:28 2004
@@ -101,9 +101,14 @@
 GSW_FRAMEWORK_SUFFIX = Versions/Current/$(GNUSTEP_TARGET_LDIR)
 
 GSWExtensions_LIB_DIRS = \
-       -L$(GSWEB_LIBRARY_BASE)/$(GSW_FRAMEWORK_SUFFIX)
+       -L$(GSWEB_LIBRARY_BASE)/$(GSW_FRAMEWORK_SUFFIX) \
+       -L../GSWeb.framework/GSWeb.framework
 WOExtensions_LIB_DIRS = \
        -L$(WO_LIBRARY_BASE)/$(GSW_FRAMEWORK_SUFFIX)
+endif
+
+ifeq ($(GNUSTEP_TARGET_OS),mingw32)
+FRAMEWORK_LIBS += -lGSWeb -lgnustep-db2 -lgnustep-db2control -lgnustep-base 
-lobjc -lz -lws2_32
 endif
 
 
diff -urN gsweb/GSWExtensionsGSW.framework/Makefile.preamble 
gsweb.win/GSWExtensionsGSW.framework/Makefile.preamble
--- gsweb/GSWExtensionsGSW.framework/Makefile.preamble  Thu May  6 14:56:46 2004
+++ gsweb.win/GSWExtensionsGSW.framework/Makefile.preamble      Thu May  6 
16:02:38 2004
@@ -78,7 +78,8 @@
 GSW_FRAMEWORK_SUFFIX = Versions/Current/$(GNUSTEP_TARGET_LDIR)
 
 GSWExtensionsGSW_LIB_DIRS = \
-       -L$(GSWEB_LIBRARY_BASE)/$(GSW_FRAMEWORK_SUFFIX)
+       -L$(GSWEB_LIBRARY_BASE)/$(GSW_FRAMEWORK_SUFFIX) \
+       -L../GSWeb.framework/GSWeb.framework
 WOExtensionsGSW_LIB_DIRS = \
        -L$(WO_LIBRARY_BASE)/$(GSW_FRAMEWORK_SUFFIX)
 endif
@@ -101,6 +102,10 @@
 else
 GSWExtensionsGSW_LIBRARIES_DEPEND_UPON += -lGSWeb
 WOExtensionsGSW_LIBRARIES_DEPEND_UPON += -lWebObjects
+endif
+
+ifeq ($(GNUSTEP_TARGET_OS),mingw32)
+FRAMEWORK_LIBS += -lGSWeb -lgnustep-db2 -lgnustep-db2control -lgnustep-base 
-lobjc -lz -lws2_32
 endif
 
 #
diff -urN gsweb/GSWeb.framework/GNUmakefile 
gsweb.win/GSWeb.framework/GNUmakefile
--- gsweb/GSWeb.framework/GNUmakefile   Thu May  6 14:56:46 2004
+++ gsweb.win/GSWeb.framework/GNUmakefile       Thu May  6 16:02:42 2004
@@ -315,6 +315,7 @@
 GSWRecording.h \
 GSWInputStreamData.h \
 GSWActionURL.h \
+GSWDefs.h \
 
 #For next Version:
 #GSWAdminAction.h \
diff -urN gsweb/GSWeb.framework/GSWApplication.h 
gsweb.win/GSWeb.framework/GSWApplication.h
--- gsweb/GSWeb.framework/GSWApplication.h      Thu May  6 14:56:48 2004
+++ gsweb.win/GSWeb.framework/GSWApplication.h  Thu May  6 16:03:04 2004
@@ -33,19 +33,21 @@
 #ifndef _GSWApplication_h__
        #define _GSWApplication_h__
 
-extern void GSWApplicationSetDebugSetOption(NSString* opt);
-extern int WOApplicationMain(NSString* applicationClassName,
+#include "GSWDefs.h"
+
+GSW_EXPORT void GSWApplicationSetDebugSetOption(NSString* opt);
+GSW_EXPORT int WOApplicationMain(NSString* applicationClassName,
                              int argc,
                              const char *argv[]);
-extern int GSWApplicationMain(NSString* applicationClassName,
+GSW_EXPORT int GSWApplicationMain(NSString* applicationClassName,
                               int argc,
                               const char *argv[]);
-extern NSString* globalApplicationClassName;
-extern int GSWebNamingConv;//GSWNAMES_INDEX or WONAMES_INDEX
+GSW_EXPORT NSString* globalApplicationClassName;
+GSW_EXPORT int GSWebNamingConv;//GSWNAMES_INDEX or WONAMES_INDEX
 #define GSWebNamingConvInversed                
(GSWebNamingConv==GSWNAMES_INDEX ? WONAMES_INDEX : GSWNAMES_INDEX)
 #define GSWebNamingConvForRound(r)     ((r)==0 ? GSWebNamingConv : 
(GSWebNamingConv==GSWNAMES_INDEX ? WONAMES_INDEX : GSWNAMES_INDEX))
 
-extern BOOL WOStrictFlag;
+GSW_EXPORT BOOL WOStrictFlag;
 //====================================================================
 @interface GSWApplication : NSObject <NSLocking>
 {
@@ -738,5 +740,5 @@
                                                                  
template:(GSWElement*)templateElement_; //OldFN
 @end
 */
-extern GSWApplication* GSWApp;
+GSW_EXPORT GSWApplication* GSWApp;
 #endif //_GSWApplication_h__
diff -urN gsweb/GSWeb.framework/GSWConstants.h 
gsweb.win/GSWeb.framework/GSWConstants.h
--- gsweb/GSWeb.framework/GSWConstants.h        Thu May  6 14:56:48 2004
+++ gsweb.win/GSWeb.framework/GSWConstants.h    Thu May  6 16:02:42 2004
@@ -35,365 +35,367 @@
 #ifndef _GSWebConstants_h__
 #define _GSWebConstants_h__
 
+#include "GSWDefs.h"
+
 //====================================================================
 // -
 /*
 typedef  NSBoolNumber* BOOLNB;
-extern NSBoolNumber* BNYES;
-extern NSBoolNumber* BNNO;
+GSW_EXPORT NSBoolNumber* BNYES;
+GSW_EXPORT NSBoolNumber* BNNO;
 */
 
-extern NSString* NSTYES;
-extern NSString* NSTNO;
+GSW_EXPORT NSString* NSTYES;
+GSW_EXPORT NSString* NSTNO;
 
 
 //====================================================================
 // Suffixes
 #define GSWNAMES_INDEX 0
 #define WONAMES_INDEX  1
-extern NSString* GSWApplicationSuffix[2];
-extern NSString* GSWApplicationPSuffix[2];
-extern NSString* GSWPageSuffix[2];
-extern NSString* GSWPagePSuffix[2];
-extern NSString* GSWScriptSuffix[2];
-extern NSString* GSWScriptPSuffix[2];
-extern NSString* GSWResourceRequestHandlerKey[2];
-extern NSString* GSWComponentRequestHandlerKey[2];
-extern NSString* GSWDirectActionRequestHandlerKey[2];
-extern NSString* GSWPingActionRequestHandlerKey[2];
-extern NSString* GSWStaticResourceRequestHandlerKey[2];
-extern NSString* GSWComponentTemplateSuffix;
-extern NSString* GSWComponentTemplatePSuffix;
-extern NSString* GSWComponentDeclarationsSuffix[2];
-extern NSString* GSWComponentDeclarationsPSuffix[2];
-extern NSString* GSWLibrarySuffix[2];
-extern NSString* GSWLibraryPSuffix[2];
-extern NSString* GSWArchiveSuffix[2];
-extern NSString* GSWArchivePSuffix[2];
-extern NSString* GSWURLPrefix[2];
-
-extern NSString* GSFrameworkSuffix;
-extern NSString* GSFrameworkPSuffix;
-extern NSString* GSLanguageSuffix;
-extern NSString* GSLanguagePSuffix;
-extern NSString* GSWStringTableSuffix;
-extern NSString* GSWStringTablePSuffix;
-extern NSString* GSWStringTableArraySuffix;
-extern NSString* GSWStringTableArrayPSuffix;
-extern NSString* GSWMainPageName;
-extern NSString* GSWMonitorServiceName;
-extern NSString* GSWAPISuffix;
-extern NSString* GSWAPIPSuffix;
+GSW_EXPORT NSString* GSWApplicationSuffix[2];
+GSW_EXPORT NSString* GSWApplicationPSuffix[2];
+GSW_EXPORT NSString* GSWPageSuffix[2];
+GSW_EXPORT NSString* GSWPagePSuffix[2];
+GSW_EXPORT NSString* GSWScriptSuffix[2];
+GSW_EXPORT NSString* GSWScriptPSuffix[2];
+GSW_EXPORT NSString* GSWResourceRequestHandlerKey[2];
+GSW_EXPORT NSString* GSWComponentRequestHandlerKey[2];
+GSW_EXPORT NSString* GSWDirectActionRequestHandlerKey[2];
+GSW_EXPORT NSString* GSWPingActionRequestHandlerKey[2];
+GSW_EXPORT NSString* GSWStaticResourceRequestHandlerKey[2];
+GSW_EXPORT NSString* GSWComponentTemplateSuffix;
+GSW_EXPORT NSString* GSWComponentTemplatePSuffix;
+GSW_EXPORT NSString* GSWComponentDeclarationsSuffix[2];
+GSW_EXPORT NSString* GSWComponentDeclarationsPSuffix[2];
+GSW_EXPORT NSString* GSWLibrarySuffix[2];
+GSW_EXPORT NSString* GSWLibraryPSuffix[2];
+GSW_EXPORT NSString* GSWArchiveSuffix[2];
+GSW_EXPORT NSString* GSWArchivePSuffix[2];
+GSW_EXPORT NSString* GSWURLPrefix[2];
+
+GSW_EXPORT NSString* GSFrameworkSuffix;
+GSW_EXPORT NSString* GSFrameworkPSuffix;
+GSW_EXPORT NSString* GSLanguageSuffix;
+GSW_EXPORT NSString* GSLanguagePSuffix;
+GSW_EXPORT NSString* GSWStringTableSuffix;
+GSW_EXPORT NSString* GSWStringTablePSuffix;
+GSW_EXPORT NSString* GSWStringTableArraySuffix;
+GSW_EXPORT NSString* GSWStringTableArrayPSuffix;
+GSW_EXPORT NSString* GSWMainPageName;
+GSW_EXPORT NSString* GSWMonitorServiceName;
+GSW_EXPORT NSString* GSWAPISuffix;
+GSW_EXPORT NSString* GSWAPIPSuffix;
 
 
 //====================================================================
 // User Class Names
 
-extern NSString* GSWClassName_Session;
-extern NSString* GSWClassName_Application;
-extern NSString* GSWClassName_ResourceManager[2];
-extern NSString* GSWClassName_StatisticsStore[2];
-extern NSString* GSWClassName_ServerSessionStore[2];
-extern NSString* GSWClassName_DefaultAdaptor[2];
-extern NSString* GSWClassName_DefaultContext[2];
-extern NSString* GSWClassName_DefaultResponse[2];
-extern NSString* GSWClassName_DefaultRequest[2];
-extern NSString* GSWClassName_DefaultRecording[2];
+GSW_EXPORT NSString* GSWClassName_Session;
+GSW_EXPORT NSString* GSWClassName_Application;
+GSW_EXPORT NSString* GSWClassName_ResourceManager[2];
+GSW_EXPORT NSString* GSWClassName_StatisticsStore[2];
+GSW_EXPORT NSString* GSWClassName_ServerSessionStore[2];
+GSW_EXPORT NSString* GSWClassName_DefaultAdaptor[2];
+GSW_EXPORT NSString* GSWClassName_DefaultContext[2];
+GSW_EXPORT NSString* GSWClassName_DefaultResponse[2];
+GSW_EXPORT NSString* GSWClassName_DefaultRequest[2];
+GSW_EXPORT NSString* GSWClassName_DefaultRecording[2];
 
 //====================================================================
 // Keys
 
-extern NSString* GSWKey_InstanceID[2];
-extern NSString* GSWKey_SessionID[2];
-extern NSString* GSWKey_PageName[2];
-extern NSString* GSWKey_ContextID[2];
-extern NSString* GSWKey_ElementID[2];
-extern NSString* GSWKey_Data[2];
-extern NSString* GSWKey_SubmitAction[2];
-extern NSString* GSWKey_IsmapCoords[2];
+GSW_EXPORT NSString* GSWKey_InstanceID[2];
+GSW_EXPORT NSString* GSWKey_SessionID[2];
+GSW_EXPORT NSString* GSWKey_PageName[2];
+GSW_EXPORT NSString* GSWKey_ContextID[2];
+GSW_EXPORT NSString* GSWKey_ElementID[2];
+GSW_EXPORT NSString* GSWKey_Data[2];
+GSW_EXPORT NSString* GSWKey_SubmitAction[2];
+GSW_EXPORT NSString* GSWKey_IsmapCoords[2];
 
 //====================================================================
 // HTTP Headers
-extern NSString* GSWHTTPHeader_Cookie;
-extern NSString* GSWHTTPHeader_CookieStupidIIS;
-extern NSString* GSWHTTPHeader_SetCookie;
-extern NSString* GSWHTTPHeader_AdaptorVersion[2];
-extern NSString* GSWHTTPHeader_RequestMethod[2];
-extern NSString* GSWHTTPHeader_Recording[2];
-extern NSString* GSWHTTPHeader_QueryString[2];
-extern NSString* GSWHTTPHeader_RemoteAddress[2];
-extern NSString* GSWHTTPHeader_RemoteHost[2];
-extern NSString* GSWHTTPHeader_RemoteIdent[2];
-extern NSString* GSWHTTPHeader_RemoteUser[2];
-extern NSString* GSWHTTPHeader_ServerName[2];
-extern NSString* GSWHTTPHeader_ServerPort[2];
-extern NSString* GSWHTTPHeader_ServerSoftware[2];
-extern NSString* GSWHTTPHeader_AnnotationServer[2];
-extern NSString* GSWHTTPHeader_AuthPass[2];
-extern NSString* GSWHTTPHeader_AuthType[2];
-extern NSString* GSWHTTPHeader_DocumentRoot[2];
-extern NSString* GSWHTTPHeader_GatewayInterface[2];
-extern NSString* GSWHTTPHeader_Protocol[2];
-extern NSString* GSWHTTPHeader_ProtocolNum[2];
-extern NSString* GSWHTTPHeader_RequestScheme[2];
-extern NSString* GSWHTTPHeader_ApplicationName[2];
-extern NSString* GSWHTTPHeader_RecordingSessionID[2];
-extern NSString* GSWHTTPHeader_RecordingIDsURL[2];
-extern NSString* GSWHTTPHeader_RecordingIDsCookie[2];
-extern NSString* GSWHTTPHeader_RecordingApplicationNumber[2];
-extern NSString* GSWHTTPHeader_LoadAverage[2];
-extern NSString* GSWHTTPHeader_RefuseSessions[2];
-
-extern NSString* GSWHTTPHeader_Method[2];
-extern NSString* GSWHTTPHeader_MethodPost;
-extern NSString* GSWHTTPHeader_MethodGet;
-extern NSString* GSWHTTPHeader_AcceptLanguage;
-extern NSString* GSWHTTPHeader_AcceptEncoding;
-extern NSString* GSWHTTPHeader_ContentType;
-extern NSString* GSWHTTPHeader_FormURLEncoded;
-extern NSString* GSWHTTPHeader_MultipartFormData;
-extern NSString* GSWHTTPHeader_ContentLength;
-extern NSString* GSWHTTPHeader_MimeType_TextPlain;
-extern NSString* GSWHTTPHeader_UserAgent;
-extern NSString* GSWHTTPHeader_Referer;
+GSW_EXPORT NSString* GSWHTTPHeader_Cookie;
+GSW_EXPORT NSString* GSWHTTPHeader_CookieStupidIIS;
+GSW_EXPORT NSString* GSWHTTPHeader_SetCookie;
+GSW_EXPORT NSString* GSWHTTPHeader_AdaptorVersion[2];
+GSW_EXPORT NSString* GSWHTTPHeader_RequestMethod[2];
+GSW_EXPORT NSString* GSWHTTPHeader_Recording[2];
+GSW_EXPORT NSString* GSWHTTPHeader_QueryString[2];
+GSW_EXPORT NSString* GSWHTTPHeader_RemoteAddress[2];
+GSW_EXPORT NSString* GSWHTTPHeader_RemoteHost[2];
+GSW_EXPORT NSString* GSWHTTPHeader_RemoteIdent[2];
+GSW_EXPORT NSString* GSWHTTPHeader_RemoteUser[2];
+GSW_EXPORT NSString* GSWHTTPHeader_ServerName[2];
+GSW_EXPORT NSString* GSWHTTPHeader_ServerPort[2];
+GSW_EXPORT NSString* GSWHTTPHeader_ServerSoftware[2];
+GSW_EXPORT NSString* GSWHTTPHeader_AnnotationServer[2];
+GSW_EXPORT NSString* GSWHTTPHeader_AuthPass[2];
+GSW_EXPORT NSString* GSWHTTPHeader_AuthType[2];
+GSW_EXPORT NSString* GSWHTTPHeader_DocumentRoot[2];
+GSW_EXPORT NSString* GSWHTTPHeader_GatewayInterface[2];
+GSW_EXPORT NSString* GSWHTTPHeader_Protocol[2];
+GSW_EXPORT NSString* GSWHTTPHeader_ProtocolNum[2];
+GSW_EXPORT NSString* GSWHTTPHeader_RequestScheme[2];
+GSW_EXPORT NSString* GSWHTTPHeader_ApplicationName[2];
+GSW_EXPORT NSString* GSWHTTPHeader_RecordingSessionID[2];
+GSW_EXPORT NSString* GSWHTTPHeader_RecordingIDsURL[2];
+GSW_EXPORT NSString* GSWHTTPHeader_RecordingIDsCookie[2];
+GSW_EXPORT NSString* GSWHTTPHeader_RecordingApplicationNumber[2];
+GSW_EXPORT NSString* GSWHTTPHeader_LoadAverage[2];
+GSW_EXPORT NSString* GSWHTTPHeader_RefuseSessions[2];
+
+GSW_EXPORT NSString* GSWHTTPHeader_Method[2];
+GSW_EXPORT NSString* GSWHTTPHeader_MethodPost;
+GSW_EXPORT NSString* GSWHTTPHeader_MethodGet;
+GSW_EXPORT NSString* GSWHTTPHeader_AcceptLanguage;
+GSW_EXPORT NSString* GSWHTTPHeader_AcceptEncoding;
+GSW_EXPORT NSString* GSWHTTPHeader_ContentType;
+GSW_EXPORT NSString* GSWHTTPHeader_FormURLEncoded;
+GSW_EXPORT NSString* GSWHTTPHeader_MultipartFormData;
+GSW_EXPORT NSString* GSWHTTPHeader_ContentLength;
+GSW_EXPORT NSString* GSWHTTPHeader_MimeType_TextPlain;
+GSW_EXPORT NSString* GSWHTTPHeader_UserAgent;
+GSW_EXPORT NSString* GSWHTTPHeader_Referer;
 
-extern NSString* GSWHTTPHeader_Response_OK;
-extern NSString* GSWHTTPHeader_Response_HeaderLineEnd[2];
+GSW_EXPORT NSString* GSWHTTPHeader_Response_OK;
+GSW_EXPORT NSString* GSWHTTPHeader_Response_HeaderLineEnd[2];
 
-extern NSString* GSWFormValue_RemoteInvocationPost[2];
+GSW_EXPORT NSString* GSWFormValue_RemoteInvocationPost[2];
 
 //====================================================================
 // Notifications
-extern NSString* GSWNotification__SessionDidTimeOutNotification[2];
+GSW_EXPORT NSString* GSWNotification__SessionDidTimeOutNotification[2];
 
 //====================================================================
 // Frameworks
 
 #if !GSWEB_STRICT
-       extern NSString* GSWFramework_all;
+       GSW_EXPORT NSString* GSWFramework_all;
 #endif
-extern NSString* GSWFramework_app;
-extern NSString* GSWFramework_extensions[2];
+GSW_EXPORT NSString* GSWFramework_app;
+GSW_EXPORT NSString* GSWFramework_extensions[2];
 
 //====================================================================
 // Protocols
 
-extern NSString* GSWProtocol_HTTP;
-extern NSString* GSWProtocol_HTTPS;
+GSW_EXPORT NSString* GSWProtocol_HTTP;
+GSW_EXPORT NSString* GSWProtocol_HTTPS;
 
 //====================================================================
 // Option Names
 
-extern NSString* GSWOPT_Adaptor[2];
-extern NSString* GSWOPT_Context[2];
-extern NSString* GSWOPT_Response[2];
-extern NSString* GSWOPT_Request[2];
-extern NSString* GSWOPT_AdditionalAdaptors[2];
-extern NSString* GSWOPT_ApplicationBaseURL[2];
-extern NSString* GSWOPT_AutoOpenInBrowser[2];
-extern NSString* GSWOPT_CGIAdaptorURL[2];
-extern NSString* GSWOPT_CachingEnabled[2];
-extern NSString* GSWOPT_ComponentRequestHandlerKey[2];
-extern NSString* GSWOPT_DebuggingEnabled[2];
-extern NSString* GSWOPT_StatusDebuggingEnabled[2];
-extern NSString* GSWOPT_DirectActionRequestHandlerKey[2];
-extern NSString* GSWOPT_DirectConnectEnabled[2];
-extern NSString* GSWOPT_FrameworksBaseURL[2];
-extern NSString* GSWOPT_OutputPath[2];
-extern NSString* GSWOPT_IncludeCommentsInResponse[2];
-extern NSString* GSWOPT_ListenQueueSize[2];
-extern NSString* GSWOPT_LoadFrameworks[2];
-extern NSString* GSWOPT_LifebeatEnabled[2];
-extern NSString* GSWOPT_LifebeatDestinationHost[2];
-extern NSString* GSWOPT_LifebeatDestinationPort[2];
-extern NSString* GSWOPT_LifebeatInterval[2];
-extern NSString* GSWOPT_MonitorEnabled[2];
-extern NSString* GSWOPT_MonitorHost[2];
-extern NSString* GSWOPT_Port[2];
-extern NSString* GSWOPT_Host[2];
-extern NSString* GSWOPT_ResourceRequestHandlerKey[2];
-extern NSString* GSWOPT_StreamActionRequestHandlerKey[2];
-extern NSString* GSWOPT_PingActionRequestHandlerKey[2];
-extern NSString* GSWOPT_StaticResourceRequestHandlerKey[2];
-extern NSString* GSWOPT_SMTPHost[2];
-extern NSString* GSWOPT_SessionTimeOut[2];
-extern NSString* GSWOPT_DefaultUndoStackLimit[2];
-extern NSString* GSWOPT_LockDefaultEditingContext[2];
-extern NSString* GSWOPT_WorkerThreadCount[2];
-extern NSString* GSWOPT_WorkerThreadCountMin[2];
-extern NSString* GSWOPT_WorkerThreadCountMax[2];
-extern NSString* GSWOPT_ProjectSearchPath;
-extern NSString* GSWOPT_MultiThreadEnabled;
-extern NSString* GSWOPT_DebugSetConfigFilePath;
-extern NSString* GSWOPT_AdaptorHost[2];
-extern NSString* GSWOPT_RecordingPath[2];
-extern NSString* GSWOPT_DefaultTemplateParser[2];
-extern NSString* GSWOPT_AcceptedContentEncoding[2];
-extern NSString* GSWOPT_SessionStoreClassName[2];
-extern NSString* GSWOPT_ResourceManagerClassName[2];
-extern NSString* GSWOPT_StatisticsStoreClassName[2];
-extern NSString* GSWOPT_RecordingClassName[2];
-extern NSString* GSWOPT_DisplayExceptionPages[2];
-extern NSString* GSWOPT_AllowsCacheControlHeader[2];
+GSW_EXPORT NSString* GSWOPT_Adaptor[2];
+GSW_EXPORT NSString* GSWOPT_Context[2];
+GSW_EXPORT NSString* GSWOPT_Response[2];
+GSW_EXPORT NSString* GSWOPT_Request[2];
+GSW_EXPORT NSString* GSWOPT_AdditionalAdaptors[2];
+GSW_EXPORT NSString* GSWOPT_ApplicationBaseURL[2];
+GSW_EXPORT NSString* GSWOPT_AutoOpenInBrowser[2];
+GSW_EXPORT NSString* GSWOPT_CGIAdaptorURL[2];
+GSW_EXPORT NSString* GSWOPT_CachingEnabled[2];
+GSW_EXPORT NSString* GSWOPT_ComponentRequestHandlerKey[2];
+GSW_EXPORT NSString* GSWOPT_DebuggingEnabled[2];
+GSW_EXPORT NSString* GSWOPT_StatusDebuggingEnabled[2];
+GSW_EXPORT NSString* GSWOPT_DirectActionRequestHandlerKey[2];
+GSW_EXPORT NSString* GSWOPT_DirectConnectEnabled[2];
+GSW_EXPORT NSString* GSWOPT_FrameworksBaseURL[2];
+GSW_EXPORT NSString* GSWOPT_OutputPath[2];
+GSW_EXPORT NSString* GSWOPT_IncludeCommentsInResponse[2];
+GSW_EXPORT NSString* GSWOPT_ListenQueueSize[2];
+GSW_EXPORT NSString* GSWOPT_LoadFrameworks[2];
+GSW_EXPORT NSString* GSWOPT_LifebeatEnabled[2];
+GSW_EXPORT NSString* GSWOPT_LifebeatDestinationHost[2];
+GSW_EXPORT NSString* GSWOPT_LifebeatDestinationPort[2];
+GSW_EXPORT NSString* GSWOPT_LifebeatInterval[2];
+GSW_EXPORT NSString* GSWOPT_MonitorEnabled[2];
+GSW_EXPORT NSString* GSWOPT_MonitorHost[2];
+GSW_EXPORT NSString* GSWOPT_Port[2];
+GSW_EXPORT NSString* GSWOPT_Host[2];
+GSW_EXPORT NSString* GSWOPT_ResourceRequestHandlerKey[2];
+GSW_EXPORT NSString* GSWOPT_StreamActionRequestHandlerKey[2];
+GSW_EXPORT NSString* GSWOPT_PingActionRequestHandlerKey[2];
+GSW_EXPORT NSString* GSWOPT_StaticResourceRequestHandlerKey[2];
+GSW_EXPORT NSString* GSWOPT_SMTPHost[2];
+GSW_EXPORT NSString* GSWOPT_SessionTimeOut[2];
+GSW_EXPORT NSString* GSWOPT_DefaultUndoStackLimit[2];
+GSW_EXPORT NSString* GSWOPT_LockDefaultEditingContext[2];
+GSW_EXPORT NSString* GSWOPT_WorkerThreadCount[2];
+GSW_EXPORT NSString* GSWOPT_WorkerThreadCountMin[2];
+GSW_EXPORT NSString* GSWOPT_WorkerThreadCountMax[2];
+GSW_EXPORT NSString* GSWOPT_ProjectSearchPath;
+GSW_EXPORT NSString* GSWOPT_MultiThreadEnabled;
+GSW_EXPORT NSString* GSWOPT_DebugSetConfigFilePath;
+GSW_EXPORT NSString* GSWOPT_AdaptorHost[2];
+GSW_EXPORT NSString* GSWOPT_RecordingPath[2];
+GSW_EXPORT NSString* GSWOPT_DefaultTemplateParser[2];
+GSW_EXPORT NSString* GSWOPT_AcceptedContentEncoding[2];
+GSW_EXPORT NSString* GSWOPT_SessionStoreClassName[2];
+GSW_EXPORT NSString* GSWOPT_ResourceManagerClassName[2];
+GSW_EXPORT NSString* GSWOPT_StatisticsStoreClassName[2];
+GSW_EXPORT NSString* GSWOPT_RecordingClassName[2];
+GSW_EXPORT NSString* GSWOPT_DisplayExceptionPages[2];
+GSW_EXPORT NSString* GSWOPT_AllowsCacheControlHeader[2];
 
 
 
 //====================================================================
 // Option Values
 
-extern NSString* GSWOPTValue_DefaultTemplateParser_XMLHTML;
-extern NSString* GSWOPTValue_DefaultTemplateParser_XMLHTMLNoOmittedTags;
-extern NSString* GSWOPTValue_DefaultTemplateParser_XML;
-extern NSString* GSWOPTValue_DefaultTemplateParser_ANTLR;
-extern NSString* GSWOPTValue_DefaultTemplateParser_RawHTML;
-extern NSString* GSWOPTValue_ComponentRequestHandlerKey[2];
-extern NSString* GSWOPTValue_ResourceRequestHandlerKey[2];
-extern NSString* GSWOPTValue_DirectActionRequestHandlerKey[2];
-extern NSString* GSWOPTValue_StreamActionRequestHandlerKey[2];
-extern NSString* GSWOPTValue_PingActionRequestHandlerKey[2];
-extern NSString* GSWOPTValue_StaticResourceRequestHandlerKey[2];
-extern NSString* GSWOPTValue_SessionStoreClassName[2];
+GSW_EXPORT NSString* GSWOPTValue_DefaultTemplateParser_XMLHTML;
+GSW_EXPORT NSString* GSWOPTValue_DefaultTemplateParser_XMLHTMLNoOmittedTags;
+GSW_EXPORT NSString* GSWOPTValue_DefaultTemplateParser_XML;
+GSW_EXPORT NSString* GSWOPTValue_DefaultTemplateParser_ANTLR;
+GSW_EXPORT NSString* GSWOPTValue_DefaultTemplateParser_RawHTML;
+GSW_EXPORT NSString* GSWOPTValue_ComponentRequestHandlerKey[2];
+GSW_EXPORT NSString* GSWOPTValue_ResourceRequestHandlerKey[2];
+GSW_EXPORT NSString* GSWOPTValue_DirectActionRequestHandlerKey[2];
+GSW_EXPORT NSString* GSWOPTValue_StreamActionRequestHandlerKey[2];
+GSW_EXPORT NSString* GSWOPTValue_PingActionRequestHandlerKey[2];
+GSW_EXPORT NSString* GSWOPTValue_StaticResourceRequestHandlerKey[2];
+GSW_EXPORT NSString* GSWOPTValue_SessionStoreClassName[2];
 
 //====================================================================
 // Cache Marker
 
-extern NSString* GSNotFoundMarker;
-extern NSString* GSFoundMarker;
+GSW_EXPORT NSString* GSNotFoundMarker;
+GSW_EXPORT NSString* GSFoundMarker;
 
 //====================================================================
 // GSWAssociation special keys
 
-extern NSString* GSASK_Field;
-extern NSString* GSASK_FieldValidate;
-extern NSString* GSASK_FieldTitle;
-extern NSString* GSASK_Class;
-extern NSString* GSASK_Language;
+GSW_EXPORT NSString* GSASK_Field;
+GSW_EXPORT NSString* GSASK_FieldValidate;
+GSW_EXPORT NSString* GSASK_FieldTitle;
+GSW_EXPORT NSString* GSASK_Class;
+GSW_EXPORT NSString* GSASK_Language;
 
 //====================================================================
 // Page names
 
-extern NSString* GSWSessionRestorationErrorPageName[2];
-extern NSString* GSWSessionCreationErrorPageName[2];
-extern NSString* GSWExceptionPageName[2];
-extern NSString* GSWPageRestorationErrorPageName[2];
+GSW_EXPORT NSString* GSWSessionRestorationErrorPageName[2];
+GSW_EXPORT NSString* GSWSessionCreationErrorPageName[2];
+GSW_EXPORT NSString* GSWExceptionPageName[2];
+GSW_EXPORT NSString* GSWPageRestorationErrorPageName[2];
 
 //====================================================================
 // Thread Keys
 
-extern NSString* GSWThreadKey_ComponentDefinition;
-extern NSString* GSWThreadKey_DefaultAdaptorThread;
-extern NSString* GSWThreadKey_Context;
+GSW_EXPORT NSString* GSWThreadKey_ComponentDefinition;
+GSW_EXPORT NSString* GSWThreadKey_DefaultAdaptorThread;
+GSW_EXPORT NSString* GSWThreadKey_Context;
 
 //====================================================================
 // Tag Name
 
-extern NSString* GSWTag_Name[2];
+GSW_EXPORT NSString* GSWTag_Name[2];
 
 //====================================================================
 // Components Keys
 
-extern id value__Key;
-extern id action__Key;
-extern id name__Key;
-extern id disabled__Key;
-extern id dateFormat__Key;
-extern id numberFormat__Key;
-extern id href__Key;
-extern id queryDictionary__Key;
-extern id multipleSubmit__Key;
-extern id src__Key;
-extern id filename__Key;
-extern id framework__Key;
-extern id imageMapFileName__Key;
-extern id x__Key;
-extern id y__Key;
-extern id target__Key;
-extern id code__Key;
-extern id width__Key;
-extern id height__Key;
-extern id associationClass__Key;
-extern id codeBase__Key;
-extern id archive__Key;
-extern id archiveNames__Key;
-extern id object__Key;
-extern id hspace__Key;
-extern id vspace__Key;
-extern id align__Key;
-extern id list__Key;
-extern id sublist__Key;
-extern id item__Key;
-extern id selections__Key;
-extern id multiple__Key;
-extern id size__Key;
-extern id selection__Key;
-extern id checked__Key;
-extern id condition__Key;
-extern id conditionValue__Key;
-extern id negate__Key;
-extern id pageName__Key;
-extern id elementName__Key;
-extern id fragmentIdentifier__Key;
-extern id secure__Key;
-extern id string__Key;
-extern id scriptFile__Key;
-extern id scriptString__Key;
-extern id scriptSource__Key;
-extern id hideInComment__Key;
-extern id index__Key;
-extern id identifier__Key;
-extern id count__Key;
-extern id escapeHTML__Key;
-extern id GSWComponentName__Key[2];
-extern id componentName__Key;
-extern id prefix__Key;
-extern id suffix__Key;
-extern id level__Key;
-extern id isOrdered__Key;
-extern id useDecimalNumber__Key;
-extern id formatter__Key;
-extern id actionClass__Key;
-extern id directActionName__Key;
-extern id file__Key;
-extern id data__Key;
-extern id mimeType__Key;
-extern id key__Key;
-extern id selectedValue__Key;
-extern id noSelectionString__Key;
-extern id displayString__Key;
-extern id filePath__Key;
-extern id language__Key;
-extern id omitTags__Key;
-extern id formValue__Key;
-extern id formValues__Key;
-extern id invokeAction__Key;
-extern id elementID__Key;
-extern id otherTagString__Key;
+GSW_EXPORT id value__Key;
+GSW_EXPORT id action__Key;
+GSW_EXPORT id name__Key;
+GSW_EXPORT id disabled__Key;
+GSW_EXPORT id dateFormat__Key;
+GSW_EXPORT id numberFormat__Key;
+GSW_EXPORT id href__Key;
+GSW_EXPORT id queryDictionary__Key;
+GSW_EXPORT id multipleSubmit__Key;
+GSW_EXPORT id src__Key;
+GSW_EXPORT id filename__Key;
+GSW_EXPORT id framework__Key;
+GSW_EXPORT id imageMapFileName__Key;
+GSW_EXPORT id x__Key;
+GSW_EXPORT id y__Key;
+GSW_EXPORT id target__Key;
+GSW_EXPORT id code__Key;
+GSW_EXPORT id width__Key;
+GSW_EXPORT id height__Key;
+GSW_EXPORT id associationClass__Key;
+GSW_EXPORT id codeBase__Key;
+GSW_EXPORT id archive__Key;
+GSW_EXPORT id archiveNames__Key;
+GSW_EXPORT id object__Key;
+GSW_EXPORT id hspace__Key;
+GSW_EXPORT id vspace__Key;
+GSW_EXPORT id align__Key;
+GSW_EXPORT id list__Key;
+GSW_EXPORT id sublist__Key;
+GSW_EXPORT id item__Key;
+GSW_EXPORT id selections__Key;
+GSW_EXPORT id multiple__Key;
+GSW_EXPORT id size__Key;
+GSW_EXPORT id selection__Key;
+GSW_EXPORT id checked__Key;
+GSW_EXPORT id condition__Key;
+GSW_EXPORT id conditionValue__Key;
+GSW_EXPORT id negate__Key;
+GSW_EXPORT id pageName__Key;
+GSW_EXPORT id elementName__Key;
+GSW_EXPORT id fragmentIdentifier__Key;
+GSW_EXPORT id secure__Key;
+GSW_EXPORT id string__Key;
+GSW_EXPORT id scriptFile__Key;
+GSW_EXPORT id scriptString__Key;
+GSW_EXPORT id scriptSource__Key;
+GSW_EXPORT id hideInComment__Key;
+GSW_EXPORT id index__Key;
+GSW_EXPORT id identifier__Key;
+GSW_EXPORT id count__Key;
+GSW_EXPORT id escapeHTML__Key;
+GSW_EXPORT id GSWComponentName__Key[2];
+GSW_EXPORT id componentName__Key;
+GSW_EXPORT id prefix__Key;
+GSW_EXPORT id suffix__Key;
+GSW_EXPORT id level__Key;
+GSW_EXPORT id isOrdered__Key;
+GSW_EXPORT id useDecimalNumber__Key;
+GSW_EXPORT id formatter__Key;
+GSW_EXPORT id actionClass__Key;
+GSW_EXPORT id directActionName__Key;
+GSW_EXPORT id file__Key;
+GSW_EXPORT id data__Key;
+GSW_EXPORT id mimeType__Key;
+GSW_EXPORT id key__Key;
+GSW_EXPORT id selectedValue__Key;
+GSW_EXPORT id noSelectionString__Key;
+GSW_EXPORT id displayString__Key;
+GSW_EXPORT id filePath__Key;
+GSW_EXPORT id language__Key;
+GSW_EXPORT id omitTags__Key;
+GSW_EXPORT id formValue__Key;
+GSW_EXPORT id formValues__Key;
+GSW_EXPORT id invokeAction__Key;
+GSW_EXPORT id elementID__Key;
+GSW_EXPORT id otherTagString__Key;
 
 //GSWeb Additions
-extern id redirectURL__Key;
-extern id displayDisabled__Key;
-extern id actionYes__Key;
-extern id actionNo__Key;
-extern id pageSetVar__Prefix__Key;
-extern id pageSetVars__Key;
-extern id selectionValue__Key;
-extern id selectionValues__Key;
-extern id enabled__Key;
-extern id convertHTML__Key;
-extern id convertHTMLEntities__Key;
-extern id componentDesign__Key;
-extern id pageDesign__Key;
-extern id imageMapString__Key;
-extern id imageMapRegions__Key;
-extern id handleValidationException__Key;
-extern id selectedValues__Key;
-extern id startIndex__Key;
-extern id stopIndex__Key;
-extern id cidStore__Key;
-extern id cidKey__Key;
-extern id isDisplayStringBefore__Key;
-extern id urlPrefix__Key;
-extern id pathQueryDictionary__Key;
+GSW_EXPORT id redirectURL__Key;
+GSW_EXPORT id displayDisabled__Key;
+GSW_EXPORT id actionYes__Key;
+GSW_EXPORT id actionNo__Key;
+GSW_EXPORT id pageSetVar__Prefix__Key;
+GSW_EXPORT id pageSetVars__Key;
+GSW_EXPORT id selectionValue__Key;
+GSW_EXPORT id selectionValues__Key;
+GSW_EXPORT id enabled__Key;
+GSW_EXPORT id convertHTML__Key;
+GSW_EXPORT id convertHTMLEntities__Key;
+GSW_EXPORT id componentDesign__Key;
+GSW_EXPORT id pageDesign__Key;
+GSW_EXPORT id imageMapString__Key;
+GSW_EXPORT id imageMapRegions__Key;
+GSW_EXPORT id handleValidationException__Key;
+GSW_EXPORT id selectedValues__Key;
+GSW_EXPORT id startIndex__Key;
+GSW_EXPORT id stopIndex__Key;
+GSW_EXPORT id cidStore__Key;
+GSW_EXPORT id cidKey__Key;
+GSW_EXPORT id isDisplayStringBefore__Key;
+GSW_EXPORT id urlPrefix__Key;
+GSW_EXPORT id pathQueryDictionary__Key;
 
 #endif // _GSWebConstants_h__
 
diff -urN gsweb/GSWeb.framework/GSWDebug.h gsweb.win/GSWeb.framework/GSWDebug.h
--- gsweb/GSWeb.framework/GSWDebug.h    Thu May  6 14:56:48 2004
+++ gsweb.win/GSWeb.framework/GSWDebug.h        Thu May  6 16:03:04 2004
@@ -26,11 +26,13 @@
 #ifndef _GSWebDebug_h__
 #define _GSWebDebug_h__
 
+#include "GSWDefs.h"
+
 #ifdef DEBUG
-extern NSString* GSWDebugMethodMsg(id obj, SEL sel, const char *file, int 
line, NSString *fmt);
-extern void GSWLogC_(CONST char* file,int line,CONST char* string);
-extern void GSWLogDumpObjectFn(CONST char* file,int line,id object,int deep);
-extern void GSWLogAssertGoodFn(CONST char* file,int line,id object);
+GSW_EXPORT NSString* GSWDebugMethodMsg(id obj, SEL sel, const char *file, int 
line, NSString *fmt);
+GSW_EXPORT void GSWLogC_(CONST char* file,int line,CONST char* string);
+GSW_EXPORT void GSWLogDumpObjectFn(CONST char* file,int line,id object,int 
deep);
+GSW_EXPORT void GSWLogAssertGoodFn(CONST char* file,int line,id object);
 #endif
 #ifdef GSWDEBUG
 
diff -urN gsweb/GSWeb.framework/GSWDefaultAdaptor.h 
gsweb.win/GSWeb.framework/GSWDefaultAdaptor.h
--- gsweb/GSWeb.framework/GSWDefaultAdaptor.h   Thu May  6 14:56:48 2004
+++ gsweb.win/GSWeb.framework/GSWDefaultAdaptor.h       Thu May  6 16:02:44 2004
@@ -27,7 +27,9 @@
 #ifndef _GSWDefaultAdaptor_h__
        #define _GSWDefaultAdaptor_h__
 
-extern int iBlock;
+#include "GSWDefs.h"
+
+GSW_EXPORT int iBlock;
 //====================================================================
 // GSWDefaultAdaptor
 
diff -urN gsweb/GSWeb.framework/GSWDefs.h gsweb.win/GSWeb.framework/GSWDefs.h
--- gsweb/GSWeb.framework/GSWDefs.h     Thu Jan  1 09:00:00 1970
+++ gsweb.win/GSWeb.framework/GSWDefs.h Thu May  6 16:02:54 2004
@@ -0,0 +1,21 @@
+#ifndef __GSWebDefs_Header__
+#define __GSWebDefs_Header__
+
+#ifdef GNUSTEP_WITH_DLL
+
+#if BUILD_GSWeb_DLL
+#  define GSW_EXPORT  __declspec(dllexport)
+#  define GSW_DECLARE __declspec(dllexport)
+#else
+#  define GSW_EXPORT  extern __declspec(dllimport)
+#  define GSW_DECLARE __declspec(dllimport)
+#endif
+
+#else
+
+#  define GSW_EXPORT  extern
+#  define GSW_DECLARE
+
+#endif
+
+#endif /* __GSWebDefs_Header__ */
diff -urN gsweb/GSWeb.framework/GSWElement.h 
gsweb.win/GSWeb.framework/GSWElement.h
--- gsweb/GSWeb.framework/GSWElement.h  Thu May  6 14:56:48 2004
+++ gsweb.win/GSWeb.framework/GSWElement.h      Thu May  6 16:02:44 2004
@@ -32,10 +32,12 @@
 #ifndef _GSWElement_h__
        #define _GSWElement_h__
 
-extern BYTE ElementsMap_htmlBareString;
-extern BYTE ElementsMap_gswebElement;
-extern BYTE ElementsMap_dynamicElement;
-extern BYTE ElementsMap_attributeElement;
+#include "GSWDefs.h"
+
+GSW_EXPORT BYTE ElementsMap_htmlBareString;
+GSW_EXPORT BYTE ElementsMap_gswebElement;
+GSW_EXPORT BYTE ElementsMap_dynamicElement;
+GSW_EXPORT BYTE ElementsMap_attributeElement;
 
 
 //====================================================================
diff -urN gsweb/GSWeb.framework/GSWHTMLAttrLexer.h 
gsweb.win/GSWeb.framework/GSWHTMLAttrLexer.h
--- gsweb/GSWeb.framework/GSWHTMLAttrLexer.h    Thu May  6 14:56:46 2004
+++ gsweb.win/GSWeb.framework/GSWHTMLAttrLexer.h        Thu May  6 16:02:44 2004
@@ -13,6 +13,7 @@
 
 #include "GSWeb.h"
 
+#include "GSWDefs.h"
 
 #include "gsantlr/ANTLRCommon.h"
 #include "gsantlr/ANTLRCommonToken.h"
@@ -45,13 +46,13 @@
 
 
 
-extern CONST unsigned long GSWHTMLAttrLexer___tokenSet_0_data_[];
-extern ANTLRBitSet* GSWHTMLAttrLexer___tokenSet_0;
-extern CONST unsigned long GSWHTMLAttrLexer___tokenSet_1_data_[];
-extern ANTLRBitSet* GSWHTMLAttrLexer___tokenSet_1;
-extern CONST unsigned long GSWHTMLAttrLexer___tokenSet_2_data_[];
-extern ANTLRBitSet* GSWHTMLAttrLexer___tokenSet_2;
-extern CONST unsigned long GSWHTMLAttrLexer___tokenSet_3_data_[];
-extern ANTLRBitSet* GSWHTMLAttrLexer___tokenSet_3;
+GSW_EXPORT CONST unsigned long GSWHTMLAttrLexer___tokenSet_0_data_[];
+GSW_EXPORT ANTLRBitSet* GSWHTMLAttrLexer___tokenSet_0;
+GSW_EXPORT CONST unsigned long GSWHTMLAttrLexer___tokenSet_1_data_[];
+GSW_EXPORT ANTLRBitSet* GSWHTMLAttrLexer___tokenSet_1;
+GSW_EXPORT CONST unsigned long GSWHTMLAttrLexer___tokenSet_2_data_[];
+GSW_EXPORT ANTLRBitSet* GSWHTMLAttrLexer___tokenSet_2;
+GSW_EXPORT CONST unsigned long GSWHTMLAttrLexer___tokenSet_3_data_[];
+GSW_EXPORT ANTLRBitSet* GSWHTMLAttrLexer___tokenSet_3;
 
 #endif /*INC_GSWHTMLAttrLexer_h_*/
diff -urN gsweb/GSWeb.framework/GSWHTMLAttrParser.h 
gsweb.win/GSWeb.framework/GSWHTMLAttrParser.h
--- gsweb/GSWeb.framework/GSWHTMLAttrParser.h   Thu May  6 14:56:46 2004
+++ gsweb.win/GSWeb.framework/GSWHTMLAttrParser.h       Thu May  6 16:02:40 2004
@@ -13,6 +13,8 @@
 
 #include "GSWeb.h"
 
+#include "GSWDefs.h"
+
 #include "gsantlr/ANTLRCommon.h"
 #include "gsantlr/ANTLRTokenizer.h"
 #include "gsantlr/ANTLRTokenBuffer.h"
@@ -40,21 +42,21 @@
 @end;
 
 
-extern CONST NSString* GSWHTMLAttrParser___tokenNames[];
+GSW_EXPORT CONST NSString* GSWHTMLAttrParser___tokenNames[];
 
-extern CONST unsigned long GSWHTMLAttrParser___tokenSet_0_data_[];
-extern ANTLRBitSet* GSWHTMLAttrParser___tokenSet_0;
-extern CONST unsigned long GSWHTMLAttrParser___tokenSet_1_data_[];
-extern ANTLRBitSet* GSWHTMLAttrParser___tokenSet_1;
-extern CONST unsigned long GSWHTMLAttrParser___tokenSet_2_data_[];
-extern ANTLRBitSet* GSWHTMLAttrParser___tokenSet_2;
-extern CONST unsigned long GSWHTMLAttrParser___tokenSet_3_data_[];
-extern ANTLRBitSet* GSWHTMLAttrParser___tokenSet_3;
-extern CONST unsigned long GSWHTMLAttrParser___tokenSet_4_data_[];
-extern ANTLRBitSet* GSWHTMLAttrParser___tokenSet_4;
-extern CONST unsigned long GSWHTMLAttrParser___tokenSet_5_data_[];
-extern ANTLRBitSet* GSWHTMLAttrParser___tokenSet_5;
-extern CONST unsigned long GSWHTMLAttrParser___tokenSet_6_data_[];
-extern ANTLRBitSet* GSWHTMLAttrParser___tokenSet_6;
+GSW_EXPORT CONST unsigned long GSWHTMLAttrParser___tokenSet_0_data_[];
+GSW_EXPORT ANTLRBitSet* GSWHTMLAttrParser___tokenSet_0;
+GSW_EXPORT CONST unsigned long GSWHTMLAttrParser___tokenSet_1_data_[];
+GSW_EXPORT ANTLRBitSet* GSWHTMLAttrParser___tokenSet_1;
+GSW_EXPORT CONST unsigned long GSWHTMLAttrParser___tokenSet_2_data_[];
+GSW_EXPORT ANTLRBitSet* GSWHTMLAttrParser___tokenSet_2;
+GSW_EXPORT CONST unsigned long GSWHTMLAttrParser___tokenSet_3_data_[];
+GSW_EXPORT ANTLRBitSet* GSWHTMLAttrParser___tokenSet_3;
+GSW_EXPORT CONST unsigned long GSWHTMLAttrParser___tokenSet_4_data_[];
+GSW_EXPORT ANTLRBitSet* GSWHTMLAttrParser___tokenSet_4;
+GSW_EXPORT CONST unsigned long GSWHTMLAttrParser___tokenSet_5_data_[];
+GSW_EXPORT ANTLRBitSet* GSWHTMLAttrParser___tokenSet_5;
+GSW_EXPORT CONST unsigned long GSWHTMLAttrParser___tokenSet_6_data_[];
+GSW_EXPORT ANTLRBitSet* GSWHTMLAttrParser___tokenSet_6;
 
 #endif /*INC_GSWHTMLAttrParser_h_*/
diff -urN gsweb/GSWeb.framework/GSWHTMLLexer.h 
gsweb.win/GSWeb.framework/GSWHTMLLexer.h
--- gsweb/GSWeb.framework/GSWHTMLLexer.h        Thu May  6 14:56:48 2004
+++ gsweb.win/GSWeb.framework/GSWHTMLLexer.h    Thu May  6 16:02:42 2004
@@ -13,6 +13,7 @@
 
 #include "GSWeb.h"
 
+#include "GSWDefs.h"
 
 #include "gsantlr/ANTLRCommon.h"
 #include "gsantlr/ANTLRCommonToken.h"
@@ -52,39 +53,39 @@
 
 
 
-extern CONST unsigned long GSWHTMLLexer___tokenSet_0_data_[];
-extern ANTLRBitSet* GSWHTMLLexer___tokenSet_0;
-extern CONST unsigned long GSWHTMLLexer___tokenSet_1_data_[];
-extern ANTLRBitSet* GSWHTMLLexer___tokenSet_1;
-extern CONST unsigned long GSWHTMLLexer___tokenSet_2_data_[];
-extern ANTLRBitSet* GSWHTMLLexer___tokenSet_2;
-extern CONST unsigned long GSWHTMLLexer___tokenSet_3_data_[];
-extern ANTLRBitSet* GSWHTMLLexer___tokenSet_3;
-extern CONST unsigned long GSWHTMLLexer___tokenSet_4_data_[];
-extern ANTLRBitSet* GSWHTMLLexer___tokenSet_4;
-extern CONST unsigned long GSWHTMLLexer___tokenSet_5_data_[];
-extern ANTLRBitSet* GSWHTMLLexer___tokenSet_5;
-extern CONST unsigned long GSWHTMLLexer___tokenSet_6_data_[];
-extern ANTLRBitSet* GSWHTMLLexer___tokenSet_6;
-extern CONST unsigned long GSWHTMLLexer___tokenSet_7_data_[];
-extern ANTLRBitSet* GSWHTMLLexer___tokenSet_7;
-extern CONST unsigned long GSWHTMLLexer___tokenSet_8_data_[];
-extern ANTLRBitSet* GSWHTMLLexer___tokenSet_8;
-extern CONST unsigned long GSWHTMLLexer___tokenSet_9_data_[];
-extern ANTLRBitSet* GSWHTMLLexer___tokenSet_9;
-extern CONST unsigned long GSWHTMLLexer___tokenSet_10_data_[];
-extern ANTLRBitSet* GSWHTMLLexer___tokenSet_10;
-extern CONST unsigned long GSWHTMLLexer___tokenSet_11_data_[];
-extern ANTLRBitSet* GSWHTMLLexer___tokenSet_11;
-extern CONST unsigned long GSWHTMLLexer___tokenSet_12_data_[];
-extern ANTLRBitSet* GSWHTMLLexer___tokenSet_12;
-extern CONST unsigned long GSWHTMLLexer___tokenSet_13_data_[];
-extern ANTLRBitSet* GSWHTMLLexer___tokenSet_13;
-extern CONST unsigned long GSWHTMLLexer___tokenSet_14_data_[];
-extern ANTLRBitSet* GSWHTMLLexer___tokenSet_14;
-extern CONST unsigned long GSWHTMLLexer___tokenSet_15_data_[];
-extern ANTLRBitSet* GSWHTMLLexer___tokenSet_15;
-extern CONST unsigned long GSWHTMLLexer___tokenSet_16_data_[];
-extern ANTLRBitSet* GSWHTMLLexer___tokenSet_16;
+GSW_EXPORT CONST unsigned long GSWHTMLLexer___tokenSet_0_data_[];
+GSW_EXPORT ANTLRBitSet* GSWHTMLLexer___tokenSet_0;
+GSW_EXPORT CONST unsigned long GSWHTMLLexer___tokenSet_1_data_[];
+GSW_EXPORT ANTLRBitSet* GSWHTMLLexer___tokenSet_1;
+GSW_EXPORT CONST unsigned long GSWHTMLLexer___tokenSet_2_data_[];
+GSW_EXPORT ANTLRBitSet* GSWHTMLLexer___tokenSet_2;
+GSW_EXPORT CONST unsigned long GSWHTMLLexer___tokenSet_3_data_[];
+GSW_EXPORT ANTLRBitSet* GSWHTMLLexer___tokenSet_3;
+GSW_EXPORT CONST unsigned long GSWHTMLLexer___tokenSet_4_data_[];
+GSW_EXPORT ANTLRBitSet* GSWHTMLLexer___tokenSet_4;
+GSW_EXPORT CONST unsigned long GSWHTMLLexer___tokenSet_5_data_[];
+GSW_EXPORT ANTLRBitSet* GSWHTMLLexer___tokenSet_5;
+GSW_EXPORT CONST unsigned long GSWHTMLLexer___tokenSet_6_data_[];
+GSW_EXPORT ANTLRBitSet* GSWHTMLLexer___tokenSet_6;
+GSW_EXPORT CONST unsigned long GSWHTMLLexer___tokenSet_7_data_[];
+GSW_EXPORT ANTLRBitSet* GSWHTMLLexer___tokenSet_7;
+GSW_EXPORT CONST unsigned long GSWHTMLLexer___tokenSet_8_data_[];
+GSW_EXPORT ANTLRBitSet* GSWHTMLLexer___tokenSet_8;
+GSW_EXPORT CONST unsigned long GSWHTMLLexer___tokenSet_9_data_[];
+GSW_EXPORT ANTLRBitSet* GSWHTMLLexer___tokenSet_9;
+GSW_EXPORT CONST unsigned long GSWHTMLLexer___tokenSet_10_data_[];
+GSW_EXPORT ANTLRBitSet* GSWHTMLLexer___tokenSet_10;
+GSW_EXPORT CONST unsigned long GSWHTMLLexer___tokenSet_11_data_[];
+GSW_EXPORT ANTLRBitSet* GSWHTMLLexer___tokenSet_11;
+GSW_EXPORT CONST unsigned long GSWHTMLLexer___tokenSet_12_data_[];
+GSW_EXPORT ANTLRBitSet* GSWHTMLLexer___tokenSet_12;
+GSW_EXPORT CONST unsigned long GSWHTMLLexer___tokenSet_13_data_[];
+GSW_EXPORT ANTLRBitSet* GSWHTMLLexer___tokenSet_13;
+GSW_EXPORT CONST unsigned long GSWHTMLLexer___tokenSet_14_data_[];
+GSW_EXPORT ANTLRBitSet* GSWHTMLLexer___tokenSet_14;
+GSW_EXPORT CONST unsigned long GSWHTMLLexer___tokenSet_15_data_[];
+GSW_EXPORT ANTLRBitSet* GSWHTMLLexer___tokenSet_15;
+GSW_EXPORT CONST unsigned long GSWHTMLLexer___tokenSet_16_data_[];
+GSW_EXPORT ANTLRBitSet* GSWHTMLLexer___tokenSet_16;
 
 #endif /*INC_GSWHTMLLexer_h_*/
diff -urN gsweb/GSWeb.framework/GSWHTMLParser.h 
gsweb.win/GSWeb.framework/GSWHTMLParser.h
--- gsweb/GSWeb.framework/GSWHTMLParser.h       Thu May  6 14:56:48 2004
+++ gsweb.win/GSWeb.framework/GSWHTMLParser.h   Thu May  6 16:02:42 2004
@@ -13,6 +13,8 @@
 
 #include "GSWeb.h"
 
+#include "GSWDefs.h"
+
 #include "gsantlr/ANTLRCommon.h"
 #include "gsantlr/ANTLRTokenizer.h"
 #include "gsantlr/ANTLRTokenBuffer.h"
@@ -34,9 +36,9 @@
 @end;
 
 
-extern CONST NSString* GSWHTMLParser___tokenNames[];
+GSW_EXPORT CONST NSString* GSWHTMLParser___tokenNames[];
 
-extern CONST unsigned long GSWHTMLParser___tokenSet_0_data_[];
-extern ANTLRBitSet* GSWHTMLParser___tokenSet_0;
+GSW_EXPORT CONST unsigned long GSWHTMLParser___tokenSet_0_data_[];
+GSW_EXPORT ANTLRBitSet* GSWHTMLParser___tokenSet_0;
 
 #endif /*INC_GSWHTMLParser_h_*/
diff -urN gsweb/GSWeb.framework/GSWMultiKeyDictionary.m 
gsweb.win/GSWeb.framework/GSWMultiKeyDictionary.m
--- gsweb/GSWeb.framework/GSWMultiKeyDictionary.m       Thu May  6 14:56:48 2004
+++ gsweb.win/GSWeb.framework/GSWMultiKeyDictionary.m   Thu May  6 16:02:44 2004
@@ -43,6 +43,8 @@
 // Copied from NSDate.m. We should find a better solution....
 static NSTimeInterval GSWTimeNow(void)
 {
+  return [NSData timeIntervalSinceReferenceDate];
+#if 0
 #if !defined(__MINGW__)
   NSTimeInterval interval;
   struct timeval tp;
@@ -82,6 +84,7 @@
 #endif
   return t;
 #endif /* __MINGW__ */
+#endif
 }
 
 typedef struct _GSWMapTable GSWMapTable_t;
diff -urN gsweb/GSWeb.framework/GSWPageDefLexer.h 
gsweb.win/GSWeb.framework/GSWPageDefLexer.h
--- gsweb/GSWeb.framework/GSWPageDefLexer.h     Thu May  6 14:56:48 2004
+++ gsweb.win/GSWeb.framework/GSWPageDefLexer.h Thu May  6 16:02:42 2004
@@ -13,6 +13,7 @@
 
 #include "GSWeb.h"
 
+#include "GSWDefs.h"
 
 #include "gsantlr/ANTLRCommon.h"
 #include "gsantlr/ANTLRCommonToken.h"
@@ -60,23 +61,23 @@
 
 
 
-extern CONST unsigned long GSWPageDefLexer___tokenSet_0_data_[];
-extern ANTLRBitSet* GSWPageDefLexer___tokenSet_0;
-extern CONST unsigned long GSWPageDefLexer___tokenSet_1_data_[];
-extern ANTLRBitSet* GSWPageDefLexer___tokenSet_1;
-extern CONST unsigned long GSWPageDefLexer___tokenSet_2_data_[];
-extern ANTLRBitSet* GSWPageDefLexer___tokenSet_2;
-extern CONST unsigned long GSWPageDefLexer___tokenSet_3_data_[];
-extern ANTLRBitSet* GSWPageDefLexer___tokenSet_3;
-extern CONST unsigned long GSWPageDefLexer___tokenSet_4_data_[];
-extern ANTLRBitSet* GSWPageDefLexer___tokenSet_4;
-extern CONST unsigned long GSWPageDefLexer___tokenSet_5_data_[];
-extern ANTLRBitSet* GSWPageDefLexer___tokenSet_5;
-extern CONST unsigned long GSWPageDefLexer___tokenSet_6_data_[];
-extern ANTLRBitSet* GSWPageDefLexer___tokenSet_6;
-extern CONST unsigned long GSWPageDefLexer___tokenSet_7_data_[];
-extern ANTLRBitSet* GSWPageDefLexer___tokenSet_7;
-extern CONST unsigned long GSWPageDefLexer___tokenSet_8_data_[];
-extern ANTLRBitSet* GSWPageDefLexer___tokenSet_8;
+GSW_EXPORT CONST unsigned long GSWPageDefLexer___tokenSet_0_data_[];
+GSW_EXPORT ANTLRBitSet* GSWPageDefLexer___tokenSet_0;
+GSW_EXPORT CONST unsigned long GSWPageDefLexer___tokenSet_1_data_[];
+GSW_EXPORT ANTLRBitSet* GSWPageDefLexer___tokenSet_1;
+GSW_EXPORT CONST unsigned long GSWPageDefLexer___tokenSet_2_data_[];
+GSW_EXPORT ANTLRBitSet* GSWPageDefLexer___tokenSet_2;
+GSW_EXPORT CONST unsigned long GSWPageDefLexer___tokenSet_3_data_[];
+GSW_EXPORT ANTLRBitSet* GSWPageDefLexer___tokenSet_3;
+GSW_EXPORT CONST unsigned long GSWPageDefLexer___tokenSet_4_data_[];
+GSW_EXPORT ANTLRBitSet* GSWPageDefLexer___tokenSet_4;
+GSW_EXPORT CONST unsigned long GSWPageDefLexer___tokenSet_5_data_[];
+GSW_EXPORT ANTLRBitSet* GSWPageDefLexer___tokenSet_5;
+GSW_EXPORT CONST unsigned long GSWPageDefLexer___tokenSet_6_data_[];
+GSW_EXPORT ANTLRBitSet* GSWPageDefLexer___tokenSet_6;
+GSW_EXPORT CONST unsigned long GSWPageDefLexer___tokenSet_7_data_[];
+GSW_EXPORT ANTLRBitSet* GSWPageDefLexer___tokenSet_7;
+GSW_EXPORT CONST unsigned long GSWPageDefLexer___tokenSet_8_data_[];
+GSW_EXPORT ANTLRBitSet* GSWPageDefLexer___tokenSet_8;
 
 #endif /*INC_GSWPageDefLexer_h_*/
diff -urN gsweb/GSWeb.framework/GSWPageDefParser.h 
gsweb.win/GSWeb.framework/GSWPageDefParser.h
--- gsweb/GSWeb.framework/GSWPageDefParser.h    Thu May  6 14:56:48 2004
+++ gsweb.win/GSWeb.framework/GSWPageDefParser.h        Thu May  6 16:02:46 2004
@@ -13,6 +13,8 @@
 
 #include "GSWeb.h"
 
+#include "GSWDefs.h"
+
 #include "gsantlr/ANTLRCommon.h"
 #include "gsantlr/ANTLRTokenizer.h"
 #include "gsantlr/ANTLRTokenBuffer.h"
@@ -47,21 +49,21 @@
 @end;
 
 
-extern CONST NSString* GSWPageDefParser___tokenNames[];
+GSW_EXPORT CONST NSString* GSWPageDefParser___tokenNames[];
 
-extern CONST unsigned long GSWPageDefParser___tokenSet_0_data_[];
-extern ANTLRBitSet* GSWPageDefParser___tokenSet_0;
-extern CONST unsigned long GSWPageDefParser___tokenSet_1_data_[];
-extern ANTLRBitSet* GSWPageDefParser___tokenSet_1;
-extern CONST unsigned long GSWPageDefParser___tokenSet_2_data_[];
-extern ANTLRBitSet* GSWPageDefParser___tokenSet_2;
-extern CONST unsigned long GSWPageDefParser___tokenSet_3_data_[];
-extern ANTLRBitSet* GSWPageDefParser___tokenSet_3;
-extern CONST unsigned long GSWPageDefParser___tokenSet_4_data_[];
-extern ANTLRBitSet* GSWPageDefParser___tokenSet_4;
-extern CONST unsigned long GSWPageDefParser___tokenSet_5_data_[];
-extern ANTLRBitSet* GSWPageDefParser___tokenSet_5;
-extern CONST unsigned long GSWPageDefParser___tokenSet_6_data_[];
-extern ANTLRBitSet* GSWPageDefParser___tokenSet_6;
+GSW_EXPORT CONST unsigned long GSWPageDefParser___tokenSet_0_data_[];
+GSW_EXPORT ANTLRBitSet* GSWPageDefParser___tokenSet_0;
+GSW_EXPORT CONST unsigned long GSWPageDefParser___tokenSet_1_data_[];
+GSW_EXPORT ANTLRBitSet* GSWPageDefParser___tokenSet_1;
+GSW_EXPORT CONST unsigned long GSWPageDefParser___tokenSet_2_data_[];
+GSW_EXPORT ANTLRBitSet* GSWPageDefParser___tokenSet_2;
+GSW_EXPORT CONST unsigned long GSWPageDefParser___tokenSet_3_data_[];
+GSW_EXPORT ANTLRBitSet* GSWPageDefParser___tokenSet_3;
+GSW_EXPORT CONST unsigned long GSWPageDefParser___tokenSet_4_data_[];
+GSW_EXPORT ANTLRBitSet* GSWPageDefParser___tokenSet_4;
+GSW_EXPORT CONST unsigned long GSWPageDefParser___tokenSet_5_data_[];
+GSW_EXPORT ANTLRBitSet* GSWPageDefParser___tokenSet_5;
+GSW_EXPORT CONST unsigned long GSWPageDefParser___tokenSet_6_data_[];
+GSW_EXPORT ANTLRBitSet* GSWPageDefParser___tokenSet_6;
 
 #endif /*INC_GSWPageDefParser_h_*/
diff -urN gsweb/GSWeb.framework/GSWProcFS.m 
gsweb.win/GSWeb.framework/GSWProcFS.m
--- gsweb/GSWeb.framework/GSWProcFS.m   Thu May  6 14:56:48 2004
+++ gsweb.win/GSWeb.framework/GSWProcFS.m       Thu May  6 16:02:54 2004
@@ -32,6 +32,8 @@
    </license>
 **/
 
+#if !defined(__WIN32__)
+
 #include "config.h"
 
 RCS_ID("$Id: GSWProcFS.m,v 1.5 2003/11/24 09:02:57 mguesdon Exp $")
@@ -422,3 +424,5 @@
 
 
 @end
+
+#endif
diff -urN gsweb/GSWeb.framework/GSWResourceManager.h 
gsweb.win/GSWeb.framework/GSWResourceManager.h
--- gsweb/GSWeb.framework/GSWResourceManager.h  Thu May  6 14:56:48 2004
+++ gsweb.win/GSWeb.framework/GSWResourceManager.h      Thu May  6 16:02:46 2004
@@ -33,7 +33,9 @@
 #ifndef _GSWResourceManager_h__
        #define _GSWResourceManager_h__
 
-extern NSDictionary* globalMime;
+#include "GSWDefs.h"
+
+GSW_EXPORT NSDictionary* globalMime;
 
 //====================================================================
 @interface GSWResourceManager : NSObject <NSLocking>
diff -urN gsweb/GSWeb.framework/GSWSession.h 
gsweb.win/GSWeb.framework/GSWSession.h
--- gsweb/GSWeb.framework/GSWSession.h  Thu May  6 14:56:48 2004
+++ gsweb.win/GSWeb.framework/GSWSession.h      Thu May  6 16:02:46 2004
@@ -131,7 +131,7 @@
 
 -(void)savePage:(GSWComponent*)page;
 -(GSWComponent*)restorePageForContextID:(NSString*)aContextID;
--(uint)permanentPageCacheSize;
+-(UINT)permanentPageCacheSize;
 -(void)savePageInPermanentCache:(GSWComponent*)page;
 
 @end
@@ -159,7 +159,7 @@
 -(void)_replacePage:(GSWComponent*)page;
 -(void)_savePage:(GSWComponent*)page
        forChange:(BOOL)forChange;
--(uint)pageCacheSize;
+-(UINT)pageCacheSize;
 -(void)_saveCurrentPage;
 -(int)_requestCounter;
 -(void)_contextDidIncrementContextID;
diff -urN gsweb/GSWeb.framework/GSWSession.m 
gsweb.win/GSWeb.framework/GSWSession.m
--- gsweb/GSWeb.framework/GSWSession.m  Thu May  6 14:56:48 2004
+++ gsweb.win/GSWeb.framework/GSWSession.m      Thu May  6 16:02:46 2004
@@ -759,7 +759,7 @@
 
 //--------------------------------------------------------------------
 //NDFN
--(uint)permanentPageCacheSize
+-(UINT)permanentPageCacheSize
 {
   return [GSWApp permanentPageCacheSize];
 };
@@ -1097,7 +1097,7 @@
 
 //--------------------------------------------------------------------
 //NDFN
--(uint)pageCacheSize
+-(UINT)pageCacheSize
 {
   return [GSWApp pageCacheSize];
 };
diff -urN gsweb/GSWeb.framework/GSWStatisticsStore.m 
gsweb.win/GSWeb.framework/GSWStatisticsStore.m
--- gsweb/GSWeb.framework/GSWStatisticsStore.m  Thu May  6 14:56:48 2004
+++ gsweb.win/GSWeb.framework/GSWStatisticsStore.m      Thu May  6 16:02:46 2004
@@ -33,7 +33,9 @@
 
 #include "GSWeb.h"
 
+#if !defined(__WIN32__)
 #include <sys/resource.h>
+#endif
 #include <unistd.h>
 
 //====================================================================
@@ -855,6 +857,7 @@
 //--------------------------------------------------------------------
 -(NSDictionary*)_memoryUsage
 {
+#if !defined(__WIN32__)
   struct rusage rusageStruct;
   int i=0;
   LOGObjectFnStart();
@@ -897,6 +900,8 @@
     pidstatm(getpid(),&P);
   };
   NSDebugMLog(@"ProcInfo:%@",[GSWProcFSProcInfo filledProcInfo]);
+
+#endif
   
   //{Committed = 14184448; Reserved = 19025920; }
 /*
@@ -925,7 +930,9 @@
 
 
   LOGObjectFnNotImplemented(); //TODOFN
+#if !defined(__WIN32__)
   LOGObjectFnStop();
+#endif
   return nil;
 };
 
diff -urN gsweb/GSWeb.framework/GSWUtils.h gsweb.win/GSWeb.framework/GSWUtils.h
--- gsweb/GSWeb.framework/GSWUtils.h    Thu May  6 14:56:48 2004
+++ gsweb.win/GSWeb.framework/GSWUtils.h        Thu May  6 16:02:54 2004
@@ -33,8 +33,11 @@
 #define _GSWebUtils_h__
 
 #include <sys/time.h>
+#include "GSWDefs.h"
 
+#if !defined(__WIN32__)
 #define CONST
+#endif
 #ifndef max
 #define max(a,b) ((a) > (b) ? (a) : (b))
 #endif
@@ -51,14 +54,20 @@
 static void VoidUseRCSId() { rcsId[0]=0; };
 
 #ifndef BYTE_DEFINED
+#if !defined(__WIN32__)
 typedef unsigned char BYTE;
+#endif
 #define BYTE_DEFINED
 #endif
 #ifndef UINTs_DEFINED
+#if !defined(__WIN32__)
 typedef unsigned int UINT;
+#endif
 typedef unsigned char UINT8;
 typedef unsigned short UINT16;
+#if !defined(__WIN32__)
 typedef unsigned int UINT32;
+#endif
 #define UINTs_DEFINED
 #endif
 
@@ -66,26 +75,26 @@
 
 BOOL ClassIsKindOfClass(Class classA,Class classB);
 
-void ExceptionRaiseFn(const char *func, 
+GSW_EXPORT void ExceptionRaiseFn(const char *func, 
                      const char *file,
                      int line,
                      NSString* name_,
                      NSString* format_,
                      ...);
-void ExceptionRaiseFn0(const char *func, 
+GSW_EXPORT void ExceptionRaiseFn0(const char *func, 
                       const char *file,
                       int line,
                       NSString* name_,
                       NSString* format_);
 
-void ValidationExceptionRaiseFn(const char *func, 
+GSW_EXPORT void ValidationExceptionRaiseFn(const char *func, 
                                const char *file,
                                int line,
                                NSString* name_,
                                NSString* message_,
                                NSString* format_,
                                ...);
-void ValidationExceptionRaiseFn0(const char *func, 
+GSW_EXPORT void ValidationExceptionRaiseFn0(const char *func, 
                                 const char *file,
                                 int line,
                                 NSString* name_,
@@ -108,20 +117,21 @@
   { ValidationExceptionRaiseFn0(__PRETTY_FUNCTION__, __FILE__, __LINE__,\
                                 name_,message_,format_); }
 
-extern BOOL boolValueFor(id id_);
-extern BOOL boolValueWithDefaultFor(id id_,BOOL defaultValue);
-//extern BOOLNB boolNbFor(BOOL value_);
-extern BOOL isHeaderKeysEqual(NSString* headerKey,NSString* testKey);
-extern BOOL SBIsEqual(id id1,id id2);
-extern BOOL SBIsValueEqual(id id1,id id2);
-extern BOOL SBIsValueIsIn(id id1,id id2);
-
-extern id GetTmpName(NSString* dir,NSString* prefix);
-extern NSTimeInterval NSTimeIntervalFromTimeVal(struct timeval* tv);
-extern void NSTimeIntervalSleep(NSTimeInterval ti);
+GSW_EXPORT BOOL boolValueFor(id id_);
+GSW_EXPORT BOOL boolValueWithDefaultFor(id id_,BOOL defaultValue);
+//GSW_EXPORT BOOLNB boolNbFor(BOOL value_);
+GSW_EXPORT BOOL isHeaderKeysEqual(NSString* headerKey,NSString* testKey);
+GSW_EXPORT BOOL SBIsEqual(id id1,id id2);
+GSW_EXPORT BOOL SBIsValueEqual(id id1,id id2);
+GSW_EXPORT BOOL SBIsValueIsIn(id id1,id id2);
+
+GSW_EXPORT id GetTmpName(NSString* dir,NSString* prefix);
+GSW_EXPORT NSTimeInterval NSTimeIntervalFromTimeVal(struct timeval* tv);
+GSW_EXPORT void NSTimeIntervalSleep(NSTimeInterval ti);
 /* Basic data structure which holds all information we can get about a process.
  * (unless otherwise specified, fields are read from /proc/#/stat)
  */
+#if !defined(__WIN32__)
 typedef struct proc_s {
     char
         user[10],       /* user name corresponding to owner of process */
@@ -183,10 +193,11 @@
 } proc_t;
 extern void pidstat(pid_t pid, proc_t* P);
 extern void pidstatm(pid_t pid, proc_t* P);
+#endif
 
 
 
-extern NSString* GSWGetDefaultDocRoot();
+GSW_EXPORT NSString* GSWGetDefaultDocRoot();
 
 //====================================================================
 @interface NSException (NSBuild)
@@ -320,14 +331,14 @@
   (loggedUnlockFromFunctionInFileInLine(__lock, \
      __FILE__, __PRETTY_FUNCTION__, __LINE__))
 
-extern BOOL
+GSW_EXPORT BOOL
 loggedLockBeforeDateFromFunctionInFileInLine(id self,
                                             BOOL try,
                                             NSDate *limit, 
                                             const char *file,
                                             const char *function,
                                             long line);
-extern void
+GSW_EXPORT void
 loggedUnlockFromFunctionInFileInLine(id self,
                                     const char *file,
                                     const char *function,
diff -urN gsweb/GSWeb.framework/GSWUtils.m gsweb.win/GSWeb.framework/GSWUtils.m
--- gsweb/GSWeb.framework/GSWUtils.m    Thu May  6 14:56:48 2004
+++ gsweb.win/GSWeb.framework/GSWUtils.m        Thu May  6 16:02:54 2004
@@ -209,6 +209,9 @@
 
 void NSTimeIntervalSleep(NSTimeInterval ti)
 {
+#if defined(__WIN32__)
+  Sleep((DWORD)ti);
+#else
   struct timespec ts;  
   struct timespec remaining;
   ts.tv_sec=(time_t)ti;
@@ -220,6 +223,7 @@
     {
       NSDebugFLog(@"remaining tv_sec=%ld 
tv_nsec=%ld",(long)remaining.tv_sec,remaining.tv_nsec);
     };
+#endif
 };
 
 NSString* pidproccontent(NSString* path)
@@ -261,6 +265,7 @@
     };
   return content;
 };
+#if !defined(__WIN32__)
 void pidstat(pid_t pid, proc_t* P)
 {
   NSString* filename=[NSString stringWithFormat:@"/proc/%d/stat",(int)pid];
@@ -337,6 +342,7 @@
       NSDebugFLog(@"P->dt=%ld",P->dt);   
     };
 };
+#endif /* __WIN32__ */
 
 //--------------------------------------------------------------------
 void StackTraceIFND()
diff -urN gsweb/GSWeb.framework/GSWeb.h gsweb.win/GSWeb.framework/GSWeb.h
--- gsweb/GSWeb.framework/GSWeb.h       Thu May  6 14:56:48 2004
+++ gsweb.win/GSWeb.framework/GSWeb.h   Thu May  6 16:02:52 2004
@@ -139,7 +139,9 @@
 @class GSWComponentContent;
 @class GSWFileUpload;
 @class GSWResourceURL;
+#if !defined(__WIN32__)
 @class GSWProcFSProcInfo;
+#endif
 @class GSWLifebeatThread;
 @class GSWAdminAction;
 @class GSWStack;
@@ -152,7 +154,9 @@
 
 #include "GSWConstants.h"
 #include "GSWUtils.h"
+#if !defined(__WIN32__)
 #include "GSWProcFS.h"
+#endif
 #include "GSWDebug.h"
 #include "NSString+Trimming.h"
 #include "NSString+HTML.h"
diff -urN gsweb/GSWeb.framework/NSNonBlockingFileHandle.m 
gsweb.win/GSWeb.framework/NSNonBlockingFileHandle.m
--- gsweb/GSWeb.framework/NSNonBlockingFileHandle.m     Thu May  6 14:56:48 2004
+++ gsweb.win/GSWeb.framework/NSNonBlockingFileHandle.m Thu May  6 16:02:54 2004
@@ -81,11 +81,23 @@
 -(unsigned int)_availableByteCountNonBlocking
 {
   int numBytes=0;
+#if defined(__WIN32__)
+  SOCKET fd = NULL;
+#else
   int fd = 0;
+#endif
   LOGObjectFnStart();
+#if defined(__WIN32__)
+  fd=[self nativeHandle];
+#else
   fd=[self fileDescriptor];
+#endif
 
+#if defined(__MINGW__)
+  if (ioctlsocket(fd, FIONREAD, (char *) &numBytes) == -1)
+#else
   if (ioctl(fd, FIONREAD, (char *) &numBytes) == -1)
+#endif
     {
       LOGException0(@"NSFileHandleOperationException ioctl() Err");
       [NSException raise: NSFileHandleOperationException
diff -urN gsweb/GSWeb.framework/NSString+HTML.m 
gsweb.win/GSWeb.framework/NSString+HTML.m
--- gsweb/GSWeb.framework/NSString+HTML.m       Thu May  6 14:56:48 2004
+++ gsweb.win/GSWeb.framework/NSString+HTML.m   Thu May  6 16:02:54 2004
@@ -34,6 +34,8 @@
 
 #include "GSWeb.h"
 
+#include <limits.h>
+
 static NSArray* normalChars=nil;
 static NSArray* htmlChars=nil;
 

reply via email to

[Prev in Thread] Current Thread [Next in Thread]