On Sat, Mar 30, 2002 at 02:12:46AM -0800, Brent Dax wrote:
> If you have a Unix box and ten spare minutes, please apply this to a
> fresh checkout of Parrot, run 'make test', and tell me how well it
> works.
FreeBSD did not enjoy it:
0 Patch did not apply cleanly:
Patching file Makefile.in using Plan A...
Hunk #1 succeeded at 112.
Hunk #2 failed at 143.
I thought I managed to apply that bit by hand
1: use warnings; is not 5.005_03 safe:
$ make test
/usr/bin/perl vtable_h.pl
/usr/bin/perl make_vtable_ops.pl > vtable.ops
/usr/bin/perl pccw.pl --args="C" core_ops.c core.ops io.ops rx.ops vtable.ops
Can't locate warnings.pm in @INC (@INC contains: /usr/libdata/perl/5.00503/mach
/usr/libdata/perl/5.00503 /usr/local/lib/perl5/site_perl/5.005/i386-freebsd
/usr/local/lib/perl5/site_perl/5.005 .) at pccw.pl line 8.
BEGIN failed--compilation aborted at pccw.pl line 8.
*** Error code 2
So I stopped using 5.005_03 and switched to 5.7.3. After a reconfigure:
$ make test
/usr/local/bin/perl5.7.3 vtable_h.pl
/usr/local/bin/perl5.7.3 pccw.pl --args="C" core_ops.c core.ops io.ops rx.ops
vtable.ops
Use of uninitialized value in hash element at pccw.pl line 35.
cc -o --args=C -Wl,-E -L/usr/local/lib core_ops.c core.ops io.ops rx.ops vtable.ops
cc: core_ops.c: No such file or directory
/usr/local/bin/perl5.7.3 pccw.pl --args="CPrederef" core_ops_prederef.c core.ops
io.ops rx.ops vtable.ops
Use of uninitialized value in hash element at pccw.pl line 35.
cc: core_ops_prederef.c: No such file or directory
cc -DHAS_FPSETMASK -DHAS_FLOATINGPOINT_H -fno-strict-aliasing -I/usr/local/include
-Wall -Wstrict-prototypes -Wmissing-prototypes -Winline -Wshadow -Wpointer-arith
-Wcast-qual -Wcast-align -Wwrite-strings -Wconversion -Waggregate-return -Winline -W
-Wno-unused -Wsign-compare -I./include -o interpreter.o -c interpreter.c
interpreter.c:15: parrot/oplib/core_ops.h: No such file or directory
<more errors about core_ops.c being missing, but the build doesn't fail. Why?)
cc -DHAS_FPSETMASK -DHAS_FLOATINGPOINT_H -fno-strict-aliasing -I/usr/local/include
-Wall -Wstrict-prototypes -Wmissing-prototypes -Winline -Wshadow -Wpointer-arith
-Wcast-qual -Wcast-align -Wwrite-strings -Wconversion -Waggregate-return -Winline -W
-Wno-unused -Wsign-compare -I./include -o jit.o -c jit.c
In file included from jit.c:8:
include/parrot/jit.h:30: syntax error before `build_asm'
include/parrot/jit.h:30: warning: type defaults to `int' in declaration of `build_asm'
include/parrot/jit.h:30: warning: data definition has no type or storage class
jit.c:31: syntax error before `build_asm'
jit.c:33: warning: return-type defaults to `int'
jit.c: In function `build_asm':
jit.c:230: warning: cast discards qualifiers from pointer target type
jit.c:233: warning: cast discards qualifiers from pointer target type
jit.c:510: `jit_f' undeclared (first use in this function)
jit.c:510: (Each undeclared identifier is reported only once
jit.c:510: for each function it appears in.)
jit.c:510: syntax error before `arena_start'
jit.c:511: warning: control reaches end of non-void function
cc -o parrot -Wl,-E -L/usr/local/lib exceptions.o global_setup.o interpreter.o
parrot.o register.o core_ops.o core_ops_prederef.o memory.o packfile.o stacks.o
string.o encoding.o chartype.o runops_cores.o trace.o pmc.o key.o platform.o jit.o
resources.o rx.o rxstacks.o embed.o warnings.o misc.o io/io.o io/io_stdio.o
io/io_unix.o io/io_win32.o classes/default.o classes/array.o classes/perlint.o
classes/perlstring.o classes/perlnum.o classes/perlarray.o classes/perlundef.o
classes/perlhash.o classes/parrotpointer.o classes/intqueue.o encodings/singlebyte.o
encodings/utf8.o encodings/utf16.o encodings/utf32.o chartypes/unicode.o
chartypes/usascii.o test_main.o -lm -lc -lcrypt -lutil
cc: interpreter.o: No such file or directory
cc: core_ops.o: No such file or directory
cc: core_ops_prederef.o: No such file or directory
cc: jit.o: No such file or directory
/usr/local/bin/perl5.7.3 t/harness
the tests start bad:
t/op/basic..........NOK 2# Failed test (t/op/basic.t at line 11)
# got: ''
# expected: '1'
t/op/basic..........NOK 3# Failed test (t/op/basic.t at line 16)
# got: ''
# expected: 'Parrot flies'
t/op/basic..........NOK 4# Failed test (t/op/basic.t at line 21)
# got: ''
# expected: 'Parrot flies'
t/op/basic..........NOK 5# Failed test (t/op/basic.t at line 26)
# got: ''
# expected: 'Parrot flies'
t/op/basic..........NOK 6# Failed test (t/op/basic.t at line 31)
# got: ''
# expected: '42'
t/op/basic..........NOK 7# Failed test (t/op/basic.t at line 40)
# got: ''
# expected: '42
# 1234
# '
t/op/basic..........NOK 8# Failed test (t/op/basic.t at line 72)
# got: ''
# expected: 'start
# lab 1
# done
# '
# Looks like you failed 7 tests of 8.
t/op/basic..........dubious
Test returned status 7 (wstat 1792, 0x700)
DIED. FAILED tests 2-8
Failed 7/8 tests, 12.50% okay
Not sure what wstat 0x700 is.
$ kill -l
1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL
5) SIGTRAP 6) SIGABRT 7) SIGEMT 8) SIGFPE
9) SIGKILL 10) SIGBUS 11) SIGSEGV 12) SIGSYS
13) SIGPIPE 14) SIGALRM 15) SIGTERM 16) SIGURG
17) SIGSTOP 18) SIGTSTP 19) SIGCONT 20) SIGCHLD
21) SIGTTIN 22) SIGTTOU 23) SIGIO 24) SIGXCPU
25) SIGXFSZ 26) SIGVTALRM 27) SIGPROF 28) SIGWINCH
29) SIGINFO 30) SIGUSR1 31) SIGUSR2
so is that an exit on signal 7?
The summary is:
Failed Test Stat Wstat Total Fail Failed List of Failed
-------------------------------------------------------------------------------
t/op/basic.t 7 1792 8 7 87.50% 2-8
t/op/bitwise.t 15 3840 15 15 100.00% 1-15
t/op/debuginfo.t 4 1024 4 4 100.00% 1-4
t/op/hacks.t 1 256 1 1 100.00% 1
t/op/ifunless.t 6 1536 6 6 100.00% 1-6
t/op/integer.t 32 8192 32 32 100.00% 1-32
t/op/interp.t 1 256 1 1 100.00% 1
t/op/macro.t 8 2048 9 8 88.89% 1-4 6-9
t/op/number.t 31 7936 31 31 100.00% 1-31
t/op/rx.t 25 6400 27 25 92.59% 1-16 18-26
t/op/stacks.t 17 4352 18 17 94.44% 1-17
t/op/string.t 64 16384 64 64 100.00% 1-64
t/op/time.t 4 1024 4 4 100.00% 1-4
t/op/trans.t 18 4608 18 18 100.00% 1-18
t/pmc/perlstring.t 7 1792 8 7 87.50% 1-4 6-8
t/pmc/pmc.t 55 14080 56 55 98.21% 1-32 34-56
20 subtests skipped.
Failed 16/19 test scripts, 15.79% okay. 295/316 subtests failed, 6.65% okay.
So some tests passed :-)
But most seemed to fail by crashing.
Nicholas Clark
--
Even better than the real thing: http://nms-cgi.sourceforge.net/