This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Integrate Memoize 0.64. Few tweaks were required in
[perl5.git] / README.netware
CommitLineData
2986a63f
JH
1This file is written in the POD format. If you are reading it thro'
2a text editor, ignore the words like =head1, =over etc.
3
4=head1 Name
5
6Perl for NetWare5.x
7
8=head1 Description
9
10This file gives the instructions for building Perl5.6.1 for NetWare5.x.
11Please read and understand the terms under which this software is distributed.
12
13
14=head1 Build
15
16This section describes the steps to be performed to build a Perl NLM and other associated
17NLMs.
18
19=head2 Tools & SDK
20
21The build requires Watcom 11.x compiler and linker. NetWare SDK, available at L<http://developer.novell.com/ndk/>, is required.
22Apart from NetWare SDK, "NLM & NetWare Libraries for C" and "NetWare Server Protocol Libraries for C"
23are also required. This is also available at the above mentioned site.
24Microsoft Visual C++ version 4.2 or later is also required.
25
26Currently the interpreter builds only with Watcom, we do have plans of making this work with
27CodeWarrior as well.
28
29=head2 Setup
30
31The build process is dependent on the location of the NetWare SDK. Once the required software
32is installed, the build environment has to be setup. The following batch files setup
33the environment.
34
35I<Buildtype.bat> - This sets the build type to release or debug.
36
37I<SetNWBld.bat> - This sets the NetWare SDK path, Compiler & other tools path & MPK SDK path.
38
39I<MPKBuild.bat> - This is required only it we are building multi-processor enabled NLMs.
40
41These batch files are under NetWare\bat folder. These batch files call a couple of other
42batch files to setup the environment. Invoking the batch file with I</now> will show the
43current settings and I</h> or I</?> gives the usage help.
44
45=head2 Make
46
47The makefile is located under the NetWare folder. Type nmake at the WinNT command prompt.
48The make process runs only under WinNT shell. The makefile makes use of miniperl.exe to
49run some of the Perl scripts. Please run nmake from win32 folder which builds miniperl.exe before
50running nmake from NetWare folder. The build process can be stopped after miniperl.exe is created.
51
52Currently the follwing two build types are tested on NetWare
53
54=over 4
55
56=item *
57
58USE_MULTI, USE_ITHREADS & USE_IMP_SYS defined
59
60=item *
61
62USE_MULTI & USE_IMP_SYS defined and USE_ITHREADS not defined
63
64=back
65
66=head2 Interpreter
67
68Once miniperl.exe creation is over, run nmake from the NetWare folder. This will build the
69Perl interpreter for NetWare as I<perl.nlm>. This is copied under the I<Release> folder if you
70are doing a release build else will be copied under I<Debug> folder for debug builds.
71
72=head2 Extensions
73
74The make process also creates the Perl extensions which are called NLPs (NetWare Loadable Perl).
75
76=head1 Install
77
78Installing NetWare Perl on Windows doesn't make any sense. To install, type I<nmake nwinstall>. This
79will copy the binaries and module files to a NetWare server. The makefile, by default sets the
80drive letter to I<i:> which should be mapped to the I<sys> volume of a NetWare server. The Perl
81interpreter, I<perl.nlm>, is copied under I<sys:\perl\system> folder. Copy I<perl.nlm> to
82I<sys:\system> folder. Before running I<nmake nwinstall>, make sure the NetWare server on which
83the files have to go is mapped to the drive letter I<i:>.
84
85=head1 Build new extensions
86
87To build extensions other than standard extensions, NetWare Perl has to be installed on Windows as well.
88This can be done by invoking I<nmake install> on the Windows NT command prompt. This will copy all
89the *.pm files and other required files. Documentation files are not copied. This has be done after
90installing Perl for Windows. Once this is done, to build any extension, do the following
91
92=over 4
93
94=item *
95perl -II<path to NetWare lib dir> -II<path to lib> Makefile.pl
96
97Ex: perl -Ic:/perl/5.6.1/lib/NetWare-multi-thread -Ic:\perl\5.6.1\lib MakeFile.pl
98
99=item *
100nmake
101
102=item *
103nmake install
104
105
106Install will copy the files into the Windows machine where NetWare Perl is installed, these files
107have to be copied to the NetWare server manually. Alternatively, pass I<INSTALLSITELIB=i:\perl\lib>
108as an input to makefile.pl above. Where I<i:> is the mapped drive to the sys: volume of the
109server where Perl on NetWare is installed. Now saying I<nmake install>, will copy the files
110to the server.
111
112
113=back
114
115=head1 Known Issues
116
117=item *
118
119With USE_ITHREADS not defined, backtick seems to be having some problems.
120
121=item *
122
123The utility scripts (pod2html.pl, pod2man.pl, perldoc.pl etc.) are not yet ported to work on NetWare.
124
125=item *
126
127Also fork() is not currently implemented.
128
129=head1 Acknowledgements
130
131For the porting purpose, the PerlHost of Win32 port was used as reference and NetWare portions are
132added. Also the makefile for Win32 is used as a reference to create the makefile for NetWare build.
133Additionally the make process for NetWare port uses miniperl.exe to run scripts during the make and
134installation process.
135
136=head1 Author
137
138Guruprasad S (sguruprasad@novell.com)
139
140=head1 Date
141
142=over 4
143
144=item *
145
146Created - 18th Jan 2001
147
148=item *
149
150Modified - 16th April 2001
151
152=back
153This file is written in the POD format. If you are reading it thro'
154a text editor, ignore the words like =head1, =over etc.
155
156=head1 Name
157
158Perl for NetWare5.x
159
160=head1 Description
161
162This file gives the instructions for building Perl5.6.1 for NetWare5.x.
163Please read and understand the terms under which this software is distributed.
164
165
166=head1 Build
167
168This section describes the steps to be performed to build a Perl NLM and other associated
169NLMs.
170
171=head2 Tools & SDK
172
173The build requires Watcom 11.x compiler and linker. NetWare SDK, available at L<http://developer.novell.com/ndk/>, is required.
174Apart from NetWare SDK, "NLM & NetWare Libraries for C" and "NetWare Server Protocol Libraries for C"
175are also required. This is also available at the above mentioned site.
176Microsoft Visual C++ version 4.2 or later is also required.
177
178Currently the interpreter builds only with Watcom, we do have plans of making this work with
179CodeWarrior as well.
180
181=head2 Setup
182
183The build process is dependent on the location of the NetWare SDK. Once the required software
184is installed, the build environment has to be setup. The following batch files setup
185the environment.
186
187I<Buildtype.bat> - This sets the build type to release or debug.
188
189I<SetNWBld.bat> - This sets the NetWare SDK path, Compiler & other tools path & MPK SDK path.
190
191I<MPKBuild.bat> - This is required only it we are building multi-processor enabled NLMs.
192
193These batch files are under NetWare\bat folder. These batch files call a couple of other
194batch files to setup the environment. Invoking the batch file with I</now> will show the
195current settings and I</h> or I</?> gives the usage help.
196
197=head2 Make
198
199The makefile is located under the NetWare folder. Type nmake at the WinNT command prompt.
200The make process runs only under WinNT shell. The makefile makes use of miniperl.exe to
201run some of the Perl scripts. Please run nmake from win32 folder which builds miniperl.exe before
202running nmake from NetWare folder. The build process can be stopped after miniperl.exe is created.
203
204Currently the follwing two build types are tested on NetWare
205
206=over 4
207
208=item *
209
210USE_MULTI, USE_ITHREADS & USE_IMP_SYS defined
211
212=item *
213
214USE_MULTI & USE_IMP_SYS defined and USE_ITHREADS not defined
215
216=back
217
218=head2 Interpreter
219
220Once miniperl.exe creation is over, run nmake from the NetWare folder. This will build the
221Perl interpreter for NetWare as I<perl.nlm>. This is copied under the I<Release> folder if you
222are doing a release build else will be copied under I<Debug> folder for debug builds.
223
224=head2 Extensions
225
226The make process also creates the Perl extensions which are called NLPs (NetWare Loadable Perl).
227
228=head1 Install
229
230Installing NetWare Perl on Windows doesn't make any sense. To install, type I<nmake nwinstall>. This
231will copy the binaries and module files to a NetWare server. The makefile, by default sets the
232drive letter to I<i:> which should be mapped to the I<sys> volume of a NetWare server. The Perl
233interpreter, I<perl.nlm>, is copied under I<sys:\perl\system> folder. Copy I<perl.nlm> to
234I<sys:\system> folder. Before running I<nmake nwinstall>, make sure the NetWare server on which
235the files have to go is mapped to the drive letter I<i:>.
236
237=head1 Build new extensions
238
239To build extensions other than standard extensions, NetWare Perl has to be installed on Windows as well.
240This can be done by invoking I<nmake install> on the Windows NT command prompt. This will copy all
241the *.pm files and other required files. Documentation files are not copied. This has be done after
242installing Perl for Windows. Once this is done, to build any extension, do the following
243
244=over 4
245
246=item *
247perl -II<path to NetWare lib dir> -II<path to lib> Makefile.pl
248
249Ex: perl -Ic:/perl/5.6.1/lib/NetWare-multi-thread -Ic:\perl\5.6.1\lib MakeFile.pl
250
251=item *
252nmake
253
254=item *
255nmake install
256
257
258Install will copy the files into the Windows machine where NetWare Perl is installed, these files
259have to be copied to the NetWare server manually. Alternatively, pass I<INSTALLSITELIB=i:\perl\lib>
260as an input to makefile.pl above. Where I<i:> is the mapped drive to the sys: volume of the
261server where Perl on NetWare is installed. Now saying I<nmake install>, will copy the files
262to the server.
263
264
265=back
266
267=head1 Known Issues
268
269=item *
270
271With USE_ITHREADS not defined, backtick seems to be having some problems.
272
273=item *
274
275The utility scripts (pod2html.pl, pod2man.pl, perldoc.pl etc.) are not yet ported to work on NetWare.
276
277=item *
278
279Also fork() is not currently implemented.
280
281=head1 Acknowledgements
282
283For the porting purpose, the PerlHost of Win32 port was used as reference and NetWare portions are
284added. Also the makefile for Win32 is used as a reference to create the makefile for NetWare build.
285Additionally the make process for NetWare port uses miniperl.exe to run scripts during the make and
286installation process.
287
288=head1 Author
289
290Guruprasad S (sguruprasad@novell.com)
291
292=head1 Date
293
294=over 4
295
296=item *
297
298Created - 18th Jan 2001
299
300=item *
301
302Modified - 16th April 2001
303
304=back