| If you read this file _as_is_, just ignore the funny characters you |
| see. It is written in the POD format (see pod/perlpod.pod) which is |
| specifically designed to be readable as is. |
| |
| =head1 NAME |
| |
| perlnetware - Perl for NetWare |
| |
| =head1 DESCRIPTION |
| |
| 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 |
| |
| This section describes the steps to be performed to build a Perl NLM |
| and other associated NLMs. |
| |
| =head2 Tools & SDK |
| |
| 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 Tools & SDK are installed, the build environment has to |
| be setup. The following batch files setup the environment. |
| |
| =over 4 |
| |
| =item SetNWBld.bat |
| |
| 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 Buildtype.bat |
| |
| This is used to set the build type to debug or release. Change the |
| build type only after executing SetNWBld.bat |
| |
| Example: |
| |
| =over |
| |
| =item 1. |
| |
| Typing "buildtype d on" at the command prompt causes the buildtype |
| to be set to Debug type with D2 flag set. |
| |
| =item 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. |
| |
| =item 3. |
| |
| Typing "buildtype r" at the command prompt sets it to Release Build type. |
| |
| =back |
| |
| =back |
| |
| =head2 Make |
| |
| 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++ compiler (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 following two build types are tested on NetWare: |
| |
| =over 4 |
| |
| =item * |
| |
| USE_MULTI, USE_ITHREADS & USE_IMP_SYS defined |
| |
| =item * |
| |
| USE_MULTI & USE_IMP_SYS defined and USE_ITHREADS not defined |
| |
| =back |
| |
| =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. |
| |
| =head2 Extensions |
| |
| The make process also creates the Perl extensions as I<<Extension>.nlm> |
| |
| =head1 INSTALL |
| |
| 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. |
| |
| Example: At the command prompt Type "nmake nwinstall". |
| This will install NetWare Perl on the NetWare Server. |
| Similarly, 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 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 * |
| |
| 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 |
| |
| or |
| |
| perl -Ic:/perl/5.8.0/lib/NetWare-x86-multi-thread -Ic:\perl\5.8.0\lib MakeFile.pl |
| |
| =item * |
| |
| nmake |
| |
| =item * |
| |
| nmake install |
| |
| Install will copy the files into the Windows machine where NetWare |
| 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. |
| |
| Example: You can execute the following on the command prompt. |
| |
| perl -Ic:/perl/5.6.1/lib/NetWare-x86-multi-thread -Ic:\perl\5.6.1\lib MakeFile.pl |
| INSTALLSITELIB=i:\perl\lib |
| |
| 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 * |
| |
| 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. |
| |
| =back |
| |
| =head1 ACKNOWLEDGEMENTS |
| |
| 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. |
| |
| =head1 AUTHORS |
| |
| Anantha Kesari H Y (hyanantha@novell.com) |
| Aditya C (caditya@novell.com) |
| |
| =head1 DATE |
| |
| =over 4 |
| |
| =item * |
| |
| Created - 18 Jan 2001 |
| |
| =item * |
| |
| Modified - 25 June 2001 |
| |
| =item * |
| |
| Modified - 13 July 2001 |
| |
| =item * |
| |
| Modified - 28 May 2002 |
| |
| =back |