I'm being anal again. Here's an update to docs/running.pod to better
reflect the current state (both the test_parrot and assemble.pl
improvements, plus documentation of a few more things.) And also a
speling fiks s/POST_MORTERM/POST_MORTEM/.
I could also replace some "perl foo" calls with "./foo" if someone
wanted to set the executable flag in CVS on assemble.pl, optimize.pl,
etc.
Index: docs/running.pod
===================================================================
RCS file: /home/perlcvs/parrot/docs/running.pod,v
retrieving revision 1.2
diff -p -u -b -r1.2 running.pod
--- docs/running.pod 22 Jan 2002 23:57:15 -0000 1.2
+++ docs/running.pod 30 Jan 2002 20:31:32 -0000
@@ -11,10 +11,10 @@ them and modify this document accordingl
Converts a Parrot Assembly file to Parrot ByteCode.
- assemble.pl foo.pasm > foo.pbc
+ perl assemble.pl foo.pasm > foo.pbc
-Usage information: no usage message available. There is some amount of
-malformed POD visible by running C<perldoc -F Parrot/Assembler.pm>.
+Usage information: C<assemble.pl -h>. Detailed documentation on the
+underlying module can be read with C<perldoc -F lib/Parrot/Assembler.pm>.
=item C<test_parrot>
@@ -52,7 +52,8 @@ Usage information: none available.
=item C<pdump>
-Does something. Use it by running
+Causes a segmentation fault and dumps core. (Not its intention,
+despite the name!) Use it by running
something
@@ -64,7 +65,7 @@ Converts a bytecode file to a native .c
perl pbc2c.pl foo.pbc > foo.c
-Usage information: C<perldoc -F pbc2c.pl>
+Usage information (and malformed pod error message): C<perldoc -F pbc2c.pl>
No documentation is available for compiling the .c file to a binary.
This works, but produces a binary that crashes:
@@ -72,5 +73,26 @@ This works, but produces a binary that c
./assemble.pl examples/assembly/life.pasm > life.pbc
perl pbc2c.pl life.pbc > life.c
ls **/*.o | egrep -v 'pdump|test_main' | xargs gcc -Iinclude -o life life.c -lm -ldl
+
+=item B<tests>
+
+C<make test> will compile anything that needs to be compiled and run
+all standard regression tests. To look at a test more closely, run the
+appropriate test file in the t/ directory:
+
+ perl -Ilib t/op/basic.t
+
+To keep a copy of all of the test C<.pasm> and C<.pbc> files
+generated, set the environment variable POST_MORTEM to 1:
+
+ POSTMORTEM=1 perl -Ilib t/op/basic.t
+ ls t/op/basic*
+
+To run tests with a different dispatcher, edit
+C<$Parrot::Config::PConfig{test_prog}> in lib/Parrot/Config.pm:
+
+ 'test_prog' => 'test_parrot -P',
+
+and then use any of the above methods for running tests.
=back
Index: lib/Parrot/Test.pm
===================================================================
RCS file: /home/perlcvs/parrot/lib/Parrot/Test.pm,v
retrieving revision 1.13
diff -p -u -b -r1.13 Test.pm
--- lib/Parrot/Test.pm 30 Jan 2002 11:42:44 -0000 1.13
+++ lib/Parrot/Test.pm 30 Jan 2002 20:31:32 -0000
@@ -81,7 +81,7 @@ foreach my $func ( keys %Test_Map ) {
my $meth = $Test_Map{$func};
my $pass = $Builder->$meth( $prog_output, $output, $desc );
- unless($ENV{POSTMORTERM}) {
+ unless($ENV{POSTMORTEM}) {
foreach my $i ( $as_f, $by_f, $out_f ) {
unlink $i;
}