Re: Phalanxing MakeMaker

2005-03-04 Thread Michael G Schwern
On Thu, Feb 24, 2005 at 11:47:31AM -0600, Ken Williams wrote:
 Better would be to snark it from ExtUtils::CBuilder, which has a 
 has_compiler() method.

How portable is this?  I see there's some minimal VMS and OS/2 code in
there, will it work?

If so then the MakeMaker tests can just use have_compiler() to determine
if they should run the XS tests if ExtUtils::CBuilder is installed.



Re: Phalanxing MakeMaker

2005-03-04 Thread Ken Williams
On Mar 4, 2005, at 4:07 PM, Michael G Schwern wrote:
On Thu, Feb 24, 2005 at 11:47:31AM -0600, Ken Williams wrote:
Better would be to snark it from ExtUtils::CBuilder, which has a
has_compiler() method.
How portable is this?  I see there's some minimal VMS and OS/2 code in
there, will it work?
It should work.  Though I've never actually *seen* a VMS or OS/2  
machine, so I'm not actually sure they exist.

All the cpantesters reports are pretty peachy, but there really aren't  
many exotic platforms there:

   
http://testers.cpan.org/show/ExtUtils-CBuilder.html#ExtUtils-CBuilder 
-0.09

If it doesn't work on all platforms, those are bugs that need to be  
fixed.

 -Ken


ExtUtils::CBuilder on VMS (was Re: Phalanxing MakeMaker)

2005-03-04 Thread Michael G Schwern
On Fri, Mar 04, 2005 at 04:42:38PM -0600, Ken Williams wrote:
 All the cpantesters reports are pretty peachy, but there really aren't  
 many exotic platforms there:

 http://testers.cpan.org/show/ExtUtils-CBuilder.html#ExtUtils-CBuilder 
 -0.09
 
 If it doesn't work on all platforms, those are bugs that need to be  
 fixed.

Here's my attempt at running mms test on VMS with 5.8.0.

$ perl -Iblib/lib t/01-basic.t
1..11
ok 1
ok 2
CC/DECC -Iperl_root:[lib.VMS_AXP.5_8_0.CORE] -c /Include=[]/Standard=Relaxed_ANS
I/Prefix=All/Obj=.obj /NOANSI_ALIAS/float=ieee/ieee=denorm_results /NoList -o US
ER1:[SCHWERN]compilet.obj USER1:[SCHWERN]compilet.c
%DCL-W-MAXPARM, too many parameters - reenter command with fewer parameters
%DCL-W-MAXPARM, too many parameters - reenter command with fewer parameters
error building USER1:[SCHWERN]compilet.obj from 'USER1:[SCHWERN]compilet.c' at b
lib/lib/ExtUtils/CBuilder/Base.pm line 65.
not ok 3
# Failed test 3 in t/01-basic.t at line 14
ok 4
ok 5
CC/DECC -Iperl_root:[lib.VMS_AXP.5_8_0.CORE] -c /Include=[]/Standard=Relaxed_ANS
I/Prefix=All/Obj=.obj /NOANSI_ALIAS/float=ieee/ieee=denorm_results /NoList -o [.
t]compilet.obj [.t]compilet.c
%DCL-W-MAXPARM, too many parameters - reenter command with fewer parameters
%DCL-W-MAXPARM, too many parameters - reenter command with fewer parameters
error building [.t]compilet.obj from '[.t]compilet.c' at blib/lib/ExtUtils/CBuil
der/Base.pm line 65.
%RMS-E-FNF, file not found

$ perl -Iblib/lib t/02-link.t
1..5
ok 1
ok 2
CC/DECC -Iperl_root:[lib.VMS_AXP.5_8_0.CORE] -c /Include=[]/Standard=Relaxed_ANS
I/Prefix=All/Obj=.obj /NOANSI_ALIAS/float=ieee/ieee=denorm_results /NoList -o [.
t]compilet.obj [.t]compilet.c
%DCL-W-MAXPARM, too many parameters - reenter command with fewer parameters
%DCL-W-MAXPARM, too many parameters - reenter command with fewer parameters
error building [.t]compilet.obj from '[.t]compilet.c' at blib/lib/ExtUtils/CBuil
der/Base.pm line 65.
%RMS-E-FNF, file not found


There's some assumptions there which aren't going to fly.  Pretty much
anything of the -foo form is likely to be wrong on VMS.  Looks like most
of ExtUtils::CBuilder::Base-compile() will have to be overridden.  You
can probably figure it out from ExtUtils::MM_VMS though it won't be pretty.

And at this point I kick this over to the vmsperl folks.