Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

297 lines
6.9 KiB

  1. If you read this file _as_is_, just ignore the funny characters you
  2. see. It is written in the POD format (see perlpod manpage) which is
  3. specially designed to be readable as is.
  4. =head1 NAME
  5. perlamiga - Perl under Amiga OS
  6. =head1 SYNOPSIS
  7. One can read this document in the following formats:
  8. man perlamiga
  9. multiview perlamiga.guide
  10. to list some (not all may be available simultaneously), or it may
  11. be read I<as is>: either as F<README.amiga>, or F<pod/perlamiga.pod>.
  12. A recent version of perl for the Amiga can be found at the Geek Gadgets
  13. section of the Aminet:
  14. http://www.aminet.net/~aminet/dirs/dev_gg.html
  15. =cut
  16. Contents
  17. perlamiga - Perl under Amiga OS
  18. NAME
  19. SYNOPSIS
  20. DESCRIPTION
  21. - Prerequisites
  22. - Starting Perl programs under AmigaOS
  23. - Shortcomings of Perl under AmigaOS
  24. INSTALLATION
  25. Accessing documentation
  26. - Manpages
  27. - HTML
  28. - GNU info files
  29. - LaTeX docs
  30. BUILD
  31. - Prerequisites
  32. - Getting the perl source
  33. - Application of the patches
  34. - Making
  35. - Testing
  36. - Installing the built perl
  37. AUTHOR
  38. SEE ALSO
  39. =head1 DESCRIPTION
  40. =head2 Prerequisites
  41. =over 6
  42. =item B<Unix emulation for AmigaOS: ixemul.library>
  43. You need the Unix emulation for AmigaOS, whose most important part is
  44. B<ixemul.library>. For a minimum setup, get the latest versions
  45. of the following packages from the Aminet archives (http://www.aminet.net/~aminet/):
  46. ixemul-bin
  47. ixemul-env-bin
  48. pdksh-bin
  49. Note also that this is a minimum setup; you might want to add other
  50. packages of B<ADE> (the I<Amiga Developers Environment>).
  51. =item B<Version of Amiga OS>
  52. You need at the very least AmigaOS version 2.0. Recommended is version 3.1.
  53. =back
  54. =head2 Starting Perl programs under AmigaOS
  55. Start your Perl program F<foo> with arguments C<arg1 arg2 arg3> the
  56. same way as on any other platform, by
  57. perl foo arg1 arg2 arg3
  58. If you want to specify perl options C<-my_opts> to the perl itself (as
  59. opposed to to your program), use
  60. perl -my_opts foo arg1 arg2 arg3
  61. Alternately, you can try to get a replacement for the system's B<Execute>
  62. command that honors the #!/usr/bin/perl syntax in scripts and set the s-Bit
  63. of your scripts. Then you can invoke your scripts like under UNIX with
  64. foo arg1 arg2 arg3
  65. (Note that having *nixish full path to perl F</usr/bin/perl> is not
  66. necessary, F<perl> would be enough, but having full path would make it
  67. easier to use your script under *nix.)
  68. =head2 Shortcomings of Perl under AmigaOS
  69. Perl under AmigaOS lacks some features of perl under UNIX because of
  70. deficiencies in the UNIX-emulation, most notably:
  71. =over 4
  72. =item *
  73. fork()
  74. =item *
  75. some features of the UNIX filesystem regarding link count and file dates
  76. =item *
  77. inplace operation (the B<-i> switch) without backup file
  78. =item *
  79. umask() works, but the correct permissions are only set when the file is
  80. finally close()d
  81. =back
  82. =head1 INSTALLATION
  83. Change to the installation directory (most probably ADE:), and
  84. extract the binary distribution:
  85. lha -mraxe x perl-$VERSION-bin.lha
  86. or
  87. tar xvzpf perl-$VERSION-bin.tgz
  88. (Of course you need lha or tar and gunzip for this.)
  89. For installation of the Unix emulation, read the appropriate docs.
  90. =head1 Accessing documentation
  91. =head2 Manpages
  92. If you have C<man> installed on your system, and you installed perl
  93. manpages, use something like this:
  94. man perlfunc
  95. man less
  96. man ExtUtils.MakeMaker
  97. to access documentation for different components of Perl. Start with
  98. man perl
  99. Note: You have to modify your man.conf file to search for manpages
  100. in the /ade/lib/perl5/man/man3 directory, or the man pages for the
  101. perl library will not be found.
  102. Note that dot (F<.>) is used as a package separator for documentation
  103. for packages, and as usual, sometimes you need to give the section - C<3>
  104. above - to avoid shadowing by the I<less(1) manpage>.
  105. =head2 B<HTML>
  106. If you have some WWW browser available, you can build B<HTML> docs.
  107. Cd to directory with F<.pod> files, and do like this
  108. cd /ade/lib/perl5/pod
  109. pod2html
  110. After this you can direct your browser the file F<perl.html> in this
  111. directory, and go ahead with reading docs.
  112. Alternatively you may be able to get these docs prebuilt from C<CPAN>.
  113. =head2 B<GNU> C<info> files
  114. Users of C<Emacs> would appreciate it very much, especially with
  115. C<CPerl> mode loaded. You need to get latest C<pod2info> from C<CPAN>,
  116. or, alternately, prebuilt info pages.
  117. =head2 C<LaTeX> docs
  118. can be constructed using C<pod2latex>.
  119. =head1 BUILD
  120. Here we discuss how to build Perl under AmigaOS.
  121. =head2 Prerequisites
  122. You need to have the latest B<ixemul> (Unix emulation for Amiga)
  123. from Aminet.
  124. =head2 Getting the perl source
  125. You can either get the latest perl-for-amiga source from Ninemoons
  126. and extract it with:
  127. tar xvzpf perl-$VERSION-src.tgz
  128. or get the official source from CPAN:
  129. http://www.perl.com/CPAN/src/5.0
  130. Extract it like this
  131. tar xvzpf perl-$VERSION.tar.gz
  132. You will see a message about errors while extracting F<Configure>. This
  133. is normal and expected. (There is a conflict with a similarly-named file
  134. F<configure>, but it causes no harm.)
  135. =head2 Making
  136. =over 4
  137. =item *
  138. remember to use a healthy sized stack (I used 2000000)
  139. =item *
  140. your PATH environment variable must include /bin (e.g. ".:/bin" is good)
  141. (or, more precisely, it must include the directory where you have your
  142. basic UNIX utilities like test, cat, sed, and so on)
  143. =item *
  144. sh Configure -Dprefix=/ade -Dloclibpth=/ade/lib
  145. =item *
  146. fix makedepend
  147. In the file 'makedepend' there are three spots like this `$cat ...`:
  148. a for loop near line 75, an egrep near line 161, and a for loop near
  149. line 175. In all those spots using an editor change the $cat to
  150. /bin/cat.
  151. =item *
  152. now type make depend
  153. When the make depend has ended load the gnumakefile into
  154. an editor and go to the end of the file.
  155. Move upwards in the file until you reach av.o: EXTERN.h
  156. and delete all lines down to # WARNING: Put....
  157. =item *
  158. now go to the x2p directory
  159. Load the gnumakefile into an editor.
  160. Go to the end moveup until you reach hash.o: EXTERN.h
  161. and delete all lines dowonwards until you reach a line saying
  162. # WARNING: Put nothing....
  163. =item *
  164. Now!
  165. make
  166. =back
  167. =head2 Testing
  168. Now run
  169. make test
  170. Some tests will be skipped because they need the fork() function:
  171. F<io/pipe.t>, F<op/fork.t>, F<lib/filehand.t>, F<lib/open2.t>, F<lib/open3.t>,
  172. F<lib/io_pipe.t>, F<lib/io_sock.t>
  173. =head2 Installing the built perl
  174. Run
  175. make install
  176. =head1 AUTHORS
  177. Norbert Pueschel, [email protected]
  178. Jan-Erik Karlsson, [email protected]
  179. =head1 SEE ALSO
  180. perl(1).
  181. =cut