This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Demote the surrogate and non-character errors to warnings.
[perl5.git] / Porting / pumpkin.pod
index 3bc9d09..42f4428 100644 (file)
@@ -24,7 +24,7 @@ and all the various auxiliary files that are part of the distribution.
 
 The Comprehensive Perl Archive Network (or CPAN) is the place to go.
 There are many mirrors, but the easiest thing to use is probably
-http://www.perl.com/CPAN/README.html , which automatically points you to a
+http://www.cpan.org/README.html , which automatically points you to a
 mirror site "close" to you.
 
 =head2 Perl5-porters mailing list
@@ -158,6 +158,7 @@ settled elsewhere.
 
 If feasible, try to keep filenames 8.3-compliant to humor those poor
 souls that get joy from running Perl under such dire limitations.
+There's a script, check83.pl, for keeping your nose 8.3-clean.
 
 =head2 Seek consensus on major changes
 
@@ -240,6 +241,9 @@ some or all of the modules File::Basename, File::Spec, File::Path, and
 File::Copy to become aware of your native filesystem syntax and
 peculiarities.
 
+Remember to have a $VERSION in the modules.  You can use the
+Porting/checkVERSION.pl script for checking this.
+
 =item documentation
 
 If your operating system comes from outside UNIX you almost certainly
@@ -358,7 +362,7 @@ on obtaining and running metaconfig is in the F<U/README> file
 that comes with Perl's metaconfig units.  Perl's metaconfig units
 should be available on CPAN.  A set of units that will work with
 perl5.005 is in the file F<mc_units-5.005_00-01.tar.gz> under
-http://www.perl.com/CPAN/authors/id/ANDYD/ .  The mc_units tar file
+http://www.cpan.org/authors/id/ANDYD/ .  The mc_units tar file
 should be unpacked in your main perl source directory.  Note: those
 units were for use with 5.005.  There may have been changes since then.
 Check for later versions or contact perl5-porters@perl.org to obtain a
@@ -632,7 +636,7 @@ script.
 
 I find the F<makepatch> utility quite handy for making patches.
 You can obtain it from any CPAN archive under
-http://www.perl.com/CPAN/authors/Johan_Vromans/ .  There are a couple
+http://www.cpan.org/authors/Johan_Vromans/ .  There are a couple
 of differences between my version and the standard one. I have mine do
 a
 
@@ -729,15 +733,33 @@ produced by this process.
 
 A more accurate approach is the following commands:
 
-    sh Configure -des -Dccflags=-Wformat ...
-    make miniperl              # without -DCHECK_FORMAT
-    perl -i.orig -pwe 's/-Wformat/-DCHECK_FORMAT $&/' config.sh
-    sh Configure -S
-    make >& make.log           # build from correct miniperl
+=over 4
+
+=item *
+
+build miniperl with -DCHECK_FORMAT 
+
     make clean
-    make miniperl >& mini.log  # build miniperl with -DCHECK_FORMAT 
-    perl -nwe 'print if /^\S+:/ and not /^make\b/' mini.log make.log
+    make miniperl OPTIMIZE=-DCHECK_FORMAT >& mini.log  
+
+=item *
+
+build a clean miniperl,
+and build everything else from that with -DCHECK_FORMAT
+
+    make clean
+    make miniperl      
+    make all OPTIMIZE=-DCHECK_FORMAT >& make.log  
+               
+=item *
+
+clean up, and print warnings from the log files
+
     make clean
+    perl -nwe 'print if /^\S+:/ and not /^make\b/' \
+       mini.log make.log
+
+=back
 
 (-Wformat support by Robin Barker.)
 
@@ -757,7 +779,7 @@ Use the following commands to test perl with Purify:
        make all pureperl
        cd t
        ln -s ../pureperl perl
-       setenv PERL_DESTRUCT_LEVEL 5
+       setenv PERL_DESTRUCT_LEVEL 2
        ./perl TEST
 
 Disabling Perl's malloc allows Purify to monitor allocations and leaks
@@ -1117,7 +1139,7 @@ but not so much that it posed any serious problems.
 
 =item Metaconfig worked for me
 
-My system at the time was Interactive 2.2, a SVR3.2/386 derivative that
+My system at the time was Interactive 2.2, an SVR3.2/386 derivative that
 also had some POSIX support.  Metaconfig-generated Configure scripts
 worked fine for me on that system.  On the other hand, autoconf-generated
 scripts usually didn't.  (They did come quite close, though, in some
@@ -1254,7 +1276,7 @@ reflection, I'd say leave libperl.so in $archlib.
 =head1 Upload Your Work to CPAN
 
 You can upload your work to CPAN if you have a CPAN id.  Check out
-http://www.perl.com/CPAN/modules/04pause.html for information on
+http://www.cpan.org/modules/04pause.html for information on
 _PAUSE_, the Perl Author's Upload Server.
 
 I typically upload both the patch file, e.g. F<perl5.004_08.pat.gz>
@@ -1262,7 +1284,7 @@ and the full tar file, e.g. F<perl5.004_08.tar.gz>.
 
 If you want your patch to appear in the F<src/5.0/unsupported>
 directory on CPAN, send e-mail to the CPAN master librarian.  (Check
-out http://www.perl.com/CPAN/CPAN.html ).
+out http://www.cpan.org/CPAN.html ).
 
 =head1 Help Save the World