]> granicus.if.org Git - apache/blob - docs/manual/platform/netware.html.en
updated transformations.
[apache] / docs / manual / platform / netware.html.en
1 <?xml version="1.0" encoding="ISO-8859-1"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head><!--
4         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
5               This file is generated from xml source: DO NOT EDIT
6         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
7       --><title>Using Apache With Novell NetWare - Apache HTTP Server</title><link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" /><link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" /><link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link href="../images/favicon.ico" rel="shortcut icon" /></head><body id="manual-page"><div id="page-header"><p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="../faq/">FAQ</a> | <a href="../glossary.html">Glossary</a> | <a href="../sitemap.html">Sitemap</a></p><p class="apache">Apache HTTP Server Version 2.0</p><img alt="" src="../images/feather.gif" /></div><div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="../images/left.gif" /></a></div><div id="path"><a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">HTTP Server</a> &gt; <a href="http://httpd.apache.org/docs-project/">Documentation</a> &gt; <a href="../">Version 2.0</a></div><div id="page-content"><div id="preamble"><h1>Using Apache With Novell NetWare</h1>
8
9     <p>This document explains how to install, configure and run
10     Apache 2.0 under Novell NetWare 5.1 and above. If you find any bugs,
11     or wish to contribute in other ways, please use our
12     <a href="http://httpd.apache.org/bug_report.html">bug reporting
13     page.</a></p>
14
15     <p>The bug reporting page and dev-httpd mailing list are <em>not</em>
16     provided to answer questions about configuration or running Apache.
17     Before you submit a bug report or request, first consult this document, the
18     <a href="../faq/">Frequently Asked Questions</a> page and the other
19     relevant documentation topics. If you still have a question or problem,
20     post it to the <a href="news://developer-forums.novell.com/novell.devsup.webserver">
21     novell.devsup.webserver</a> newsgroup, where many Apache users are more than
22     willing to answer new and obscure questions about using Apache on NetWare.</p>
23
24     <p>Most of this document assumes that you are installing Apache
25     from a binary distribution. If you want to compile Apache
26     yourself (possibly to help with development, or to track down
27     bugs), see the section on <a href="#comp">Compiling Apache for
28     NetWare</a> below.</p>
29
30   </div><div id="quickview"><ul id="toc"><li><img alt="" src="../images/down.gif" /> <a href="#req">Requirements</a></li><li><img alt="" src="../images/down.gif" /> <a href="#down">Downloading Apache for NetWare</a></li><li><img alt="" src="../images/down.gif" /> <a href="#inst">Installing Apache for NetWare</a></li><li><img alt="" src="../images/down.gif" /> <a href="#run">Running Apache for NetWare</a></li><li><img alt="" src="../images/down.gif" /> <a href="#use">Configuring Apache for NetWare</a></li><li><img alt="" src="../images/down.gif" /> <a href="#comp">Compiling Apache for NetWare</a></li></ul></div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div><div class="section"><h2><a name="req" id="req">Requirements</a></h2>
31
32     
33
34     <p>Apache 2.0 is designed to run on NetWare 5.1 and above.</p>
35
36     <p><strong>If running on NetWare 5.1 you must install Service
37     Pack 4 or above.</strong></p>
38
39     <p><strong>If running on NetWare 6 you must install Service
40     Pack 1 or above.</strong></p>
41
42     <p>NetWare service packs are available <a href="http://support.novell.com/misc/patlst.htm#nw">here</a>.</p>
43
44   </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div><div class="section"><h2><a name="down" id="down">Downloading Apache for NetWare</a></h2>
45
46     
47
48     <p>Information on the latest version of Apache can be found on
49     the Apache web server at <a href="http://www.apache.org/">http://www.apache.org/</a>. This
50     will list the current release, any more recent alpha or
51     beta-test releases, together with details of mirror web and
52     anonymous ftp sites.</p>
53
54   </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div><div class="section"><h2><a name="inst" id="inst">Installing Apache for NetWare</a></h2>
55
56     
57
58     <p>There is no Apache install program for NetWare currently. You
59     will need to compile apache and copy the files over to the
60     server manually. An install program will be posted at a later
61     date.</p>
62
63     <p>Follow these steps to install Apache on NetWare from the
64     binary download (assuming you will install to
65     <code>sys:/apache2</code>):</p>
66
67     <ul>
68       <li>Unzip the binary download file to the root of the <code>SYS:</code>
69       volume (may be installed to any volume)</li>
70
71       <li>Edit the <code>httpd.conf</code> file setting <code class="directive"><a href="../mod/core.html#serverroot">ServerRoot</a></code> and <code class="directive"><a href="../mod/core.html#servername">ServerName</a></code> to reflect your correct server
72       settings</li>
73
74       <li>Add <code>SYS:/APACHE2</code> to the search path, for example:
75         <div class="example"><p><code>SEARCH ADD SYS:\APACHE2</code></p></div>
76       </li>
77
78     </ul>
79
80     <p>Follow these steps to install Apache on NetWare manually
81     from your own build source (assuming you will install to
82     <code>sys:/apache</code>):</p>
83
84     <ul>
85       <li>Create a directory called <code>Apache2</code> on a
86       NetWare volume</li>
87
88       <li>Copy <code>APACHE2.NLM</code>, <code>APRLIB.NLM</code>,
89       <code>HTDIGEST.NLM</code>, <code>HTPASSWD.NLM</code>
90       to <code>SYS:/APACHE2</code></li>
91
92       <li>Create a directory under <code>SYS:/APACHE2</code>
93       called <code>CONF</code></li>
94
95       <li>Copy the <code>HTTPD-STD.CONF</code> file to the
96       <code>SYS:/APACHE2/CONF</code> directory and rename to
97       <code>HTTPD.CONF</code></li>
98
99       <li>Copy the <code>MIME.TYPES</code> and <code>MAGIC</code>
100       files to <code>SYS:/APACHE2/CONF</code> directory</li>
101
102       <li>Copy all files and subdirectories in <code>\HTTPD-2.0\DOCS\ICONS</code>
103       to <code>SYS:/APACHE2/ICONS</code></li>
104
105       <li>Copy all files and subdirectories in <code>\HTTPD-2.0\DOCS\MANUAL</code>
106       to <code>SYS:/APACHE2/MANUAL</code></li>
107
108       <li>Copy all files and subdirectories in <code>\HTTPD-2.0\DOCS\ERROR</code>
109       to <code>SYS:/APACHE2/ERROR</code></li>
110
111       <li>Copy all files and subdirectories in <code>\HTTPD-2.0\DOCS\DOCROOT</code>
112       to <code>SYS:/APACHE2/HTDOCS</code></li>
113
114       <li>Create the directory <code>SYS:/APACHE2/LOGS</code>
115       on the server</li>
116
117       <li>Create the directory <code>SYS:/APACHE2/CGI-BIN</code>
118       on the server</li>
119
120       <li>Create the directory <code>SYS:/APACHE2/MODULES</code>
121       and copy all nlm modules into the <code>modules</code> directory</li>
122
123       <li>Edit the <code>HTTPD.CONF</code> file searching for all
124       <code>@@Value@@</code> markers and replacing them with the
125       appropriate setting</li>
126
127       <li>Add <code>SYS:/APACHE2</code> to the search path, for example:
128         <div class="example"><p><code>SEARCH ADD SYS:\APACHE2</code></p></div>
129       </li>
130     </ul>
131
132     <p>Apache may be installed to other volumes besides the default <code>SYS</code> volume.</p>
133
134   </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div><div class="section"><h2><a name="run" id="run">Running Apache for NetWare</a></h2>
135
136     
137
138     <p>To start Apache just type <code>apache</code> at the
139     console. This will load apache in the OS address space. If you
140     prefer to load Apache in a protected address space you may
141     specify the address space with the load statement as follows:</p>
142
143     <div class="example"><p><code>
144       load address space = apache2 apache2
145     </code></p></div>
146
147     <p>This will load Apache into an address space called apache.
148     Running multiple instances of Apache concurrently on NetWare is
149     possible by loading each instance into its own protected
150     address space.</p>
151
152     <p>After starting Apache, it will be listening to port 80
153     (unless you changed the <code class="directive"><a href="../mod/mpm_common.html#listen">Listen</a></code>
154     directive in the configuration files).
155     To connect to the server and access the default page,
156     launch a browser and enter the server's name or address. This
157     should respond with a welcome page, and a link to the Apache
158     manual. If nothing happens or you get an error, look in the
159     <code>error_log</code> file in the <code>logs</code>
160     directory.</p>
161
162     <p>Once your basic installation is working, you should
163     configure it properly by editing the files in the
164     <code>conf</code> directory.</p>
165
166     <p>To unload Apache running in the OS address space just type
167     the following at the console:</p>
168
169     <div class="example"><p><code>
170       unload apache2
171     </code></p></div>
172
173     <p>or</p>
174
175     <div class="example"><p><code>
176       apache2 shutdown
177     </code></p></div>
178
179     <p>If apache is running in a protected address space specify the
180     address space in the unload statement:</p>
181
182     <div class="example"><p><code>
183       unload address space = apache2 apache2
184     </code></p></div>
185
186     <p>When working with Apache it is important to know how it will
187     find the configuration files. You can specify a configuration
188     file on the command line in two ways:</p>
189
190     <ul>
191       <li><code>-f</code> specifies a path to a particular
192       configuration file</li>
193     </ul>
194
195     <div class="example"><p><code>
196       apache2 -f "vol:/my server/conf/my.conf"
197     </code></p></div>
198
199     <div class="example"><p><code>
200       apache -f test/test.conf
201     </code></p></div>
202
203     <p>In these cases, the proper <code class="directive"><a href="../mod/core.html#serverroot">ServerRoot</a></code>
204     should be set in the configuration file.</p>
205
206     <p>If you don't specify a configuration file name with <code>-f</code>,
207     Apache will use the file name compiled into the server, usually
208     <code>conf/httpd.conf</code>. Invoking Apache with the <code>-V</code>
209     switch will display this value labeled as <code>SERVER_CONFIG_FILE</code>.
210     Apache will then determine its <code class="directive"><a href="../mod/core.html#serverroot">ServerRoot</a></code>
211     by trying the following, in this order:</p>
212
213     <ul>
214       <li>A <code>ServerRoot</code> directive via a
215       <code>-C</code> switch.</li>
216
217       <li>The <code>-d</code> switch on the command line.</li>
218
219       <li>Current working directory</li>
220
221       <li>The server root compiled into the server.</li>
222     </ul>
223
224     <p>The server root compiled into the server is usually <code>sys:/apache2</code>.
225     invoking apache with the <code>-V</code> switch will display this value labeled as
226     <code>HTTPD_ROOT</code>.</p>
227
228     <p>Apache 2.0 for NetWare includes a set of command line directives that can
229     be used to modify or display information about the running instance of the
230     web server. Each of these directives must be preceded by the keyword
231     <code>APACHE2</code>:</p>
232
233     <dl>
234       <dt>RESTART</dt>
235       <dd>Instructs Apache to terminate all running worker
236       threads as they become idle, reread the configuration file and restart each
237       worker thread based on the new configuration.</dd>
238
239       <dt>VERSION</dt>
240       <dd>Displays version information about the currently
241       running instance of Apache.</dd>
242
243       <dt>MODULES</dt>
244       <dd>Displays a list of loaded modules both built-in
245       and external.</dd>
246
247       <dt>DIRECTIVES</dt>
248       <dd>Displays a list of all available directives.</dd>
249
250       <dt>SETTINGS</dt>
251       <dd>Enables or disables the thread status display
252       on the console. When enabled, a status of the number of running threads
253       is displayed along with their status.</dd>
254
255       <dt>SHUTDOWN</dt>
256       <dd>Terminates the running instance of the Apache
257       web server.</dd>
258     </dl>
259
260   </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div><div class="section"><h2><a name="use" id="use">Configuring Apache for NetWare</a></h2>
261
262     
263
264     <p>Apache is configured by files in the <code>conf</code>
265     directory. These are the same as files used to configure the
266     Unix version, but there are a few different directives for
267     Apache on NetWare. See the <a href="../">Apache
268     documentation</a> for all the available directives.</p>
269
270     <p>The main differences in Apache for NetWare are:</p>
271
272     <ul>
273       <li>
274         <p>Because Apache for NetWare is multithreaded, it does not
275         use a separate process for each request, as Apache does in some Unix
276         implementations. Instead there are only threads running: a parent
277         thread, and a multiple child threads which handle the requests.</p>
278
279         <p>So the "process"-management directives are different:</p>
280
281         <p><code class="directive"><a href="../mod/mpm_common.html#maxrequestsperchild">MaxRequestsPerChild</a></code> -
282         Like the Unix directive, this controls how many requests
283         a worker thread will serve before exiting. The recommended default,
284         <code>MaxRequestsPerChild 0</code>, causes the thread to continue servicing
285         request indefinitely. It is recommended on NetWare, unless there is some
286         specific reason, that this directive always remain set to <code>0</code>.</p>
287
288         <p><code class="directive"><a href="../mod/mpm_common.html#startthreads">StartThreads</a></code> -
289         This directive tells the server how many threads it should start initially.
290         The recommended default is <code>StartThreads 50</code>.</p>
291
292         <p><code class="directive"><a href="../mod/mpm_common.html#minsparethreads">MinSpareThreads</a></code> -
293         This directive instructs the server to spawn additional worker threads
294         if the number of idle threads ever falls below this value. The recommended
295         default is <code>MinSpareThreads 10</code>.</p>
296
297         <p><code class="directive"><a href="../mod/mpm_common.html#maxsparethreads">MaxSpareThreads</a></code> -
298         This directive instructs the server to begin terminating worker threads
299         if the number of idle threads ever exceeds this value. The recommended
300         default is <code>MaxSpareThreads 100</code>.</p>
301
302         <p><code class="directive"><a href="../mod/mpm_netware.html#maxthreads">MaxThreads</a></code> -
303         This directive limits the total number of work threads to a maximum
304         value. The recommended default is <code>ThreadsPerChild 250</code>.</p>
305
306         <p><code class="directive"><a href="../mod/mpm_netware.html#threadstacksize">ThreadStackSize</a></code> -
307         This directive tells the server what size of stack to use
308         for the individual worker thread. The recommended default
309         is <code>ThreadStackSize 65536</code>.</p>
310       </li>
311
312       <li>
313         <p>The directives that accept filenames as arguments now
314         must use NetWare filenames instead of Unix ones. However,
315         because Apache uses Unix-style names internally, you must
316         use forward slashes, not backslashes. It is recommended that all rooted
317         file paths begin with a volume name. If omitted, Apache will
318         assume the <code>SYS:</code> volume.</p>
319       </li>
320
321       <li>
322         <p>Apache for NetWare has the ability to load modules at
323         runtime, without recompiling the server. If Apache is
324         compiled normally, it will install a number of optional
325         modules in the <code>\Apache2\modules</code> directory.
326         To activate these, or other modules, the <code class="directive"><a href="../mod/mod_so.html#loadmodule">LoadModule</a></code> directive
327         must be used. For example, to active the status module, use
328         the following (in addition to the status-activating
329         directives in <code>access.conf</code>):</p>
330
331         <div class="example"><p><code>
332           LoadModule status_module modules/status.nlm
333         </code></p></div>
334
335         <p>Information on <a href="../mod/mod_so.html#creating">creating loadable
336         modules</a> is also available.</p>
337       </li>
338     </ul>
339
340     <h3><a name="use-add" id="use-add">Additional NetWare specific directives:</a></h3>
341
342       
343
344       <ul>
345         <li><code class="directive"><a href="../mod/core.html#cgimapextension">CGIMapExtension</a></code> -
346         This directive maps a CGI file extension to a script interpreter.</li>
347       </ul>
348
349     
350
351   </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div><div class="section"><h2><a name="comp" id="comp">Compiling Apache for NetWare</a></h2>
352
353     
354
355     <p>Compiling Apache requires MetroWerks CodeWarrior 6.x or higher to
356     be properly installed. Once Apache has been built, it needs to be
357     installed on a NetWare volume's root directory. The default is the
358     <code>sys:/Apache2</code> directory.</p>
359
360     <p>Before running the server you must fill out the <code>conf</code>
361     directory. Copy the file <code>HTTPD-STD.CONF</code> from the distribution
362     <code>conf</code> directory and rename it to <code>HTTPD.CONF</code>.
363     Edit the <code>HTTPD.CONF</code> file searching for all <code>@@Value@@</code>
364     markers and replacing them with the appropriate setting. Copy over
365     the <code>conf/magic</code> and <code>conf/mime.types</code> files as well.</p>
366
367     <h3><a name="comp-req" id="comp-req">Requirements:</a></h3>
368
369       
370
371       <p>The following development tools are required to build
372       Apache 2.0 for NetWare:</p>
373
374       <ul>
375         <li>Metrowerks CodeWarrior 6.0 or higher with the
376         <a href="http://developer.novell.com/ndk/cwpdk.htm">NetWare PDK 3.0</a>
377         or higher.</li>
378
379         <li><a href="http://developer.novell.com/ndk/libc.htm">NetWare Libraries
380         for C (LibC)</a></li>
381
382         <li><a href="http://developer.novell.com/ndk/ws2comp.htm">WinSock 2
383         Developer Components for NetWare</a></li>
384
385         <li>To build using either the project file or the make files, requires an
386         AWK utility (awk, gawk or similar). AWK can be downloaded from
387         <a href="http://developer.novell.com/ndk/apache.htm">http://developer.novell.com/ndk/apache.htm</a>.
388         The utility must be found in your windows path and must be named <code>awk.exe</code>.</li>
389
390         <li>To build using the makefiles, you will need GNU make version 3.78.1 (GMake) available at
391         <a href="http://developer.novell.com/ndk/apache.htm">http://developer.novell.com/ndk/apache.htm</a>.</li>
392       </ul>
393
394     
395
396     <h3><a name="comp-metro" id="comp-metro">Building Apache using the Metrowerks Project Files:</a></h3>
397
398       
399
400       <p>All major pieces of Apache and APR are built using the
401       <code>ApacheNW.mcp</code> and <code>LibAprNW.mcp</code> project files.
402       This includes modules such as status, info, proxy, etc.</p>
403
404       <ul>
405         <li>Set the environment variable <code>NovellLibC</code> to the
406         location of the NetWare Libraries for C SDK, for example:
407         <div class="example"><p><code>Set NovellLibC=c:\novell\ndk\libc</code></p></div>
408         </li>
409
410         <li>Make sure that the path to the CodeWarrior command line tools
411         (<code>MWCCNLM.exe</code>, <code>MWLDNLM.exe</code>) has been
412         included in the system's <code>PATH</code> environment variable.</li>
413
414         <li>Make sure that the path to the AWK utility has been included in the
415         system's <code>PATH</code> environment variable.</li>
416
417         <li>Download the source code and unzip to an appropriate directory on
418         your workstation.</li>
419
420         <li>Change directory to <code>\httpd\srclib\apr\build</code> and run the
421         batch file <code>prebuildnw.bat</code>. The batch file will setup the build
422         environment for building the APR libraries. It will also run 2 AWK scripts
423         that will generate the export files for APR.</li>
424
425         <li>Change directory to <code>\httpd\srclib\apr</code> and extract the project
426         file <code>LIBAPRNW.mcp</code> from the <code>LIBAPRNW.mcp.zip</code> file.</li>
427
428         <li>Open the <code>LIBAPRNW.mcp</code> project file in the Metrowerks IDE.</li>
429
430         <li>Select the target "Build Util - Gen URL Delim" and build the target.
431         This target will produce the NLM <code>GENURI.nlm</code></li>
432
433         <li>Copy the file <code>GENURI.nlm</code> to the <code>SYS:</code> volume
434         of a NetWare server and run using the following command:
435           <ul>
436             <li><code>SYS:\genuri &gt; sys:\uri_delims.h</code></li>
437           </ul>
438         </li>
439
440         <li>Copy the file <code>uri_delims.h</code> to the directory
441         <code>\httpd\srclib\apr-util\uri</code> on the build machine.</li>
442
443         <li>Select the target "APR Debug NLM" or "APR Release NLM" in the IDE and build.
444         This will produce the file <code>APRLIB.nlm</code>.
445           <ul>
446             <li>[Optional] Select any of the LIB targets to produce a
447             statically linkable libraries.</li>
448           </ul>
449         </li>
450
451         <li>Change directory to <code>\httpd\build</code> and run the batch file
452         <code>prebuildnw.bat</code>. This batch file will setup the build environment
453         for building the <code>APACHE.nlm</code>. It will also run several AWK scripts
454         that will generate the export files for APACHE.</li>
455
456         <li>Change directory to <code>\http</code> and extract the project file
457         <code>ApacheNW.mcp</code> from the <code>ApacheNW.mcp.zip</code> file.</li>
458
459         <li>Open the <code>ApacheNW.mcp</code> project file in the Metrowerks IDE.</li>
460
461         <li>Select the target "Build Utility - DFTables" and build the target.</li>
462
463         <li>Select the target "Build Util - Gen Test Chars" and build the target.</li>
464
465         <li>Copy the files <code>GENCHARS.nlm</code> and <code>DFTABLES.nlm</code>
466         to the <code>SYS:</code> volume of a NetWare server and run using the following commands:
467           <ul>
468             <li><code>SYS:\genchars &gt; sys:\test_char.h</code></li>
469             <li><code>SYS:\dftables &gt; sys:\chartables.c</code></li>
470           </ul>
471         </li>
472
473         <li>Copy the files <code>test_char.h</code> and <code>chartables.c</code>
474         to the directory <code>\httpd\os\netware</code> on the build machine.</li>
475
476         <li>Select the target "Apache Full Debug" or "Apache Full Release" in
477         the IDE and build. This will produce the file <code>APACHE2.nlm</code>
478         along with all of the external module NLMs.</li>
479       </ul>
480
481     
482
483     <h3><a name="comp-make" id="comp-make">Building Apache using the NetWare makefiles:</a></h3>
484
485       
486
487       <ul>
488         <li>Set the environment variable <code>NOVELLLIBC</code> to the
489         location of the NetWare Libraries for C SDK, for example:
490         <div class="example"><p><code>Set NOVELLLIBC=c:\novell\ndk\libc</code></p></div>
491         </li>
492
493         <li>Set the environment variable <code>METROWERKS</code> to the
494         location where you installed the Metrowerks CodeWarrior compiler,
495         for example:
496         <div class="example"><p><code>Set METROWERKS=C:\Program Files\Metrowerks\CodeWarrior</code></p></div>
497         If you installed to the default location <code>C:\Program
498         Files\Metrowerks\CodeWarrior</code>, you don't need to set this.</li>
499
500         <li>Set the environment variable <code>AP_WORK</code> to the full path of
501         the <code>\httpd</code> directory.</li>
502
503         <li>Set the environment variable <code>APR_WORK</code> to the full path of
504         the <code>\httpd\srclib\apr</code> directory.</li>
505
506         <li>Make sure that the path to the AWK utility and the GNU make utility
507         (<code>gmake.exe</code>) have been included in the system's
508         <code>PATH</code> environment variable.</li>
509
510         <li>Download the source code and unzip to an appropriate directory on
511         your workstation.</li>
512
513         <li>Change directory to <code>\httpd\srclib\apr-util\uri</code> and build
514         <code>GENURI.nlm</code> by running "<code>gmake -f nwgnumakefile</code>".</li>
515
516         <li>Copy the file <code>GENURI.nlm</code> to the <code>SYS:</code> volume
517         of a NetWare server and run using the following command:
518           <div class="example"><p><code>SYS:\genuri &gt; sys:\uri_delims.h</code></p></div>
519         </li>
520
521         <li>Copy the file <code>uri_delims.h</code> to the directory
522         <code>\httpd\srclib\apr-util\uri</code> on the build machine.</li>
523
524         <li>Change directory to <code>\httpd\srclib\apr</code> and build APR
525         by running "<code>gmake -f nwgnumakefile</code>"</li>
526
527         <li>Change directory to <code>\httpd\srclib\pcre</code> and build
528         <code>DFTABLES.nlm</code> by running "<code>gmake -f nwgnumakefile</code>"</li>
529
530         <li>Change directory to <code>\httpd\server</code> and build
531         <code>GENCHARS.nlm</code> by running "<code>gmake -f nwgnumakefile</code>"</li>
532
533         <li>Copy the files <code>GENCHARS.nlm</code> and <code>DFTABLES.nlm</code>
534         from their respective directories to the <code>SYS:</code> volume of a
535         NetWare server and run them using the following commands:
536           <div class="example"><p><code>
537             SYS:\genchars &gt; sys:\test_char.h<br />
538             SYS:\dftables &gt; sys:\chartables.c<br />
539           </code></p></div>
540         </li>
541
542         <li>Copy the files <code>test_char.h</code> and <code>chartables.c</code>
543         to the directory <code>\httpd\os\netware</code> on the build machine.</li>
544
545         <li>Change directory to <code>\httpd</code> and build Apache by running
546         "<code>gmake -f nwgnumakefile</code>". You can create a distribution directory by
547         adding an install parameter to the command, for example:
548         <div class="example"><p><code>gmake -f nwgnumakefile install</code></p></div>
549         </li>
550       </ul>
551
552     
553
554     <h3><a name="comp-add" id="comp-add">Additional make options</a></h3>
555
556       
557
558       <ul>
559         <li><code>gmake -f nwgnumakefile</code><br />Builds release versions of all of the
560         binaries and copies them to a <code>\release</code> destination directory.</li>
561
562         <li><code>gmake -f nwgnumakefile DEBUG=1</code><br />Builds debug versions of all of the
563         binaries and copies them to a <code>\debug</code> destination directory.</li>
564
565         <li><code>gmake -f nwgnumakefile install</code><br />Creates a complete Apache
566         distribution with binaries, docs and additional support files in a
567         <code>\dist\Apache2</code> directory.</li>
568
569         <li><code>gmake -f nwgnumakefile installdev</code><br />Same as install but also creates a
570         <code>\lib</code> and <code>\include</code> directory in the destination directory
571         and copies headers and import files.</li>
572
573         <li><code>gmake -f nwgnumakefile clean</code><br />Cleans all object files and binaries
574         from the <code>\release</code> or <code>\debug</code> build areas depending on whether
575         <code>DEBUG</code> has been defined.</li>
576
577         <li><code>gmake -f nwgnumakefile clobber_all</code><br />Same as clean and also deletes
578         the distribution directory if it exists.</li>
579       </ul>
580
581     
582
583   </div></div><div id="footer"><p class="apache">Maintained by the <a href="http://httpd.apache.org/docs-project/">Apache HTTP Server Documentation Project</a></p><p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="../faq/">FAQ</a> | <a href="../glossary.html">Glossary</a> | <a href="../sitemap.html">Sitemap</a></p></div></body></html>