bottleneck testcase based on rubbos
[bottlenecks.git] / rubbos / app / tomcat-connectors-1.2.32-src / native / BUILDING.txt
1   Licensed to the Apache Software Foundation (ASF) under one or more
2   contributor license agreements.  See the NOTICE file distributed with
3   this work for additional information regarding copyright ownership.
4   The ASF licenses this file to You under the Apache License, Version 2.0
5   (the "License"); you may not use this file except in compliance with
6   the License.  You may obtain a copy of the License at
7
8       http://www.apache.org/licenses/LICENSE-2.0
9
10   Unless required by applicable law or agreed to in writing, software
11   distributed under the License is distributed on an "AS IS" BASIS,
12   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   See the License for the specific language governing permissions and
14   limitations under the License.
15
16  
17   Building from the subversion tree: (for developers only).
18   -----------------------------------
19   When using a subversion tree buildconf.sh must be run before configure.
20   The today version of buildconf.sh build the following files:
21   libtool files in scripts/build/unix (should copy them?).
22   Makefile.in from Makefile.am
23   aclocal.m4 from different m4 files located in the local machine.
24   configure from configure.in and aclocal.m4.
25   If you see error message from automake, don't care about them.
26
27
28   Building using configure
29   ------------------------
30  
31   It is possible to use autoconf for configuration and installation.
32   To create tomcat-connectors's autoconf script, you will need libtool
33   1.5.2, automake 1.10 and autoconf 2.59 or newer. The use of more recent
34   versions is strongly encouraged, e.g. for reliable detection of the
35   features of recent version of operating systems (e.g. AIX 6.1).
36
37   Those tools will not be required if you are just
38   using a package downloaded from apache.org, they are only required for
39   developers.
40  
41   To configure tomcat-connectors run the following commands.
42  
43   ./buildconf.sh  (not required unless you are a developer)
44   ./configure [autoconf arguments] [tomcat-connectors arguments]
45   make
46
47   It is possible to set CFLAGS and LDFLAGS to add some platform specifics:
48   LDFLAGS=-lc \
49   ./configure -with-apxs=/home2/local/apache/bin/apxs
50
51   
52   Build for both Apache HTTP Server 1.3 and 2.0
53   ---------------------------------------------
54
55   If you want to build mod_jk for Apache HTTP Server
56   1.3 and 2.0, you should :
57
58   use configure and indicate Apache HTTP Server 1.3
59   apxs location (--with-apxs)
60   use make
61   copy the mod_jk binary to the apache modules location
62
63   make clean (to remove all previously compiled modules)
64   use configure and indicate Apache HTTP Server 2.0
65   apxs location,
66   then make.
67
68   ./configure --with-apxs=/usr/sbin/apxs
69   make
70   cp ./apache-1.3/mod_jk.so /usr/lib/apache
71   make clean
72   ./configure --with-apxs=/usr/sbin/apxs2
73   make 
74   cp ./apache-2.0/mod_jk.so /usr/lib/apache2
75    
76
77   Examples
78   --------
79
80   Apache HTTP Server 2.0:
81
82   ./configure --with-apxs=/opt/apache2/bin/apxs
83
84   Apache HTTP Server 1.3:
85
86   ./configure --with-apxs=/usr/sbin/apxs 
87
88   tomcat-connectors arguments
89   -----------------------------------
90   JVM related parameters:
91   --with-java-home=DIR
92   DIR is the  patch to the JDK root directory. Something like: /opt/java/jdk12
93   --with-os-type[=SUBDIR] 
94   SUBDIR is the os-type subdirectory, normaly configure should guess it
95   correctly.
96   --with-arch-type[=SUBDIR]
97   SUBDIR is the arch subdirectory, normaly configure should guess it correctly. 
98   --with-java-platform=VAL
99   VAL is the Java platform 1 is 1.1.x and 2 is 1.2.x. It is guessed correctly.
100   
101   Apache related parameters:
102   --with-apxs[=FILE]
103   FILE is the location of the apxs tool. Default is finding apxs in PATH.
104   It builds a shared Apache module. It detects automaticly the Apache version.
105   (2.0 and 1.3)
106 * --with-apache=DIR
107   DIR is the path where apache sources are located.
108   The apache sources should have been configured before configuring mod_jk.
109   DIR is something like: /home/apache/apache_1.3.19
110   It builds a static Apache module.
111   --enable-EAPI
112   This parameter is needed when using Apache-1.3 and mod_ssl, otherwise you
113   will get the error message: "this module might crash under EAPI!" when
114   loading libjk.so in httpd.
115
116   JNI support:
117   --enable-jni
118   Build the jni_connect.so and the JNI worker.
119   Note that JNI support has been discontinued
120
121 * Static build need more tests, and we strongly recommand dynamic build
122   using DSO/APXS.
123
124
125   Installation
126   ------------
127
128   The mod_jk binary will be in :
129
130   ./apache-1.3/mod_jk.so if you select to build mod_jk for apache 1.3
131
132   ./apache-2.0/mod_jk.so if you select to build mod_jk for apache 2.0
133
134
135
136   Building for Netscape/iPlanet/SunONE WebServer
137   ----------------------------------------------
138   make clean (to remove all previously compiled modules)
139   use configure and indicate that you will be building the
140   netscape nsapi redirector, then make the redirector plugin:
141
142   ./configure --enable-netscape
143   cd netscape
144   make -f Makefile.solaris
145
146   This assumes that SUITSPOT_HOME is defined and points to
147   your SunONE install path (eg: /opt/SUNWwbsvr/plugins)
148   and that JAVA_HOME is defined (eg: /opt/SUNWwbsvr/bin/https/jdk).
149
150   Misc notes 
151   ----------
152
153   HP-UX build notes :
154
155   If you plan to use GCC on HP-UX to build mod_jk, be sure to 
156   have -DHPUX11GCC defined (usually by setting CLAGS before configure)
157
158   Reports are that the stripped down cc version that ships with
159   HP-UX won't be able to works, you should habe the HP add-on ANSI C 
160   Compiler package.
161
162   A good repository for HP-UX gnu tools is :
163
164   http://gatekeep.cs.utah.edu/
165
166
167   Solaris build notes :
168
169   the build should works with the GNU gcc compiler, on both
170   SPARC and x86 architecture systems.
171
172   A good repository for Solaris gnu tools is :
173
174   http://www.sunfreeware.com/
175
176   Be carefull when mixing native compiler and gnu compiler, and
177   ensure that apache and mod_jk will be compiled and linked with
178   the same tools (ie full Solaris or full GNU)
179