This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Inline RvDEEPCP() into its only caller, Perl_amagic_call().
[perl5.git] / README.netware
... / ...
CommitLineData
1If you read this file _as_is_, just ignore the funny characters you
2see. It is written in the POD format (see pod/perlpod.pod) which is
3specifically designed to be readable as is.
4
5=head1 NAME
6
7perlnetware - Perl for NetWare
8
9=head1 DESCRIPTION
10
11This file gives instructions for building Perl 5.7 and above, and also
12Perl modules for NetWare. Before you start, you may want to read the
13README file found in the top level directory into which the Perl source
14code distribution was extracted. Make sure you read and understand
15the terms under which the software is being distributed.
16
17=head1 BUILD
18
19This section describes the steps to be performed to build a Perl NLM
20and other associated NLMs.
21
22=head2 Tools & SDK
23
24The build requires CodeWarrior compiler and linker. In addition,
25the "NetWare SDK", "NLM & NetWare Libraries for C" and
26"NetWare Server Protocol Libraries for C", all available at
27L<http://developer.novell.com/wiki/index.php/Category:Novell_Developer_Kit>,
28are required. Microsoft Visual C++ version 4.2 or later is also
29required.
30
31=head2 Setup
32
33The build process is dependent on the location of the NetWare SDK.
34Once the Tools & SDK are installed, the build environment has to
35be setup. The following batch files setup the environment.
36
37=over 4
38
39=item SetNWBld.bat
40
41The Execution of this file takes 2 parameters as input. The first
42being the NetWare SDK path, second being the path for CodeWarrior
43Compiler & tools. Execution of this file sets these paths and also
44sets the build type to Release by default.
45
46=item Buildtype.bat
47
48This is used to set the build type to debug or release. Change the
49build type only after executing SetNWBld.bat
50
51=item *
52
53Example:
54 1. Typing "buildtype d on" at the command prompt causes the buildtype
55 to be set to Debug type with D2 flag set.
56 2. Typing "buildtype d off" or "buildtype d" at the command prompt causes
57 the buildtype to be set to Debug type with D1 flag set.
58 2. Typing "buildtype r" at the command prompt sets it to Release Build type.
59
60=back
61
62=head2 Make
63
64The make process runs only under WinNT shell. The NetWare makefile is
65located under the NetWare folder. This makes use of miniperl.exe to
66run some of the Perl scripts. To create miniperl.exe, first set the
67required paths for Visual c++ compilier (specify vcvars32 location) at
68the command prompt. Then run nmake from win32 folder through WinNT
69command prompt. The build process can be stopped after miniperl.exe
70is created. Then run nmake from NetWare folder through WinNT command
71prompt.
72
73Currently the following two build types are tested on NetWare:
74
75=over 4
76
77=item *
78
79USE_MULTI, USE_ITHREADS & USE_IMP_SYS defined
80
81=item *
82
83USE_MULTI & USE_IMP_SYS defined and USE_ITHREADS not defined
84
85=back
86
87=head2 Interpreter
88
89Once miniperl.exe creation is over, run nmake from the NetWare folder.
90This will build the Perl interpreter for NetWare as I<perl.nlm>.
91This is copied under the I<Release> folder if you are doing
92a release build, else will be copied under I<Debug> folder for debug builds.
93
94=head2 Extensions
95
96The make process also creates the Perl extensions as I<<Extension>.nlm>
97
98=head1 INSTALL
99
100To install NetWare Perl onto a NetWare server, first map the Sys
101volume of a NetWare server to I<i:>. This is because the makefile by
102default sets the drive letter to I<i:>. Type I<nmake nwinstall> from
103NetWare folder on a WinNT command prompt. This will copy the binaries
104and module files onto the NetWare server under I<sys:\Perl>
105folder. The Perl interpreter, I<perl.nlm>, is copied under
106I<sys:\perl\system> folder. Copy this to I<sys:\system> folder.
107
108Example: At the command prompt Type "nmake nwinstall".
109 This will install NetWare Perl on the NetWare Server.
110 Similiarly if you type "nmake install",
111 This will cause the binaries to be installed on the local machine.
112 (Typically under the c:\perl folder)
113
114=head1 BUILD NEW EXTENSIONS
115
116To build extensions other than standard extensions, NetWare Perl has
117to be installed on Windows along with Windows Perl. The Perl for
118Windows can be either downloaded from the CPAN site and built using
119the sources, or the binaries can be directly downloaded from the
120ActiveState site. Installation can be done by invoking I<nmake
121install> from the NetWare folder on a WinNT command prompt after
122building NetWare Perl by following steps given above. This will copy
123all the *.pm files and other required files. Documentation files are
124not copied. Thus one must first install Windows Perl, Then install
125NetWare Perl.
126
127Once this is done, do the following to build any extension:
128
129=over 4
130
131=item *
132
133Change to the extension directory where its source files are present.
134
135=item *
136
137Run the following command at the command prompt:
138
139 perl -II<path to NetWare lib dir> -II<path to lib> Makefile.pl
140
141Example:
142
143 perl -Ic:/perl/5.6.1/lib/NetWare-x86-multi-thread -Ic:\perl\5.6.1\lib MakeFile.pl
144
145or
146
147 perl -Ic:/perl/5.8.0/lib/NetWare-x86-multi-thread -Ic:\perl\5.8.0\lib MakeFile.pl
148
149=item *
150
151nmake
152
153=item *
154
155nmake install
156
157Install will copy the files into the Windows machine where NetWare
158Perl is installed and these files may have to be copied to the NetWare
159server manually. Alternatively, pass I<INSTALLSITELIB=i:\perl\lib> as
160an input to makefile.pl above. Here I<i:> is the mapped drive to the
161sys: volume of the server where Perl on NetWare is installed. Now
162typing I<nmake install>, will copy the files onto the NetWare server.
163
164Example: You can execute the following on the command prompt.
165
166 perl -Ic:/perl/5.6.1/lib/NetWare-x86-multi-thread -Ic:\perl\5.6.1\lib MakeFile.pl
167 INSTALLSITELIB=i:\perl\lib
168
169or
170
171 perl -Ic:/perl/5.8.0/lib/NetWare-x86-multi-thread -Ic:\perl\5.8.0\lib MakeFile.pl
172 INSTALLSITELIB=i:\perl\lib
173
174=item *
175
176Note: Some modules downloaded from CPAN may require NetWare related
177API in order to build on NetWare. Other modules may however build
178smoothly with or without minor changes depending on the type of
179module.
180
181=back
182
183=head1 ACKNOWLEDGEMENTS
184
185The makefile for Win32 is used as a reference to create the makefile
186for NetWare. Also, the make process for NetWare port uses
187miniperl.exe to run scripts during the make and installation process.
188
189=head1 AUTHORS
190
191Anantha Kesari H Y (hyanantha@novell.com)
192Aditya C (caditya@novell.com)
193
194=head1 DATE
195
196=over 4
197
198=item *
199
200Created - 18 Jan 2001
201
202=item *
203
204Modified - 25 June 2001
205
206=item *
207
208Modified - 13 July 2001
209
210=item *
211
212Modified - 28 May 2002
213
214=back