Installation
************

This file documents the installation of GNUstepWeb, `gsweb'.  Copyright
(C) 1999-2001 Free Software Foundation, Inc.  You may copy, distribute, and
modify it freely as long as you preserve this copyright notice and
permission notice.

   This is version 1.1.0 of GNUstepWeb.

   This package contains GNUstepWeb library. You need to install
GNUstep core, extensions and db libraries, GSWAdaptor and Apache
Please download last up to date cvs version of GNUstep (some bugs
have been corrected).

Remark: We suppose that the GNUstep folder is on /usr/GNUstep, please check all the paths below with your configuration

Installing `gsweb'
====================

 Libraries requiered :
 ---------------------

	gsantlr/	GSANTLR (Parser classes,...)
	gsgd/		Objective-C/GD Interface
	core/		GNUstep core
	db/			GNUstep database
	extensions/	Extensions

 The GNUStepWeb package:
 -----------------------
	* GNUstepWeb/				----->	GNUstepWeb Root
	* GNUstepWeb/GSWeb.framework		----->	GNUstepWeb Main Part
	* GNUstepWeb/GSWExtensions.framework    ----->	GNUstepWeb 'standard' Extensions
	* GNUstepWeb/GSWExtensionsGSW.framework	----->	GNUstepWeb Extensions



 Compilation Order:
 ------------------

1) core
 
2) extensions
   It adds the Header exceptions folders (both in Foundation and extensions)

3) db
4) gsantlr
5) the 'gd' libraries. You must have a /usr/include/gd.h file. If not take sources on http://www.boutell.com/gd
   Extract and compile

6) gsgd

8) GNUstepWeb
     Go in the gsweb folder. make and make install.

9) Apaches modules for GNUstepWeb
    Still in the gsweb folder there is a GSWAdaptors/Apache folder, go in and make. There no make install. Instead you must copy the mod_gsweb.so module in you Apache libexec directory (something like /usr/apache/libexec).

At this point everything is done, still remains the Apache configuration:

You have to export the following env var:
export GNUSTEP_STRING_ENCODING=NSISOLatin1StringEncoding

If you do not want the extensions you can compile with ADDITIONAL_OBJCFLAGS += -DNOEXTENSIONS
in config.mak

Configurating Apache:
=====================

	In Apache httpd.conf file, add thoses lines:

	LoadModule GSWeb_Module  libexec/mod_gsweb.so
	AddModule mod_gsweb.c

	And this one to specify the configuration file (for exemple /etc/httpd/conf/gsweb.conf)

	GSWeb_ConfigFilePath /etc/httpd/conf/gsweb.conf


 If you use virtual hosts (Apache in localhost does not requiered them), add the following lines:

	<Location /GSWeb*>
		SetHandler GSWeb
	</Location>

 Then, create the file configuration file (for exemple /etc/httpd/conf/gsweb.conf) which contains parameters for GNUstepWeb Applications: 

 The format is(there is an example for values below):

{
	canDumpStatus=YES;	//YES if server can display status (URL: /GSWeb/status)
	GSWExtensionsFrameworkWebServerResources="/GSW/GSWExtensions/WebServerResources";	//URL of GSWExtensions Framework WebServerResources directory

	applications=    {
				ApplicationName =  {
		                    //URL of GSWExtensions Framework WebServerResources directory. It overides Global parameter
		                    GSWExtensionsFrameworkWebServerResources="/GSW/GSWExtensions/WebServerResources";

							//YES to say that this application can be listed when the adaptor don't find an application
							canDump = YES;

							instances =	{
 											InstanceNumber =	{
													host= IPAdressOfTheComputerOnWhichRunTheApplication;
													port= ThePortListenByTheApplication;
													parameters=      {
																		transport= socket;
																		};
												 }
								       		};
									};
						};
}


exemple values for a localhost use: 
{
	canDumpStatus=YES;
	GSWExtensionsFrameworkWebServerResources="/GSW/GSWExtensions/WebServerResources";
	applications=    {
				MyApp =  {
						canDump = YES;
						instances =      {
											1 = {
													host= 127.0.0.1;
													port= 9001;
													parameters=      {
																		transport= socket;
																	};
												}
								      };
						};
					};
}


Now, develop an application and run it !

We'll try to put a sample application soon.

