Initial commit of OpenSPARC T2 architecture model.
[OpenSPARC-T2-SAM] / sam-t2 / devtools / amd64 / lib / perl5 / 5.8.8 / pod / perlce.pod
CommitLineData
920dae64
AT
1If you read this file _as_is_, just ignore the funny characters you\r
2see. It is written in the POD format (see pod/perlpod.pod) which is\r
3specifically designed to be readable as is.\r
4\r
5=head1 NAME\r
6\r
7perlce - Perl for WinCE\r
8\r
9=head1 DESCRIPTION\r
10\r
11This file gives the instructions for building Perl5.8 and above for\r
12WinCE. Please read and understand the terms under which this\r
13software is distributed.\r
14\r
15=head1 BUILD\r
16\r
17This section describes the steps to be performed to build PerlCE.\r
18You may find additional and newer information about building perl\r
19for WinCE using following URL:\r
20\r
21 http://perlce.sourceforge.net\r
22\r
23There should also be pre-built binaries there.\r
24\r
25Don't be confused by large size of downloaded distribution or constructed\r
26binaries: entire distribution could be large for WinCE ideology, but\r
27you may strip it at your wish and use only required parts.\r
28\r
29=head2 Tools & SDK\r
30\r
31For compiling, you need following:\r
32\r
33=over 4\r
34\r
35=item * Microsoft Embedded Visual Tools\r
36\r
37=item * Microsoft Visual C++\r
38\r
39=item * Rainer Keuchel's celib-sources\r
40\r
41=item * Rainer Keuchel's console-sources\r
42\r
43=back\r
44\r
45Needed source files can be downloaded via:\r
46www.rainer-keuchel.de/wince/dirlist.html\r
47\r
48=head2 Make\r
49\r
50Please pay attention that starting from 5.8.0 miniperl *is* built\r
51and it facilitates in further building process. This means that\r
52in addition to compiler installation for mobile device you also need\r
53to have Microsoft Visual C++ installed as well.\r
54\r
55On the bright side, you do not need to edit any files from ./win32\r
56subdirectory. Normally you only need to edit ./wince/compile.bat\r
57to reflect your system and run it.\r
58\r
59File ./wince/compile.bat is actually a wrapper to call\r
60nmake -f makefile.ce with appropriate parameters and it accepts extra\r
61parameters and forwards them to "nmake" command as additional\r
62arguments. You should pass target this way.\r
63\r
64To prepare distribution you need to do following:\r
65\r
66=over 4\r
67\r
68=item * go to ./wince subdirectory\r
69\r
70=item * edit file compile.bat\r
71\r
72=item * run \r
73 compile.bat\r
74\r
75=item * run \r
76 compile.bat dist\r
77\r
78=back\r
79\r
80makefile.ce has CROSS_NAME macro, and it is used further to refer to\r
81your cross-compilation scheme. You could assign a name to it, but this\r
82is not necessary, because by default it is assigned after your machine\r
83configuration name, such as "wince-sh3-hpc-wce211", and this is enough\r
84to distinguish different builds at the same time. This option could be\r
85handy for several different builds on same platform to perform, say,\r
86threaded build. In a following example we assume that all required\r
87environment variables are set properly for C cross-compiler (a special\r
88*.bat file could fit perfectly to this purpose) and your compile.bat\r
89has proper "MACHINE" parameter set, to, say, "wince-mips-pocket-wce300".\r
90\r
91 compile.bat\r
92 compile.bat dist\r
93 compile.bat CROSS_NAME=mips-wce300-thr "USE_ITHREADS=define" "USE_IMP_SYS=define" "USE_MULTI=define"\r
94 compile.bat CROSS_NAME=mips-wce300-thr "USE_ITHREADS=define" "USE_IMP_SYS=define" "USE_MULTI=define" dist\r
95\r
96If all goes okay and no errors during a build, you'll get two independent\r
97distributions: "wince-mips-pocket-wce300" and "mips-wce300-thr".\r
98\r
99Target 'dist' prepares distribution file set. Target 'zipdist' performs\r
100same as 'dist' but additionally compresses distribution files into zip\r
101archive.\r
102\r
103NOTE: during a build there could be created a number (or one) of Config.pm\r
104for cross-compilation ("foreign" Config.pm) and those are hidden inside\r
105../xlib/$(CROSS_NAME) with other auxilary files, but, and this is important to\r
106note, there should be *no* Config.pm for host miniperl.\r
107If you'll get an error that perl could not find Config.pm somewhere in building\r
108process this means something went wrong. Most probably you forgot to\r
109specify a cross-compilation when invoking miniperl.exe to Makefile.PL\r
110When building an extension for cross-compilation your command line should\r
111look like\r
112\r
113 ..\miniperl.exe -I..\lib -MCross=mips-wce300-thr Makefile.PL\r
114\r
115or just\r
116\r
117 ..\miniperl.exe -I..\lib -MCross Makefile.PL\r
118\r
119to refer a cross-compilation that was created last time.\r
120\r
121\r
122If you decided to build with fcrypt.c file, please refer to README.win32\r
123file, as long as all legal considerations and steps to do are exactly same \r
124in this case.\r
125\r
126All questions related to building for WinCE devices could be asked in\r
127perlce-users@lists.sourceforge.net mailing list.\r
128\r
129=head1 ACKNOWLEDGEMENTS\r
130\r
131The port for Win32 was used as a reference.\r
132\r
133=head1 AUTHORS\r
134\r
135Rainer Keuchel (keuchel@netwave.de)\r
136Vadim Konovalov (vkonovalov@spb.lucent.com)\r
137\r