----- Forwarded message from [EMAIL PROTECTED] -----

Subject: Recent experimentation with perl@15489 and MM 5.52_01
To: [EMAIL PROTECTED]
Cc: [EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED]
From: [EMAIL PROTECTED]
X-MIMETrack: Serialize by Router on FactnotesSTM2/FactSet(Release 5.0.9 |November 16, 
2001) at
 03/26/2002 10:05:29 AM

Greetings,

I should point out that in order to get perl@15489 to build I had
to patch ext/Encode/Encode.xs but I have reason to believe
that the correct fix will be put in soon - hopefully before release
of 5.8.0.

I did run "mms install" with the kit then tried running the
set up for the ExtUtils-MakeMaker-5.52_01 which did not
look good, no doubt owing to the trouble
with the MakeMaker that ships with perl@15489.

The build looked like the following (sic):

$ perl makefile.pl
Checking if your kit is complete...
Looks good
Writing Descrip.MMS for ExtUtils::MakeMaker
$ mms
%MMS-W-MBREDEFILL, Illegal attempt to redefine macro NAME

MCR perl_root:[000000]perl.exe "-Iperl_root:[lib]" "-MExtUtils::Install" -e
"pm_
to_blib({split(' ',<STDIN>)},'[.blib.lib.auto]','')" <.MM_tmp
cp [.lib.extutils]mm_vms.pm [.blib.lib.extutils]mm_vms.pm
cp [.lib.extutils]command.pm [.blib.lib.extutils]command.pm
cp [.lib.extutils]mm_cygwin.pm [.blib.lib.extutils]mm_cygwin.pm
cp [.lib.extutils]mm_dos.pm [.blib.lib.extutils]mm_dos.pm
cp [.lib.extutils]mm_nw5.pm [.blib.lib.extutils]mm_nw5.pm
cp [.lib.extutils]install.pm [.blib.lib.extutils]install.pm
cp [.lib.extutils]manifest.skip [.blib.lib.extutils]manifest.skip
cp [.lib.extutils.liblist]kid.pm [.blib.lib.extutils.liblist]kid.pm
cp [.lib.extutils]packlist.pm [.blib.lib.extutils]packlist.pm
cp [.lib.extutils.command]mm.pm [.blib.lib.extutils.command]mm.pm
cp [.lib.extutils]mm_win32.pm [.blib.lib.extutils]mm_win32.pm
cp [.lib.extutils]mksymlists.pm [.blib.lib.extutils]mksymlists.pm
cp [.lib.extutils]manifest.pm [.blib.lib.extutils]manifest.pm
cp [.lib.extutils]mm_win95.pm [.blib.lib.extutils]mm_win95.pm
cp [.lib.extutils]mm_uwin.pm [.blib.lib.extutils]mm_uwin.pm
cp [.lib.extutils]mm_beos.pm [.blib.lib.extutils]mm_beos.pm
cp [.lib.extutils]makemaker.pm [.blib.lib.extutils]makemaker.pm
cp [.lib.extutils]mm_any.pm [.blib.lib.extutils]mm_any.pm
cp [.lib.extutils]mkbootstrap.pm [.blib.lib.extutils]mkbootstrap.pm
cp [.lib.extutils]mm.pm [.blib.lib.extutils]mm.pm
cp [.lib.extutils]testlib.pm [.blib.lib.extutils]testlib.pm
cp [.lib.extutils]liblist.pm [.blib.lib.extutils]liblist.pm
cp [.lib.extutils]mm_unix.pm [.blib.lib.extutils]mm_unix.pm
cp [.lib.extutils]my.pm [.blib.lib.extutils]my.pm
cp [.lib.extutils]mm_os2.pm [.blib.lib.extutils]mm_os2.pm
cp [.lib.extutils]installed.pm [.blib.lib.extutils]installed.pm



[total of more than 37 blank lines suppressed]

Copy/NoConfirm [.bin]instmodsh [.blib.script]instmodsh
%MMS-F-GWKNOACTS, Actions to update MAKEMAKERDFLT are unknown.
$

The last error message is a VMS make utility fatal error,
which points up the fact that the hack to force the "all" target via:

http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2002-03/msg01168.html

did not actually solve the target ordering bug - it merely enshrined it
in code.  As it stands the perl@15489 kit will have to document
for VMS perl administrators that they must now build modules via:

   perl Makefile.PL
   mms all
   mms test
   mms install

