see. It is written in the POD format (see pod/perlpod.pod) which is
specifically designed to be readable as is.
-=head1 Name
+=head1 NAME
-Perl for NetWare5.x
+perlnetware - Perl for NetWare
-=head1 Description
+=head1 DESCRIPTION
-This file gives the instructions for building Perl5.6 and above for
-NetWare5.x. Please read and understand the terms under which this
-software is distributed.
+This file gives instructions for building Perl 5.7 and above, and also
+Perl modules for NetWare. Before you start, you may want to read the
+README file found in the top level directory into which the Perl source
+code distribution was extracted. Make sure you read and understand
+the terms under which the software is being distributed.
-=head1 Build
+=head1 BUILD
This section describes the steps to be performed to build a Perl NLM
and other associated NLMs.
=head2 Tools & SDK
-The build requires Watcom 11.x compiler and linker. NetWare SDK,
-available at L<http://developer.novell.com/ndk/>, is required. Apart
-from NetWare SDK, "NLM & NetWare Libraries for C" and "NetWare Server
-Protocol Libraries for C" are also required. This is also available
-at the above mentioned site. Microsoft Visual C++ version 4.2 or
-later is also required.
-
-Currently the interpreter builds only with Watcom, we do have plans of
-making this work with CodeWarrior as well.
+The build requires CodeWarrior compiler and linker. In addition,
+the "NetWare SDK", "NLM & NetWare Libraries for C" and
+"NetWare Server Protocol Libraries for C", all available at
+L<http://developer.novell.com/wiki/index.php/Category:Novell_Developer_Kit>,
+are required. Microsoft Visual C++ version 4.2 or later is also
+required.
=head2 Setup
The build process is dependent on the location of the NetWare SDK.
-Once the required software is installed, the build environment has to
+Once the Tools & SDK are installed, the build environment has to
be setup. The following batch files setup the environment.
=over 4
-=item Buildtype.bat
-
-This sets the build type to release or debug.
-
=item SetNWBld.bat
-This sets the NetWare SDK path, Compiler & other tools path & MPK SDK path.
+The Execution of this file takes 2 parameters as input. The first
+being the NetWare SDK path, second being the path for CodeWarrior
+Compiler & tools. Execution of this file sets these paths and also
+sets the build type to Release by default.
-=item MPKBuild.bat
+=item Buildtype.bat
+
+This is used to set the build type to debug or release. Change the
+build type only after executing SetNWBld.bat
-This is required only it we are building multi-processor enabled NLMs.
+=item *
-These batch files are under NetWare\bat folder. These batch files
-call a couple of other batch files to setup the environment. Invoking
-the batch file with I</now> will show the current settings and I</h>
-or I</?> gives the usage help.
+Example:
+ 1. Typing "buildtype d on" at the command prompt causes the buildtype
+ to be set to Debug type with D2 flag set.
+ 2. Typing "buildtype d off" or "buildtype d" at the command prompt causes
+ the buildtype to be set to Debug type with D1 flag set.
+ 2. Typing "buildtype r" at the command prompt sets it to Release Build type.
=back
=head2 Make
-The makefile is located under the NetWare folder. Type nmake at the
-WinNT command prompt. The make process runs only under WinNT shell.
-The makefile makes use of miniperl.exe to run some of the Perl
-scripts. Please run nmake from win32 folder which builds miniperl.exe
-before running nmake from NetWare folder. The build process can be
-stopped after miniperl.exe is created.
+The make process runs only under WinNT shell. The NetWare makefile is
+located under the NetWare folder. This makes use of miniperl.exe to
+run some of the Perl scripts. To create miniperl.exe, first set the
+required paths for Visual c++ compilier (specify vcvars32 location) at
+the command prompt. Then run nmake from win32 folder through WinNT
+command prompt. The build process can be stopped after miniperl.exe
+is created. Then run nmake from NetWare folder through WinNT command
+prompt.
-Currently the follwing two build types are tested on NetWare
+Currently the following two build types are tested on NetWare:
=over 4
=head2 Interpreter
-Once miniperl.exe creation is over, run nmake from the NetWare
-folder. This will build the Perl interpreter for NetWare as
-I<perl.nlm>. This is copied under the I<Release> folder if you are
-doing a release build else will be copied under I<Debug> folder for
-debug builds.
+Once miniperl.exe creation is over, run nmake from the NetWare folder.
+This will build the Perl interpreter for NetWare as I<perl.nlm>.
+This is copied under the I<Release> folder if you are doing
+a release build, else will be copied under I<Debug> folder for debug builds.
=head2 Extensions
-The make process also creates the Perl extensions which are called
-NLPs (NetWare Loadable Perl).
+The make process also creates the Perl extensions as I<<Extension>.nlm>
-=head1 Install
+=head1 INSTALL
-Installing NetWare Perl on Windows doesn't make any sense. To
-install, type I<nmake nwinstall>. This will copy the binaries and
-module files to a NetWare server. The makefile, by default sets the
-drive letter to I<i:> which should be mapped to the I<sys> volume of a
-NetWare server. The Perl interpreter, I<perl.nlm>, is copied under
-I<sys:\perl\system> folder. Copy I<perl.nlm> to I<sys:\system>
-folder. Before running I<nmake nwinstall>, make sure the NetWare
-server on which the files have to go is mapped to the drive letter
-I<i:>.
+To install NetWare Perl onto a NetWare server, first map the Sys
+volume of a NetWare server to I<i:>. This is because the makefile by
+default sets the drive letter to I<i:>. Type I<nmake nwinstall> from
+NetWare folder on a WinNT command prompt. This will copy the binaries
+and module files onto the NetWare server under I<sys:\Perl>
+folder. The Perl interpreter, I<perl.nlm>, is copied under
+I<sys:\perl\system> folder. Copy this to I<sys:\system> folder.
-=head1 Build new extensions
+Example: At the command prompt Type "nmake nwinstall".
+ This will install NetWare Perl on the NetWare Server.
+ Similiarly if you type "nmake install",
+ This will cause the binaries to be installed on the local machine.
+ (Typically under the c:\perl folder)
+
+=head1 BUILD NEW EXTENSIONS
To build extensions other than standard extensions, NetWare Perl has
-to be installed on Windows as well. This can be done by invoking
-I<nmake install> on the Windows NT command prompt. This will copy all
-the *.pm files and other required files. Documentation files are not
-copied. This has be done after installing Perl for Windows. Once this
-is done, to build any extension, do the following
+to be installed on Windows along with Windows Perl. The Perl for
+Windows can be either downloaded from the CPAN site and built using
+the sources, or the binaries can be directly downloaded from the
+ActiveState site. Installation can be done by invoking I<nmake
+install> from the NetWare folder on a WinNT command prompt after
+building NetWare Perl by following steps given above. This will copy
+all the *.pm files and other required files. Documentation files are
+not copied. Thus one must first install Windows Perl, Then install
+NetWare Perl.
+
+Once this is done, do the following to build any extension:
=over 4
=item *
-perl -II<path to NetWare lib dir> -II<path to lib> Makefile.pl
+Change to the extension directory where its source files are present.
+
+=item *
+
+Run the following command at the command prompt:
+
+ perl -II<path to NetWare lib dir> -II<path to lib> Makefile.pl
+
+Example:
+
+ perl -Ic:/perl/5.6.1/lib/NetWare-x86-multi-thread -Ic:\perl\5.6.1\lib MakeFile.pl
-For example:
+or
- perl -Ic:/perl/5.6.1/lib/NetWare-multi-thread -Ic:\perl\5.6.1\lib MakeFile.pl
+ perl -Ic:/perl/5.8.0/lib/NetWare-x86-multi-thread -Ic:\perl\5.8.0\lib MakeFile.pl
=item *
nmake install
Install will copy the files into the Windows machine where NetWare
-Perl is installed, these files have to be copied to the NetWare server
-manually. Alternatively, pass I<INSTALLSITELIB=i:\perl\lib> as an
-input to makefile.pl above. Where I<i:> is the mapped drive to the
-sys: volume of the server where Perl on NetWare is installed. Now
-saying I<nmake install>, will copy the files to the server.
+Perl is installed and these files may have to be copied to the NetWare
+server manually. Alternatively, pass I<INSTALLSITELIB=i:\perl\lib> as
+an input to makefile.pl above. Here I<i:> is the mapped drive to the
+sys: volume of the server where Perl on NetWare is installed. Now
+typing I<nmake install>, will copy the files onto the NetWare server.
-=back
+Example: You can execute the following on the command prompt.
-=head1 Known Issues
+ perl -Ic:/perl/5.6.1/lib/NetWare-x86-multi-thread -Ic:\perl\5.6.1\lib MakeFile.pl
+ INSTALLSITELIB=i:\perl\lib
-=over 4
+or
+
+ perl -Ic:/perl/5.8.0/lib/NetWare-x86-multi-thread -Ic:\perl\5.8.0\lib MakeFile.pl
+ INSTALLSITELIB=i:\perl\lib
=item *
-With USE_ITHREADS not defined, backtick seems to be having some problems.
+Note: Some modules downloaded from CPAN may require NetWare related
+API in order to build on NetWare. Other modules may however build
+smoothly with or without minor changes depending on the type of
+module.
-=item *
+=back
-The utility scripts (pod2html.pl, pod2man.pl, perldoc.pl etc.) are not
-yet ported to work on NetWare.
+=head1 ACKNOWLEDGEMENTS
-=item *
+The makefile for Win32 is used as a reference to create the makefile
+for NetWare. Also, the make process for NetWare port uses
+miniperl.exe to run scripts during the make and installation process.
-Also fork() is not currently implemented.
+=head1 AUTHORS
-=back
+Anantha Kesari H Y (hyanantha@novell.com)
+Aditya C (caditya@novell.com)
-=head1 Acknowledgements
+=head1 DATE
-The makefile for Win32 is used as a reference to create the makefile
-for NetWare build. Also, the make process for NetWare port uses miniperl.exe
-to run scripts during the make and installation process.
+=over 4
-=head1 Author
+=item *
-Guruprasad S (sguruprasad@novell.com)
+Created - 18 Jan 2001
-=head1 Date
+=item *
-=over 4
+Modified - 25 June 2001
=item *
-Created - 18th Jan 2001
+Modified - 13 July 2001
=item *
-Modified - 25th June 2001
+Modified - 28 May 2002
=back
-