summaryrefslogtreecommitdiff
path: root/Porting
diff options
context:
space:
mode:
authorRobin Barker <RMBarker@cpan.org>2005-01-11 15:48:49 +0000
committerRafael Garcia-Suarez <rgarciasuarez@gmail.com>2005-01-11 17:04:24 +0000
commit57f5baf2d376469520fedfc328fdf51d005eafe3 (patch)
treec4be692ef5ebf757bdf6bb1fa4d40cd94690c4f4 /Porting
parent766f891612bf493b0430beb068ead367d70cdef6 (diff)
downloadperl-57f5baf2d376469520fedfc328fdf51d005eafe3.tar.gz
follow-up to 23767
Message-ID: <533D273D4014D411AB1D00062938C4D90849C56A@hotel.npl.co.uk> p4raw-id: //depot/perl@23781
Diffstat (limited to 'Porting')
-rw-r--r--Porting/pumpkin.pod33
1 files changed, 14 insertions, 19 deletions
diff --git a/Porting/pumpkin.pod b/Porting/pumpkin.pod
index b2e2c2ef6e..ff1e5bd5f9 100644
--- a/Porting/pumpkin.pod
+++ b/Porting/pumpkin.pod
@@ -719,37 +719,32 @@ If you have gcc, you can test the correct use of printf-style
arguments. Run C<Configure> with S<-Dccflags='-DCHECK_FORMAT
-Wformat'> (and S<-Dcc=gcc>, if you are not on a system where C<cc>
is C<gcc>) and run C<make>. The compiler will produce warnings of
-incorrect use of format arguments. CHECK_FORMAT changes perl-defined
-formats to common formats, so DO NOT USE the executable produced by
-this process.
+incorrect use of format arguments.
-A more accurate approach is the following commands:
+As of change 23767, CHECK_FORMAT changes perl-defined formats
+to obscure (but standard) formats, and then traps the obscure
+format. The resulting perl executable operates properly but
+you should not use the executable produced by this process.
=over 4
=item *
-
-build miniperl with -DCHECK_FORMAT
-
- make clean
- make miniperl OPTIMIZE=-DCHECK_FORMAT >& mini.log
-
-=item *
-
-build a clean miniperl,
-and build everything else from that with -DCHECK_FORMAT
+
+A more accurate approach is the following commands:
make clean
- make miniperl
make all OPTIMIZE='-DCHECK_FORMAT -Wformat' >& make.log
-
+ perl -nwe 'print if /^\S+:/ and not /^make\b/' make.log
+
=item *
-clean up, and print warnings from the log files
+A more thorough approach to compiler warnings is
make clean
- perl -nwe 'print if /^\S+:/ and not /^make\b/' \
- mini.log make.log
+ make miniperl OPTIMIZE=-O\ -DCHECK_FORMAT >& make.log
+ make all OPTIMIZE=-O\ -DCHECK_FORMAT\ -Wall\ -Wno-unused\
+ -Wno-uninitialized >>& make.log
+ perl -nwe 'print if /^\S+:/ and not /^make\b/' make.log
=back