X-Git-Url: https://perl5.git.perl.org/perl5.git/blobdiff_plain/4d2c4e078e0d58f7b5fd54b2aedc642bb9296f6e..b89b72572533bd5be1cc901f1d10aadca7e64154:/README.epoc?ds=sidebyside diff --git a/README.epoc b/README.epoc index fd1c5c7..f577350 100644 --- a/README.epoc +++ b/README.epoc @@ -1,80 +1,154 @@ -================================================= -Perl 5 README file for the EPOC operating system. -================================================== +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 +specially designed to be readable as is. -Olaf Flebbe (o.flebbe@science-computing.de) -http://www.fortunecity.de/wolkenkratzer/trumpet/84/perl5.html -June 27, 1999 +=head1 NAME -Introduction ------------- +perlepoc - Perl for EPOC -This is a port of Perl version 5, revision 005-57 to EPOC. +=head1 SYNOPSIS -There are many features left out, because of restrictions of the posix -support in the SDK. +Perl 5 README file for the EPOC Release 5 operating system. -The following known problems do exist: +=head1 INTRODUCTION -1) very little testing. +EPOC is an OS for palmtops and mobile phones. For more information look +at: L -2) no support for system, backquoting, pipes etc. One cannot exec a - different process. +This is a port of perl to the epocemx SDK by Eberhard Mattes, which +itself uses the SDK by symbian. Essentially epocemx it is a POSIX +look alike environment for the EPOC OS. For more information look at: +L -3) no signals, kill. Do not try to use them. +perl and epocemx runs on Epoc Release 5 machines: Psion 5mx, 5mx Pro, +Psion Revo, Psion Netbook and on the Ericsson M128. It may run on Epoc +Release 3 Hardware (Series 5 classic), too. For more information about +this hardware please refer to L -4) select is missing. +Vendors which like to have support for their devices are free to send +me a sample. -5) binmode does not work. (No CR LF to LF translation for text files) +=head1 INSTALLING PERL ON EPOC -6) no Config.pm +You can download a ready-to-install version from +L -7) no I/O redirection. +You will need at least ~6MB free space in order to install and run perl. -8) it may not run from a drive other than C: (I have no CF Card to test) +Please install the emxusr.sis package from +L first. -9) sockets may hardly of any use. +Install perl.sis on the EPOC machine. If you do not know how to do +that, consult your PsiWin documentation. -10) You need a shell in order to run perl.exe. +Perl itself and its standard library is using 4 MB disk space. +Unicode support and some other modules are left out. (For details, +please look into epoc/createpkg.pl). If you like to use these modules, +you are free to copy them from a current perl release. +=head1 STARTING PERL ON EPOC -Compiling Perl 5 on the EPOC cross compiling envionment. --------------------------------------------------------- +Please use the epocemx shell to start perl. perl integrates with the +conventions of epocemx. -0. You will need the C++ SDK from - http://developer.epocworld.com/. Install it on a separate drive. +=head2 Features of Perl on Epoc -1. Unpack the sources in the epoc development drive: The sources - should be in a directory perl5.005/perl5.005_57 +The built-in function EPOC::getcwd returns the current directory. -2. Move all files in the directory perl5.005_57/epoc to perl5.005_57. +=head2 Restrictions of Perl on Epoc -3. Check the perl.mmp file: It should have the correct locations for - project und subproject (see step 1) +Features are left out, because of restrictions of the POSIX support in +EPOC: -4. Change to the EPOC development drive and run - makmake perl marm - nmake -f perl.marm - makesis perl.pkg perl5.005.sis +=over 4 -5. Beam the perl5.005.sis to the Psion5, install and enjoy! +=item * -ToDo List ---------- +socket IO is only implemented poorly. You can only use sysread and +syswrite on them. The commands read, write, print, <> do not work for +sockets. This may change iff epocemx supports sockets. -- Allocate an UID from symbian. +=item * -- Implement system() and I/O redirection, in order to run the - tests. +kill, alarm and signals. Do not try to use them. This may be +impossible to implement on EPOC. -- Implement getprotcolbyname() and relatives. +=item * -- Implement perl as a OPX module. (What do you think?) +select is missing. -Support Status --------------- +=item * -I'm offering this port "as is". You can ask me questions, but I can't -guarantee I'll be able to answer them; I don't know much about Perl -itself; +binmode does not exist. (No CR LF to LF translation for text files) +=item * + +EPOC does not handle the notion of current drive and current +directory very well (i.e. not at all, but it tries hard to emulate +one). See PATH. + +=item * + +Heap is limited to 4MB. + +=item * + +Dynamic loading is not implemented. + +=back + +=head2 Compiling Perl 5 on the EPOC cross compiling environment + +Sorry, this is far too short. + +=over 4 + +=item * + +You will need the epocemx SDK from Eberhard Mattes. + +=item * + +Get the Perl sources from your nearest CPAN site. + +=item * + +Unpack the sources. + +=item * + +Build a native perl from this sources... Make sure to save the +miniperl executable as miniperl.native. + +Start again from scratch + + cp epoc/* . + ./Configure -S + make + cp miniperl.native miniperl + touch miniperl.exe + make + perl createpkg.pl + + emxsis perl.pkg perl.sis + +=back + +=head1 SUPPORT STATUS OF PERL ON EPOC + +I'm offering this port "as is". You can ask me questions, but I can't +guarantee I'll be able to answer them. Since the port to epocemx is +quite new, please check the web for updates first. + +Very special thanks to Eberhard Mattes for epocemx. + +=head1 AUTHOR + +Olaf Flebbe +L + +=head1 LAST UPDATE + +2003-01-18 + +=cut