summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOlaf Flebbe <o.flebbe@science-computing.de>1999-08-27 23:50:41 +0200
committerJarkko Hietaniemi <jhi@iki.fi>1999-08-29 15:29:29 +0000
commitae2d1787751a38d67ea377bb8eb603cbbf3a36bc (patch)
treebc8ebc422524380a06924cc0c9baeae4d9eda129
parent53d56f489ebe1bcc7275d0e6802b73a7c3b91665 (diff)
downloadperl-ae2d1787751a38d67ea377bb8eb603cbbf3a36bc.tar.gz
Sender: owner-perl5-porters@perl.org
To: perl5-porters@perl.org Subject: [ID 19990827.003] [PATCH]5.005_60 Patch for EPOC Support p4raw-id: //depot/cfgperl@4047
-rw-r--r--README.epoc109
-rw-r--r--epoc/config.h28
-rw-r--r--epoc/epoc.c83
-rw-r--r--epoc/epocish.h14
-rw-r--r--epoc/perl.mmp9
-rw-r--r--epoc/perl.pkg146
6 files changed, 303 insertions, 86 deletions
diff --git a/README.epoc b/README.epoc
index b2aaf1859b..d078d8416d 100644
--- a/README.epoc
+++ b/README.epoc
@@ -4,50 +4,104 @@ Perl 5 README file for the EPOC operating system.
Olaf Flebbe <o.flebbe@gmx.de>
http://www.fortunecity.de/wolkenkratzer/trumpet/84/perl5.html
-June 27, 1999
+Aug 25, 1999
Introduction
------------
-This is a port of Perl version 5, revision 005-57 to EPOC.
+This is a port of Perl version 5.005_60 to EPOC.
-There are many features left out, because of restrictions of the posix
+There are many features left out, because of restrictions of the POSIX
support in the SDK.
-The following known problems do exist:
-1) very little testing.
+Installation/Usage
+------------------
-2) no support for system, backquoting, pipes etc. One cannot exec a
- different process.
+You will need ~4MB free space in order to run perl.
+
+Install perl.sis on the EPOC machine (most likely a PSION Series
+5). If you do not know how to do that, you are on your own. You may
+have to use a CF Card in order to work with perl. The perl debugger
+uses more then 1.5 MB additional RAM. The heap is limited to 2 MB.
+
+Perl itself and its standard library are using 1.7MB disk space. I
+left out UTF support and modules which will not work with this
+version. (For details look into epoc/createpkg.pl).
+
+Copy eshell.exe to the same location as perl. Start eshell.exe with a
+double click.
+
+Now you can enter: perl -de 0 in order to run the perl debugger. If
+you are leaving perl, you have to switch back manually to eshell.exe
+(With Ctrl-System or the button in the upper right corner of the
+System screen.) When perl is running, you will see a task with the
+name STDOUT in the task list.
+
+You can redirect the output with the UNIX bourne shell syntax (this is
+built into perl rather then eshell) For instance the following command
+line will run the script test.pl with the output redirected to
+stdout_file, the errors to stderr_file and input from stdin_file.
+
+perl test.pl >stdout_file <stdin_file 2>stderr_file
+
+Alternativly you can use 2>&1 in order to add the standard error output to
+stdout.
+
+Pathnames to executables in eshell.exe have to be written with
+backslashes, file arguments to perl with slashes. The default drive of
+perl is the same as the drive perl.exe is located on, the default path
+is the path perl.exe is / (???).
+
+i.e. command lines look a little bit funny:
+
+D:\perl.exe C:/test.pl >C:/output.txt
-3) no signals, kill. Do not try to use them.
+In order to use Getopt::Long you have to autosplit this module by hand: run
-4) select is missing.
+\perl.exe \autosplit.pl in order to create the necessary files.
-5) binmode does not work. (No CR LF to LF translation for text files)
+You may have a problem to create perl scripts. A cumbersome workaround
+is to use the OPL Editor and exporting to text.
-6) no Config.pm
+Problems
+--------
-7) no I/O redirection.
+The following known problems exist:
-8) it may not run from a drive other than C: (I have no CF Card to test)
+1) no support for system, backquoting, pipes etc. One cannot exec a
+ different process.
+
+2) no signals, kill, alarm. Do not try to use them. This may be
+ impossible to implement on EPOC.
+
+3) select is missing.
+
+4) binmode does not exist. (No CR LF to LF translation for text files)
+
+5) Only a stub Config.pm
+
+6) 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)
-9) sockets may hardly of any use.
+7) sockets may hardly of any use.
-10) You need a shell in order to run perl.exe.
+8) You need the shell eshell.exe in order to run perl.exe and supply
+ it with arguments.
Compiling Perl 5 on the EPOC cross compiling envionment.
--------------------------------------------------------
0. You will need the C++ SDK from
- http://developer.epocworld.com/. Install it on a separate drive.
+ http://developer.epocworld.com/. Install it on a separate
+ drive.
-1. Unpack the sources in the epoc development drive: The sources
- should be in a directory perl5.005/perl5.005_57
-
-2. Move all files in the directory perl5.005_57/epoc to perl5.005_57.
+1. Get the Perl sources from your nearest CPAN site.
+ Unpack the sources of perl5.005_60 in the epoc development drive.
+
+2. Copy all files in the directory perl5.005_60/epoc to perl5.005_60.
3. Check the perl.mmp file: It should have the correct locations for
project und subproject (see step 1)
@@ -59,22 +113,21 @@ Compiling Perl 5 on the EPOC cross compiling envionment.
5. Beam the perl5.005.sis to the Psion5, install and enjoy!
-ToDo List
+You can use epoc\createpkg.pl to generate a new perl.pkg file.
+
+
+Wish List
---------
-- Allocate an UID from symbian.
+- Implement an OPX to get rid of eshell.exe.
-- Implement system() and I/O redirection, in order to run the
- tests.
+- Implement system(), in order to run the tests.
- Implement getprotcolbyname() and relatives.
-- Implement perl as a OPX module. (What do you think?)
-
Support Status
--------------
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;
-
+internals myself;
diff --git a/epoc/config.h b/epoc/config.h
index e6cebb0b68..3f9808a282 100644
--- a/epoc/config.h
+++ b/epoc/config.h
@@ -1055,7 +1055,7 @@
* preprocessor can make decisions based on it.
*/
#define INTSIZE 4 /**/
-#define LONGSIZE 8 /**/
+#define LONGSIZE 4 /**/
#define SHORTSIZE 2 /**/
/* MULTIARCH:
@@ -2074,8 +2074,8 @@
* This symbol contains the ~name expanded version of ARCHLIB, to be used
* in programs that are not prepared to deal with ~ expansion at run-time.
*/
-#define ARCHLIB "/perl/lib/5.00557/epoc" /**/
-#define ARCHLIB_EXP "/perl/lib/5.00557/epoc" /**/
+#define ARCHLIB "/perl/lib/5.00560/epoc" /**/
+#define ARCHLIB_EXP "/perl/lib/5.00560/epoc" /**/
/* DLSYM_NEEDS_UNDERSCORE:
* This symbol, if defined, indicates that we need to prepend an
@@ -2365,8 +2365,8 @@
* This symbol contains the ~name expanded version of PRIVLIB, to be used
* in programs that are not prepared to deal with ~ expansion at run-time.
*/
-#define PRIVLIB "/perl/lib/5.00557" /**/
-#define PRIVLIB_EXP "/perl/lib/5.00557" /**/
+#define PRIVLIB "/perl/lib/5.00560" /**/
+#define PRIVLIB_EXP "/perl/lib/5.00560" /**/
/* SELECT_MIN_BITS:
* This symbol holds the minimum number of bits operated by select.
@@ -2391,7 +2391,7 @@
* in programs that are not prepared to deal with ~ expansion at run-time.
*/
#define SITEARCH "/perl/lib/site_perl/5.00556/epoc" /**/
-#define SITEARCH_EXP "/perl/lib/site_perl/5.00557/epoc" /**/
+#define SITEARCH_EXP "/perl/lib/site_perl/5.00560/epoc" /**/
/* SITELIB:
* This symbol contains the name of the private library for this package.
@@ -2406,8 +2406,8 @@
* This symbol contains the ~name expanded version of SITELIB, to be used
* in programs that are not prepared to deal with ~ expansion at run-time.
*/
-#define SITELIB "/perl/lib/site_perl/5.00557" /**/
-#define SITELIB_EXP "/perl/lib/site_perl/5.00557" /**/
+#define SITELIB "/perl/lib/site_perl/5.00560" /**/
+#define SITELIB_EXP "/perl/lib/site_perl/5.00560" /**/
/* STARTPERL:
* This variable contains the string to put in front of a perl
@@ -2687,4 +2687,16 @@
*/
#define Uid_t uid_t /* UID type */
+/* PERL_PRIfldbl:
+ * This symbol, if defined, contains the string used by stdio to
+ * format long doubles (format 'f') for output.
+ */
+/* PERL_PRIgldbl:
+ * This symbol, if defined, contains the string used by stdio to
+ * format long doubles (format 'g') for output.
+ */
+#define PERL_PRIfldbl "f" /**/
+#define PERL_PRIgldbl "g" /**/
+
#endif
+
diff --git a/epoc/epoc.c b/epoc/epoc.c
index a7c7e1090b..d0fae23f7e 100644
--- a/epoc/epoc.c
+++ b/epoc/epoc.c
@@ -1,35 +1,64 @@
-/* Epoc helper Routines */
+/*
+ * Copyright (c) 1999 Olaf Flebbe o.flebbe@gmx.de
+ *
+ * You may distribute under the terms of either the GNU General Public
+ * License or the Artistic License, as specified in the README file.
+ *
+ */
#include <stdlib.h>
+#include <string.h>
+#include <stdio.h>
+#include <sys/unistd.h>
+
+char *environ = NULL;
+void
+Perl_epoc_init(int *argcp, char ***argvp) {
+ int i;
+ int truecount=0;
+ char **lastcp = (*argvp);
+ char *ptr;
+ for (i=0; i< *argcp; i++) {
+ if ((*argvp)[i]) {
+ if (*((*argvp)[i]) == '<') {
+ if (strlen((*argvp)[i]) > 1) {
+ ptr =((*argvp)[i])+1;
+ } else {
+ i++;
+ ptr = ((*argvp)[i]);
+ }
+ freopen( ptr, "r", stdin);
+ } else if (*((*argvp)[i]) == '>') {
+ if (strlen((*argvp)[i]) > 1) {
+ ptr =((*argvp)[i])+1;
+ } else {
+ i++;
+ ptr = ((*argvp)[i]);
+ }
+ freopen( ptr, "w", stdout);
+ } else if ((*((*argvp)[i]) == '2') && (*(((*argvp)[i])+1) == '>')) {
+ if (strcmp( (*argvp)[i], "2>&1") == 0) {
+ dup2( fileno( stdout), fileno( stderr));
+ } else {
+ if (strlen((*argvp)[i]) > 2) {
+ ptr =((*argvp)[i])+2;
+ } else {
+ i++;
+ ptr = ((*argvp)[i]);
+ }
+ freopen( ptr, "w", stderr);
+ }
+ } else {
+ *lastcp++ = (*argvp)[i];
+ truecount++;
+ }
+ }
+ }
+ *argcp=truecount;
+
-int getgid() {return 0;}
-int getegid() {return 0;}
-int geteuid() {return 0;}
-int getuid() {return 0;}
-int setgid() {return -1;}
-int setuid() {return -1;}
-
-
-char *environ;
-
-int Perl_my_popen( int a, int b) {
- return 0;
-}
-int Perl_my_pclose( int a) {
- return 0;
}
-kill() {}
-signal() {}
-
-void execv() {}
-void execvp() {}
-
-
-void do_spawn() {}
-void do_aspawn() {}
-void Perl_do_exec() {}
-
#ifdef __MARM__
/* Symbian forgot to include __fixunsdfi into the MARM euser.lib */
/* This is from libgcc2.c , gcc-2.7.2.3 */
diff --git a/epoc/epocish.h b/epoc/epocish.h
index 010dc691a9..70d4cbd6c1 100644
--- a/epoc/epocish.h
+++ b/epoc/epocish.h
@@ -89,9 +89,6 @@
*/
/* #define ALTERNATE_SHEBANG "#!" / **/
-#if !defined(NSIG) || defined(M_UNIX) || defined(M_XENIX) || defined(__NetBSD__)
-# include <signal.h>
-#endif
#ifndef SIGABRT
# define SIGABRT SIGILL
@@ -116,15 +113,7 @@
/* these should be set in a hint file, not here */
#ifndef PERL_SYS_INIT
-#ifdef PERL_SCO5
-# define PERL_SYS_INIT(c,v) fpsetmask(0); MALLOC_INIT
-#else
-# ifdef POSIX_BC
-# define PERL_SYS_INIT(c,v) sigignore(SIGFPE); MALLOC_INIT
-# else
-# define PERL_SYS_INIT(c,v) MALLOC_INIT
-# endif
-#endif
+# define PERL_SYS_INIT(c,v) Perl_epoc_init(c,v); MALLOC_INIT
#endif
#ifndef PERL_SYS_TERM
@@ -134,3 +123,4 @@
#define BIT_BUCKET "NUL:"
#define dXSUB_SYS
+
diff --git a/epoc/perl.mmp b/epoc/perl.mmp
index 30c97fd23e..d6c63990e0 100644
--- a/epoc/perl.mmp
+++ b/epoc/perl.mmp
@@ -1,11 +1,11 @@
target perl.exe
targettype exe
-uid 0x010 0
-unicodeuid 0x010 0
+uid 0x100051d8
+
project perl5.005
-subproject perl5.005_57
+subproject perl5.005_60
-SOURCE av.c byterun.c deb.c doio.c doop.c dump.c globals.c gv.c hv.c mg.c miniperlmain.c op.c perl.c perlio.c perly.c pp.c pp_ctl.c pp_hot.c pp_sys.c regcomp.c regexec.c run.c scope.c sv.c taint.c toke.c universal.c utf8.c util.c epoc.c
+SOURCE av.c deb.c doio.c doop.c dump.c globals.c gv.c hv.c mg.c miniperlmain.c op.c perl.c perlio.c perly.c pp.c pp_ctl.c pp_hot.c pp_sys.c regcomp.c regexec.c run.c scope.c sv.c taint.c toke.c universal.c utf8.c util.c epoc.c epoc_stubs.c
systeminclude \epoc32\include\libc \epoc32\include
#if defined(MARM)
@@ -15,5 +15,6 @@ LIBRARY ecrt0.obj
#endif
epocstacksize 49152
+epocheapsize 1024 2097152
LIBRARY estlib.lib euser.lib
diff --git a/epoc/perl.pkg b/epoc/perl.pkg
index c24945bf77..9456506554 100644
--- a/epoc/perl.pkg
+++ b/epoc/perl.pkg
@@ -1,7 +1,139 @@
-#{"perl5.005"},(0x010),57,5,0
-; Installation with an embedded .sis file
-"\epoc32\release\marm\rel\perl.exe"-"!:\perl.exe"
-"\perl5.005\perl5.005_57\lib\perl5db.pl"-"!:\perl\lib\5.00557\perl5db.pl"
-"\perl5.005\perl5.005_57\lib\Term\ReadLine.pm"-"!:\perl\lib\5.00557\Term\ReadLine.pm"
-; Component .sis files
-@"\epoc32\release\marm\rel\stdlib.sis",(0x010002c3)
+#{"perl5.005"},(0x100051d8),60,10,0
+"\epoc32\release\marm\rel\perl.exe"-"!:\perl.exe"
+"\perl5.005\perl5.005_60\epoc\Config.pm"-"!:\perl\lib\5.00560\Config.pm"
+"\perl5.005\perl5.005_60\lib\AnyDBM_File.pm"-"!:\perl\lib\5.00560\AnyDBM_File.pm"
+"\perl5.005\perl5.005_60\lib\AutoLoader.pm"-"!:\perl\lib\5.00560\AutoLoader.pm"
+"\perl5.005\perl5.005_60\lib\AutoSplit.pm"-"!:\perl\lib\5.00560\AutoSplit.pm"
+"\perl5.005\perl5.005_60\lib\Benchmark.pm"-"!:\perl\lib\5.00560\Benchmark.pm"
+"\perl5.005\perl5.005_60\lib\Carp.pm"-"!:\perl\lib\5.00560\Carp.pm"
+"\perl5.005\perl5.005_60\lib\Carp\Heavy.pm"-"!:\perl\lib\5.00560\Carp\Heavy.pm"
+"\perl5.005\perl5.005_60\lib\Class\Struct.pm"-"!:\perl\lib\5.00560\Class\Struct.pm"
+"\perl5.005\perl5.005_60\lib\Cwd.pm"-"!:\perl\lib\5.00560\Cwd.pm"
+"\perl5.005\perl5.005_60\lib\Devel\SelfStubber.pm"-"!:\perl\lib\5.00560\Devel\SelfStubber.pm"
+"\perl5.005\perl5.005_60\lib\DirHandle.pm"-"!:\perl\lib\5.00560\DirHandle.pm"
+"\perl5.005\perl5.005_60\lib\Dumpvalue.pm"-"!:\perl\lib\5.00560\Dumpvalue.pm"
+"\perl5.005\perl5.005_60\lib\English.pm"-"!:\perl\lib\5.00560\English.pm"
+"\perl5.005\perl5.005_60\lib\Env.pm"-"!:\perl\lib\5.00560\Env.pm"
+"\perl5.005\perl5.005_60\lib\Exporter\Heavy.pm"-"!:\perl\lib\5.00560\Exporter\Heavy.pm"
+"\perl5.005\perl5.005_60\lib\Exporter.pm"-"!:\perl\lib\5.00560\Exporter.pm"
+"\perl5.005\perl5.005_60\lib\Fatal.pm"-"!:\perl\lib\5.00560\Fatal.pm"
+"\perl5.005\perl5.005_60\lib\File\Basename.pm"-"!:\perl\lib\5.00560\File\Basename.pm"
+"\perl5.005\perl5.005_60\lib\File\CheckTree.pm"-"!:\perl\lib\5.00560\File\CheckTree.pm"
+"\perl5.005\perl5.005_60\lib\File\Compare.pm"-"!:\perl\lib\5.00560\File\Compare.pm"
+"\perl5.005\perl5.005_60\lib\File\Copy.pm"-"!:\perl\lib\5.00560\File\Copy.pm"
+"\perl5.005\perl5.005_60\lib\File\DosGlob.pm"-"!:\perl\lib\5.00560\File\DosGlob.pm"
+"\perl5.005\perl5.005_60\lib\File\Find.pm"-"!:\perl\lib\5.00560\File\Find.pm"
+"\perl5.005\perl5.005_60\lib\File\Path.pm"-"!:\perl\lib\5.00560\File\Path.pm"
+"\perl5.005\perl5.005_60\lib\File\Spec.pm"-"!:\perl\lib\5.00560\File\Spec.pm"
+"\perl5.005\perl5.005_60\lib\File\Spec\Functions.pm"-"!:\perl\lib\5.00560\File\Spec\Functions.pm"
+"\perl5.005\perl5.005_60\lib\File\Spec\Mac.pm"-"!:\perl\lib\5.00560\File\Spec\Mac.pm"
+"\perl5.005\perl5.005_60\lib\File\Spec\OS2.pm"-"!:\perl\lib\5.00560\File\Spec\OS2.pm"
+"\perl5.005\perl5.005_60\lib\File\Spec\Unix.pm"-"!:\perl\lib\5.00560\File\Spec\Unix.pm"
+"\perl5.005\perl5.005_60\lib\File\Spec\VMS.pm"-"!:\perl\lib\5.00560\File\Spec\VMS.pm"
+"\perl5.005\perl5.005_60\lib\File\Spec\Win32.pm"-"!:\perl\lib\5.00560\File\Spec\Win32.pm"
+"\perl5.005\perl5.005_60\lib\File\stat.pm"-"!:\perl\lib\5.00560\File\stat.pm"
+"\perl5.005\perl5.005_60\lib\FileCache.pm"-"!:\perl\lib\5.00560\FileCache.pm"
+"\perl5.005\perl5.005_60\lib\FileHandle.pm"-"!:\perl\lib\5.00560\FileHandle.pm"
+"\perl5.005\perl5.005_60\lib\FindBin.pm"-"!:\perl\lib\5.00560\FindBin.pm"
+"\perl5.005\perl5.005_60\lib\Getopt\Long.pm"-"!:\perl\lib\5.00560\Getopt\Long.pm"
+"\perl5.005\perl5.005_60\lib\Getopt\Std.pm"-"!:\perl\lib\5.00560\Getopt\Std.pm"
+"\perl5.005\perl5.005_60\lib\I18N\Collate.pm"-"!:\perl\lib\5.00560\I18N\Collate.pm"
+"\perl5.005\perl5.005_60\lib\Math\BigFloat.pm"-"!:\perl\lib\5.00560\Math\BigFloat.pm"
+"\perl5.005\perl5.005_60\lib\Math\BigInt.pm"-"!:\perl\lib\5.00560\Math\BigInt.pm"
+"\perl5.005\perl5.005_60\lib\Math\Complex.pm"-"!:\perl\lib\5.00560\Math\Complex.pm"
+"\perl5.005\perl5.005_60\lib\Math\Trig.pm"-"!:\perl\lib\5.00560\Math\Trig.pm"
+"\perl5.005\perl5.005_60\lib\Pod\Checker.pm"-"!:\perl\lib\5.00560\Pod\Checker.pm"
+"\perl5.005\perl5.005_60\lib\Pod\Functions.pm"-"!:\perl\lib\5.00560\Pod\Functions.pm"
+"\perl5.005\perl5.005_60\lib\Pod\Html.pm"-"!:\perl\lib\5.00560\Pod\Html.pm"
+"\perl5.005\perl5.005_60\lib\Pod\InputObjects.pm"-"!:\perl\lib\5.00560\Pod\InputObjects.pm"
+"\perl5.005\perl5.005_60\lib\Pod\Parser.pm"-"!:\perl\lib\5.00560\Pod\Parser.pm"
+"\perl5.005\perl5.005_60\lib\Pod\PlainText.pm"-"!:\perl\lib\5.00560\Pod\PlainText.pm"
+"\perl5.005\perl5.005_60\lib\Pod\Select.pm"-"!:\perl\lib\5.00560\Pod\Select.pm"
+"\perl5.005\perl5.005_60\lib\Pod\Text.pm"-"!:\perl\lib\5.00560\Pod\Text.pm"
+"\perl5.005\perl5.005_60\lib\Pod\Text\Color.pm"-"!:\perl\lib\5.00560\Pod\Text\Color.pm"
+"\perl5.005\perl5.005_60\lib\Pod\Text\Termcap.pm"-"!:\perl\lib\5.00560\Pod\Text\Termcap.pm"
+"\perl5.005\perl5.005_60\lib\Pod\Usage.pm"-"!:\perl\lib\5.00560\Pod\Usage.pm"
+"\perl5.005\perl5.005_60\lib\Search\Dict.pm"-"!:\perl\lib\5.00560\Search\Dict.pm"
+"\perl5.005\perl5.005_60\lib\SelectSaver.pm"-"!:\perl\lib\5.00560\SelectSaver.pm"
+"\perl5.005\perl5.005_60\lib\SelfLoader.pm"-"!:\perl\lib\5.00560\SelfLoader.pm"
+"\perl5.005\perl5.005_60\lib\Shell.pm"-"!:\perl\lib\5.00560\Shell.pm"
+"\perl5.005\perl5.005_60\lib\Symbol.pm"-"!:\perl\lib\5.00560\Symbol.pm"
+"\perl5.005\perl5.005_60\lib\Sys\Hostname.pm"-"!:\perl\lib\5.00560\Sys\Hostname.pm"
+"\perl5.005\perl5.005_60\lib\Sys\Syslog.pm"-"!:\perl\lib\5.00560\Sys\Syslog.pm"
+"\perl5.005\perl5.005_60\lib\Term\Cap.pm"-"!:\perl\lib\5.00560\Term\Cap.pm"
+"\perl5.005\perl5.005_60\lib\Term\Complete.pm"-"!:\perl\lib\5.00560\Term\Complete.pm"
+"\perl5.005\perl5.005_60\lib\Term\ReadLine.pm"-"!:\perl\lib\5.00560\Term\ReadLine.pm"
+"\perl5.005\perl5.005_60\lib\Test.pm"-"!:\perl\lib\5.00560\Test.pm"
+"\perl5.005\perl5.005_60\lib\Test\Harness.pm"-"!:\perl\lib\5.00560\Test\Harness.pm"
+"\perl5.005\perl5.005_60\lib\Text\Abbrev.pm"-"!:\perl\lib\5.00560\Text\Abbrev.pm"
+"\perl5.005\perl5.005_60\lib\Text\ParseWords.pm"-"!:\perl\lib\5.00560\Text\ParseWords.pm"
+"\perl5.005\perl5.005_60\lib\Text\Soundex.pm"-"!:\perl\lib\5.00560\Text\Soundex.pm"
+"\perl5.005\perl5.005_60\lib\Text\Tabs.pm"-"!:\perl\lib\5.00560\Text\Tabs.pm"
+"\perl5.005\perl5.005_60\lib\Text\Wrap.pm"-"!:\perl\lib\5.00560\Text\Wrap.pm"
+"\perl5.005\perl5.005_60\lib\Tie\Array.pm"-"!:\perl\lib\5.00560\Tie\Array.pm"
+"\perl5.005\perl5.005_60\lib\Tie\Handle.pm"-"!:\perl\lib\5.00560\Tie\Handle.pm"
+"\perl5.005\perl5.005_60\lib\Tie\Hash.pm"-"!:\perl\lib\5.00560\Tie\Hash.pm"
+"\perl5.005\perl5.005_60\lib\Tie\RefHash.pm"-"!:\perl\lib\5.00560\Tie\RefHash.pm"
+"\perl5.005\perl5.005_60\lib\Tie\Scalar.pm"-"!:\perl\lib\5.00560\Tie\Scalar.pm"
+"\perl5.005\perl5.005_60\lib\Tie\SubstrHash.pm"-"!:\perl\lib\5.00560\Tie\SubstrHash.pm"
+"\perl5.005\perl5.005_60\lib\Time\Local.pm"-"!:\perl\lib\5.00560\Time\Local.pm"
+"\perl5.005\perl5.005_60\lib\Time\gmtime.pm"-"!:\perl\lib\5.00560\Time\gmtime.pm"
+"\perl5.005\perl5.005_60\lib\Time\localtime.pm"-"!:\perl\lib\5.00560\Time\localtime.pm"
+"\perl5.005\perl5.005_60\lib\Time\tm.pm"-"!:\perl\lib\5.00560\Time\tm.pm"
+"\perl5.005\perl5.005_60\lib\UNIVERSAL.pm"-"!:\perl\lib\5.00560\UNIVERSAL.pm"
+"\perl5.005\perl5.005_60\lib\abbrev.pl"-"!:\perl\lib\5.00560\abbrev.pl"
+"\perl5.005\perl5.005_60\lib\assert.pl"-"!:\perl\lib\5.00560\assert.pl"
+"\perl5.005\perl5.005_60\lib\autouse.pm"-"!:\perl\lib\5.00560\autouse.pm"
+"\perl5.005\perl5.005_60\lib\base.pm"-"!:\perl\lib\5.00560\base.pm"
+"\perl5.005\perl5.005_60\lib\bigfloat.pl"-"!:\perl\lib\5.00560\bigfloat.pl"
+"\perl5.005\perl5.005_60\lib\bigint.pl"-"!:\perl\lib\5.00560\bigint.pl"
+"\perl5.005\perl5.005_60\lib\bigrat.pl"-"!:\perl\lib\5.00560\bigrat.pl"
+"\perl5.005\perl5.005_60\lib\blib.pm"-"!:\perl\lib\5.00560\blib.pm"
+"\perl5.005\perl5.005_60\lib\cacheout.pl"-"!:\perl\lib\5.00560\cacheout.pl"
+"\perl5.005\perl5.005_60\lib\caller.pm"-"!:\perl\lib\5.00560\caller.pm"
+"\perl5.005\perl5.005_60\lib\chat2.pl"-"!:\perl\lib\5.00560\chat2.pl"
+"\perl5.005\perl5.005_60\lib\complete.pl"-"!:\perl\lib\5.00560\complete.pl"
+"\perl5.005\perl5.005_60\lib\constant.pm"-"!:\perl\lib\5.00560\constant.pm"
+"\perl5.005\perl5.005_60\lib\ctime.pl"-"!:\perl\lib\5.00560\ctime.pl"
+"\perl5.005\perl5.005_60\lib\diagnostics.pm"-"!:\perl\lib\5.00560\diagnostics.pm"
+"\perl5.005\perl5.005_60\lib\dotsh.pl"-"!:\perl\lib\5.00560\dotsh.pl"
+"\perl5.005\perl5.005_60\lib\dumpvar.pl"-"!:\perl\lib\5.00560\dumpvar.pl"
+"\perl5.005\perl5.005_60\lib\exceptions.pl"-"!:\perl\lib\5.00560\exceptions.pl"
+"\perl5.005\perl5.005_60\lib\fastcwd.pl"-"!:\perl\lib\5.00560\fastcwd.pl"
+"\perl5.005\perl5.005_60\lib\fields.pm"-"!:\perl\lib\5.00560\fields.pm"
+"\perl5.005\perl5.005_60\lib\filetest.pm"-"!:\perl\lib\5.00560\filetest.pm"
+"\perl5.005\perl5.005_60\lib\find.pl"-"!:\perl\lib\5.00560\find.pl"
+"\perl5.005\perl5.005_60\lib\finddepth.pl"-"!:\perl\lib\5.00560\finddepth.pl"
+"\perl5.005\perl5.005_60\lib\flush.pl"-"!:\perl\lib\5.00560\flush.pl"
+"\perl5.005\perl5.005_60\lib\ftp.pl"-"!:\perl\lib\5.00560\ftp.pl"
+"\perl5.005\perl5.005_60\lib\getcwd.pl"-"!:\perl\lib\5.00560\getcwd.pl"
+"\perl5.005\perl5.005_60\lib\getopt.pl"-"!:\perl\lib\5.00560\getopt.pl"
+"\perl5.005\perl5.005_60\lib\getopts.pl"-"!:\perl\lib\5.00560\getopts.pl"
+"\perl5.005\perl5.005_60\lib\hostname.pl"-"!:\perl\lib\5.00560\hostname.pl"
+"\perl5.005\perl5.005_60\lib\importenv.pl"-"!:\perl\lib\5.00560\importenv.pl"
+"\perl5.005\perl5.005_60\lib\integer.pm"-"!:\perl\lib\5.00560\integer.pm"
+"\perl5.005\perl5.005_60\lib\less.pm"-"!:\perl\lib\5.00560\less.pm"
+"\perl5.005\perl5.005_60\lib\lib.pm"-"!:\perl\lib\5.00560\lib.pm"
+"\perl5.005\perl5.005_60\lib\locale.pm"-"!:\perl\lib\5.00560\locale.pm"
+"\perl5.005\perl5.005_60\lib\look.pl"-"!:\perl\lib\5.00560\look.pl"
+"\perl5.005\perl5.005_60\lib\newgetopt.pl"-"!:\perl\lib\5.00560\newgetopt.pl"
+"\perl5.005\perl5.005_60\lib\open2.pl"-"!:\perl\lib\5.00560\open2.pl"
+"\perl5.005\perl5.005_60\lib\open3.pl"-"!:\perl\lib\5.00560\open3.pl"
+"\perl5.005\perl5.005_60\lib\overload.pm"-"!:\perl\lib\5.00560\overload.pm"
+"\perl5.005\perl5.005_60\lib\perl5db.pl"-"!:\perl\lib\5.00560\perl5db.pl"
+"\perl5.005\perl5.005_60\lib\pwd.pl"-"!:\perl\lib\5.00560\pwd.pl"
+"\perl5.005\perl5.005_60\lib\shellwords.pl"-"!:\perl\lib\5.00560\shellwords.pl"
+"\perl5.005\perl5.005_60\lib\sigtrap.pm"-"!:\perl\lib\5.00560\sigtrap.pm"
+"\perl5.005\perl5.005_60\lib\stat.pl"-"!:\perl\lib\5.00560\stat.pl"
+"\perl5.005\perl5.005_60\lib\strict.pm"-"!:\perl\lib\5.00560\strict.pm"
+"\perl5.005\perl5.005_60\lib\subs.pm"-"!:\perl\lib\5.00560\subs.pm"
+"\perl5.005\perl5.005_60\lib\syslog.pl"-"!:\perl\lib\5.00560\syslog.pl"
+"\perl5.005\perl5.005_60\lib\tainted.pl"-"!:\perl\lib\5.00560\tainted.pl"
+"\perl5.005\perl5.005_60\lib\termcap.pl"-"!:\perl\lib\5.00560\termcap.pl"
+"\perl5.005\perl5.005_60\lib\timelocal.pl"-"!:\perl\lib\5.00560\timelocal.pl"
+"\perl5.005\perl5.005_60\lib\utf8.pm"-"!:\perl\lib\5.00560\utf8.pm"
+"\perl5.005\perl5.005_60\lib\utf8_heavy.pl"-"!:\perl\lib\5.00560\utf8_heavy.pl"
+"\perl5.005\perl5.005_60\lib\validate.pl"-"!:\perl\lib\5.00560\validate.pl"
+"\perl5.005\perl5.005_60\lib\vars.pm"-"!:\perl\lib\5.00560\vars.pm"
+"\perl5.005\perl5.005_60\lib\warning.pm"-"!:\perl\lib\5.00560\warning.pm"
+@"\epoc32\release\marm\rel\stdlib.sis",(0x010002c3)