Since the "all" target is now required so as to avoid the fatal MMS error.

Here is what "mms test" looked like with the 5.52_01 kit:

$ mms test
%MMS-W-MBREDEFILL, Illegal attempt to redefine macro NAME

MCR perl_root:[000000]perl.exe "
-IDKB400:[PPRYMMER.EXTUTILS-MAKEMAKER-5_52_01]li
b" "-MExtUtils::testlib" "-MExtUtils::Command::MM" "-e" "test_harness(0)"
t/*.t
t/basic..........

#     Failed test (t/basic.t at line 60)
#          got: '256'
#     expected: '0'
#     Failed test (t/basic.t at line 63)
#          got: '1024'
#     expected: '0'
# %MMS-W-MBREDEFILL, Illegal attempt to redefine macro NAME
# MCR perl_root:[000000]perl.exe "-Iperl_root:[lib]" -e "use File::Path;
@dirs =
 map(VMS::Filespec::unixify($_),@ARGV); rmtree(\@dirs,0,0)"
Big-Fat-Dummy-0_01
# MCR perl_root:[000000]perl.exe "-MExtUtils::Manifest=manicopy,maniread"
        -e "manicopy(maniread(),'Big-Fat-Dummy-0_01', 'best');"
# mkdir Big-Fat-Dummy-0_01
# mkdir Big-Fat-Dummy-0_01/lib
# mkdir Big-Fat-Dummy-0_01/lib/big
# mkdir Big-Fat-Dummy-0_01/lib/big/fat
# mkdir Big-Fat-Dummy-0_01/t
# startdir = F$Environment("Default")
# Set Default [.Big-Fat-Dummy-0_01]
# MCR perl_root:[000000]perl.exe Makefile.PL
# Checking if your kit is complete...
# Looks good
# Writing Descrip.MMS for Big::Fat::Dummy
# MMS
# %MMS-W-MBREDEFILL, Illegal attempt to redefine macro NAME
# MCR perl_root:[000000]perl.exe "-Iperl_root:[lib]" "-MExtUtils::Install"
-e "p
m_to_blib({split(' ',<STDIN>)},'[.blib.lib.auto]','')" <.MM_tmp
# cp [.lib.big.fat]dummy.pm [.blib.lib.big.fat]dummy.pm
# %MMS-F-GWKNOACTS, Actions to update MAKEMAKERDFLT are unknown.
# %MMS-F-ABORT, For target DISTTEST, CLI returned abort status: %X10EE805C.
#     Failed test (t/basic.t at line 66)
#          got: '256'
#     expected: '0'
# %MMS-W-MBREDEFILL, Illegal attempt to redefine macro NAME
# MCR perl_root:[000000]perl.exe -e "foreach (@ARGV) { 1 while ( -d $_ ?
rmdir $
_ : unlink $_)}" *.Map *.Dmp *.Lis *.cpp *.exe *.obj *.olb *.Opt  Dummy.bso
..MM_
Tmp
# MCR perl_root:[000000]perl.exe "-Iperl_root:[lib]" -e "use File::Path;
@dirs =
 map(VMS::Filespec::unixify($_),@ARGV); rmtree(\@dirs,0,0)"  perlmain.c
[.blib.arch.auto.Big.Fat.Dummy]extralibs.all pm_to_blib.ts
# MCR perl_root:[000000]perl.exe "-Iperl_root:[lib]" -e "use File::Path;
@dirs =
 map(VMS::Filespec::unixify($_),@ARGV); rmtree(\@dirs,0,0)" extralibs.ld
blib Ma
keaperl.MMS
# MCR perl_root:[000000]perl.exe "-Iperl_root:[lib]" -e "use File::Path;
@dirs =
 map(VMS::Filespec::unixify($_),@ARGV); rmtree(\@dirs,0,0)"
[.blib.lib.auto.Big.
Fat.Dummy] [.blib.arch.auto.Big.Fat.Dummy]
# MCR perl_root:[000000]perl.exe "-Iperl_root:[lib]" -e "use File::Path;
@dirs =
 map(VMS::Filespec::unixify($_),@ARGV); rmtree(\@dirs,0,0)"
Big-Fat-Dummy-0_01
# MCR perl_root:[000000]perl.exe -e "foreach (@ARGV) { 1 while ( -d $_ ?
rmdir $
_ : unlink $_)}"  [.blib.lib.big.fat]dummy.pm
# MCR perl_root:[000000]perl.exe -e "foreach (@ARGV) { 1 while ( -d $_ ?
rmdir $
_ : unlink $_)}" Descrip.MMS_old Descrip.MMS
# Looks like you failed 3 tests of 11.

%SYSTEM-F-ABORT, abort

dubious
        Test returned status 44 (wstat 1024, 0x400)
                (VMS status is 44)
DIED. FAILED tests 9-11
        Failed 3/11 tests, 72.73% okay
t/command........

ok
t/hints..........
ok
t/installed......
#     Failed test (t/installed.t at line 59)
#          got: '0'
#     expected: '1'
#     Failed test (t/installed.t at line 168)
#          got: '0'
#     expected: '1'
#     Failed test (t/installed.t at line 169)
#                   undef
#     doesn't match '(?-xism:foobar[>\]]?$)'
# Looks like you failed 3 tests of 42.

%SYSTEM-F-ABORT, abort

dubious
        Test returned status 44 (wstat 1024, 0x400)
                (VMS status is 44)
DIED. FAILED tests 9, 29-30
        Failed 3/42 tests, 92.86% okay (-10 skipped tests: 29 okay, 69.05%)
t/manifest.......

ok
t/mkbootstrap....

ok
t/mm_beos........

skipped: This is not BeOS
t/mm_cygwin......

skipped: This is not cygwin
t/mm_os2.........

skipped: This is not OS/2
t/mm_unix........

skipped: Non-Unix platform
t/mm_vms.........

ok
t/mm_win32.......
skipped: This is not Win32
t/packlist.......

ok
t/testlib........

ok
Failed Test   Stat Wstat Total Fail  Failed  List of Failed
-------------------------------------------------------------------------------
t/basic.t       44  1024    11    3  27.27%  9-11
t/installed.t   44  1024    42    3   7.14%  9 29-30
5 tests and 10 subtests skipped.
Failed 2/14 test scripts, 85.71% okay. 6/213 subtests failed, 97.18% okay.
%SYSTEM-F-ABORT, abort
%MMS-F-ABORT, For target TEST_DYNAMIC, CLI returned abort status:
%X0000002C.
-SYSTEM-F-ABORT, abort

As a last test of it, if I install the 5.52_01 MakeMaker and then turn
around and
ask it to build a Makefile I see:

$ mms install
%MMS-W-MBREDEFILL, Illegal attempt to redefine macro NAME







[more than 30 blank lines of output suppressed - what is goin on here?]






MCR perl_root:[000000]perl.exe "-Iperl_root:[lib]" "-MExtUtils::Install" -e
"ins
tall({split(' ',<STDIN>)},1);" <.MM_tmp
Installing perl_root:[lib.extutils]command.pm
Installing perl_root:[lib.extutils]install.pm
Installing perl_root:[lib.extutils]installed.pm
Installing perl_root:[lib.extutils]liblist.pm
Installing perl_root:[lib.extutils]makemaker.pm
Installing perl_root:[lib.extutils]manifest.pm
Installing perl_root:[lib.extutils]manifest.skip
Skipping perl_root:[lib.extutils]mkbootstrap.pm (unchanged)
Installing perl_root:[lib.extutils]mksymlists.pm
Installing perl_root:[lib.extutils]mm.pm
Installing perl_root:[lib.extutils]mm_any.pm
Installing perl_root:[lib.extutils]mm_beos.pm
Installing perl_root:[lib.extutils]mm_cygwin.pm
Installing perl_root:[lib.extutils]mm_dos.pm
Installing perl_root:[lib.extutils]mm_nw5.pm
Installing perl_root:[lib.extutils]mm_os2.pm
Installing perl_root:[lib.extutils]mm_unix.pm
Installing perl_root:[lib.extutils]mm_uwin.pm
Installing perl_root:[lib.extutils]mm_vms.pm
Installing perl_root:[lib.extutils]mm_win32.pm
Installing perl_root:[lib.extutils]mm_win95.pm
Installing perl_root:[lib.extutils]my.pm
Installing perl_root:[lib.extutils]packlist.pm
Installing perl_root:[lib.extutils]testlib.pm
Installing perl_root:[lib.extutils.liblist]kid.pm
Installing perl_root:[lib.extutils.command]mm.pm
Installing perl_root:[man.man3]extutils__command.rno
Installing perl_root:[man.man3]extutils__command__mm.rno
Installing perl_root:[man.man3]extutils__install.rno
Installing perl_root:[man.man3]extutils__installed.rno
Installing perl_root:[man.man3]extutils__liblist.rno
Installing perl_root:[man.man3]extutils__makemaker.rno
Installing perl_root:[man.man3]extutils__manifest.rno
Installing perl_root:[man.man3]extutils__mkbootstrap.rno
Installing perl_root:[man.man3]extutils__mksymlists.rno
Installing perl_root:[man.man3]extutils__mm.rno
Installing perl_root:[man.man3]extutils__mm_any.rno
Installing perl_root:[man.man3]extutils__mm_beos.rno
Installing perl_root:[man.man3]extutils__mm_cygwin.rno
Installing perl_root:[man.man3]extutils__mm_dos.rno
Installing perl_root:[man.man3]extutils__mm_os2.rno
Installing perl_root:[man.man3]extutils__mm_unix.rno
Installing perl_root:[man.man3]extutils__mm_uwin.rno
Installing perl_root:[man.man3]extutils__mm_vms.rno
Installing perl_root:[man.man3]extutils__mm_win32.rno
Installing perl_root:[man.man3]extutils__my.rno
Installing perl_root:[man.man3]extutils__packlist.rno
Installing perl_root:[man.man3]extutils__testlib.rno
Installing perl_root:[utils]instmodsh.
mkdir perl_root/lib/VMS_AXP/5_7_3//auto/[: file specification syntax error
at /p
erl_root/lib/ExtUtils/Install.pm line 165
%SYSTEM-F-ABORT, abort
%MMS-F-ABORT, For target PURE_PERL_INSTALL, CLI returned abort status:
%X0000002
C.
-SYSTEM-F-ABORT, abort
$

And at last let's see if it can build itself, preferably without fatal
errors:

$ perl Makefile.PL
Checking if your kit is complete...
Looks good
Writing Descrip.MMS for ExtUtils::MakeMaker
$ mms
%MMS-W-MBREDEFILL, Illegal attempt to redefine macro NAME

MCR perl_root:[000000]perl.exe "-Iperl_root:[lib]" "-MExtUtils::Install" -e
"pm_
to_blib({split(' ',<STDIN>)},'[.blib.lib.auto]','')" <.MM_tmp
cp [.lib.extutils]mm_vms.pm [.blib.lib.extutils]mm_vms.pm

[many blank lines suppressed]

Copy/NoConfirm [.bin]instmodsh [.blib.script]instmodsh
%MMS-F-GWKNOACTS, Actions to update MAKEMAKERDFLT are unknown.
$

In other words, similar output to the above.

In summary: the bug of not putting all at the top of the appropriate target
ordering
is still there and not addressed by the makemakerdflt pseudo target.  If
that bug cannot
be fixed then perl should have at least the following patch applied so as
to
give perl administrators a fighting chance:


$ gdiff -u pod/perlmodinstall.pod;-1 pod/perlmodinstall.pod
--- pod/perlmodinstall.pod;-1   Mon Mar 25 16:48:13 2002
+++ pod/perlmodinstall.pod      Tue Mar 26 10:02:52 2002
@@ -328,7 +328,7 @@

 Now you're ready to build:

-    mms
+    mms all
     mms test

 Substitute C<mmk> for C<mms> above if you're using MMK.
End of doc patch.

Actually since the ext/util/make_ext script still has to employ the all
target in order to build perl's own extensions I suspect that the need to
use the "all" target explicitly is much more widespread than believed.

$ search [.ext.util]make_ext. all
passthru="$*" # allow extra macro=value to be passed through
        echo '  in your call to make_ext.  See ext/util/make_ext for
details.'
# The Perl Makefile.SH will expand all extensions to
            # convert 'static' or 'dynamic' into 'all LINKTYPE=XXX'
            target=all
            target=all
            target=all
        test -f Makefile.PL && ../$depth/miniperl -I../$depth/lib
Makefile.PL IN
STALLDIRS=perl PERL_CORE=1 $passthru


Peter Prymmer














----- End forwarded message -----

-- 

Michael G. Schwern   <[EMAIL PROTECTED]>    http://www.pobox.com/~schwern/
Perl Quality Assurance      <[EMAIL PROTECTED]>         Kwalitee Is Job One
It's Ecstacy time!

Reply via email to