Folks, so there was this YAPC::EU thingie at Birmingham, UK, where someone (I think it was vaxman.de) came up with the idea of trying to build Parrot on VMS. As the only VMS system in reach was the Simh-based VMS VAX 7.3 (with DECset) on my WinXP notebook, I started with a build of Perl 5.8.8. This got me totally occupied for the two days remaining, so I didn't even got the Parrot build started...
Here are my findings: After defining a rooted logical to be able to unpack to dev:[000000], and fixing two bugs in CONFIGURE.COM and VMS.C (how could this kit ever build, even on ALpha?), the build went smoothly. MMS TEST choked on 24 tests (more on that later). MMS INSTALL would deep recurse until I created PERL_ROOT:[000000] by hand. After that: $ perl "-V" Summary of my perl5 (revision 5 version 8 subversion 8) configuration: Platform: osname=VMS, osvers=V7.3, archname=VMS_VAX uname='VMS simvax V7.3 VAXserver 3900 Series' config_args='-des' hint=none, useposix=false, d_sigaction=define usethreads=undef use5005threads=undef useithreads=undef usemultiplicity=undef useperlio=define d_sfio=undef uselargefiles=undef usesocks=undef use64bitint=undef use64bitall=undef uselongdouble=undef usemymalloc=undef, bincompat5005=undef Compiler: cc='CC/DECC', ccflags ='/Include=[]/Standard=Relaxed_ANSI/Prefix=All/Obj=.obj ', optimize='/NoList', cppflags='undef' ccversion='60090001', gccversion='', gccosandvers='undef' intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234 d_longlong=undef, longlongsize=0, d_longdbl=define, longdblsize=8 ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='int', lseeksize=4 alignbytes=8, prototype=define Linker and Libraries: ld='Link/nodebug', ldflags ='/NoTrace/NoMap' libpth=/sys$share /sys$library libs= perllibs= libc=(DECCRTL), so=exe, useshrplib=undef, libperl=undef gnulibc_version='undef' Dynamic Linking: dlsrc=dl_vms.c, dlext=exe, d_dlsymun=undef, ccdlflags='' cccdlflags='', lddlflags='/Share' Characteristics of this PERLSHR image: Compile-time options: DEBUGGING PERL_MALLOC_WRAP USE_PERLIO Built under VMS Compiled at Aug 30 2006 21:09:18 %ENV: PERLSHR="PERL_ROOT:[000000]PERLSHR.EXE" PERL_ROOT="SIMVAX$DUA0:[TEMP.PERL-5_8_8_ROOT.]" @INC: perl_root:[lib.VMS_VAX.5_8_8] perl_root:[lib] perl_root:[lib.site_perl.VMS_VAX] perl_root:[lib.site_perl] /perl_root/lib/site_perl . $ Wooohooo! Great! Regarding the test failures (my comments in [..] - I really didn't look too deep (yet)): t/io/fs...................................FAILED at test 41 not ok 41 - rename on directories [ok if run directly?!] t/op/arith................................FAILED--unexpected output at test 144 145 # SKIP -- the IEEE infinity model is unavailable in this configuration. [with that output, regarded as a failure, not as a skipped test] t/op/local................................FAILED at test 60 not ok 60 [the comment says: "local() should preserve the existenceness of tied hash elements ... now try the same for %SIG"] t/op/pack.................................FAILED--unexpected output at test 0 [perl crash with] %SYSTEM-F-FLTOVF_F, arithmetic fault, floating overflow at PC=0016CA0D, PSL=03C00000 t/op/read.................................FAILED at test 1 not ok 1 not ok 2 [perl seems to not be able to seek/read read.t itself; the remaining 2561 tests pass] t/op/stat.................................FAILED at test 33 not ok 33 - -o ["$tmpfile not owned by effective uid"?!; the remaining 52 tests pass] ext/Devel/PPPort/t/ppphtest...............FAILED--unexpected output at test 0 find_perl: cannot find simvax$dua0:[temp.][perl-5_8_8.t]perl.;1.exe \ from simvax$dua0:[temp.][perl-5_8_8.t]perl.;1 at [-.ext.devel.ppport.t]ppphtest.t line 196. [BUG in [-.ext.devel.ppport.parts.inc]ppphtest.; once fixed, all tests pass] ext/Encode/t/enc_data.....................FAILED at test 2 not ok 2 [encoding euc-jp; probably has something to do with unpacking .tar.gz on Windows & zipping it, then unzipping on VMS] ext/List/Util/t/p_tainted.................FAILED--no leader found no leader found [BUG; needs VMS specific treatment, or unixify; once fixed, all tests pass] ext/List/Util/t/weak......................FAILED--unexpected output at test 7 [Verbose test output:] # WKED ok 7 # VALS: HASH Dest=HASH(0x3b5c8c) [test at this point declared a failure] [Run standalone passes all tests; output:] # WKED ok 7 # VALS: HASH Dest=HASH(0x3b5040) SELF REF(0x3b558c) Y REF(0x39c554) FLAG: REF(0x3b5010) # VPRINT ext/Time/HiRes/t/HiRes....................FAILED at test 17 ok 17 # Skip: your select() may get restarted by your SIGALRM (or just retry test) [all tests pass if run standalone] lib/Config................................FAILED at test 86 not ok 86 - sig_num_init size [could this have to do with the patch to Configure.com?] lib/ExtUtils/t/Constant...................FAILED at test 23 not ok 23 # MMS test failed: 1024 lib/ExtUtils/t/FIRST_MAKEFILE.............FAILED at test 4 not ok 4 - FIRST_MAKEFILE honored lib/ExtUtils/t/PL_FILES...................FAILED at test 3 [run standalone this yields:] not ok 3 # Failed test in [-.lib.extutils.t]pl_files.t at line 38. # got: '1024' # expected: '0' # cp bar_pm.pl [.blib.lib.pl_files]bar_pm.pl # cp single.pl [.blib.lib.pl_files]single.pl # cp [.lib.pl]foo.pm [.blib.lib.pl]foo.pm # cp multi.pl [.blib.lib.pl_files]multi.pl # MCR [--]perl.exe "-I[--.lib]" "-I[--.lib]" "-I[.blib.arch]" "-I[.blib.lib]" Bar_pm.PL [.[.blib.lib].PL]Bar.pm # file specification syntax error at bar_pm.pl line 12. # %RMS-F-SYN, file specification syntax error # %MMS-F-ABORT, For target [.[.BLIB.LIB].PL]BAR.PM, CLI returned abort status: %X000186D4. # -RMS-F-SYN, file specification syntax error lib/Math/BigInt/t/bare_mbi................FAILED at test 2829 [run standalone this yields:] not ok 2829 # Test 2829 got: "1701411834604692e+23" (../lib/math/bigint/t/bigintpm.inc at line 433) # Expected: "1e+129" lib/Math/BigInt/t/bigintpm................FAILED at test 2829 [same as BigInt/t/bare_mbi test failure] lib/Math/BigInt/t/bigroot.................FAILED--unexpected output at test 0 # Try: Math::BigFloat 2->bpow(120)->broot(8,undef) == 32768: %SYSTEM-F-FLTOVF_F, arithmetic fault, floating overflow at PC=001C6444, PSL=03C00000 lib/Math/BigInt/t/mbi_rand................FAILED--unexpected output at test 28 ok 28 [???] lib/Math/BigInt/t/sub_mbi.................FAILED at test 2829 [same as BigInt/t/bare_mbi test failure] lib/Test/Harness/t/test-harness...........FAILED--unexpected output at test 14 ok 14 - bignum - Got proper warnings Out of memory! lib/Test/Simple/t/is_deeply_fail..........FAILED at test 73 not ok 73 - right diagnostic # Failed test ' right diagnostic' # in [-.lib.test.simple.t]is_deeply_fail.t at line 359. # '# Failed test in [-.lib.test.simple.t]is_deeply_fail.t at line 357. # # Structures begin differing at: # # $got = GLOB(0x38b2c4) # # $expected = GLOB(0x3835cc) # ' # doesn't match '/# Failed test in [-.lib.test.simple.t]is_deeply_fail.t at line 357. # # Structures begin differing at: # # \$got = GLOB\(0x[0-9a-f]+\) # # \$expected = GLOB\(0x[0-9a-f]+\) # /' lib/Unicode/UCD...........................FAILED at test 1 not ok 1 - LATIN CAPITAL LETTER A # Failed test 'LATIN CAPITAL LETTER A' # in [-.lib.unicode]ucd.t at line 29. # got: undef # expected: '0041' [...lots of test failures...] lib/vmsish................................FAILED at test 22 ok 22 - (time) UTC: 1157266715 VMS: 1157273915 [???] Now I've begun to tweak Parrot (I got the latest dist right off Leo Toetsch's notebook). Looks quite good so far - not too many patches required. cu, Martin -- | Martin Vorlaender | OpenVMS rules! Microsoft isn't the Borg: | work: [EMAIL PROTECTED] the Borg have proper | http://www.pdv-systeme.de/users/martinv/ networking. | home: [EMAIL PROTECTED]
perl-5.8.8-vms.patch
Description: perl-5.8.8-vms.patch