Re: OpenVMS V7.2-1H1 configure.pl results using the defaults

2002-04-01 Thread Michael G Schwern

On Mon, Apr 01, 2002 at 07:00:57AM -0800, Charles Bunders wrote:
> Checking some things by compiling and running another small C program (this
> could take a while):
> 
>   Building ./testparrotsizes.cfrom testparrotsizes_c.in...
> 
> #include "parrot/parrot.h"
> ..^
> %CC-F-NOINCLFILEF, Cannot find file "parrot/parrot.h" specified in #include
> directive.
> at line number 9 in file TESTPARROTSIZES.C;1
> C compiler died! at (eval 1) line 13.
> %RMS-E-FNF, file not found

This problem came up a few weeks ago.
http:[EMAIL PROTECTED]/msg08963.html

If I'm reading it correctly, it seems one can't mix Unix and VMS path
styles between your INCLUDE_DIRECTORY and header files.

So this combination will work:

CC/DECC /INCLUDE=("./include") testparrotsizes.c

#include "parrot/parrot.h"

but this will not:

CC/DECC /INCLUDE=("[.include]") testparrotsizes.c

#include "parrot/parrot.h"

which just seems wrong.  It has to be wrong, because Perl5 builds with
things like:

CC/DECC/NOANSI_ALIAS 
/Include=[]/Standard=Relaxed_ANSI/Prefix=All/Obj=.obj/NoList/float=ieee/ieee=denorm_results
 /Include=([],[.ext.dynaloader])/Object=[.EXT.DYNALOADER]DL_VMS.OBJ 
[.EXT.DYNALOADER]DL_VMS.C


Ahh, here's something I didn't notice before.  compiletestc() is
coming from hints/vms.pl.  It's different from the one in Configure.pl
most significantly in that it doesn't tell you what the command was.

Fixing that, we get:

C compiler died!  Command was 'CC/DECC 
/Standard=Relaxed_ANSI/Prefix=All/Obj=.obj/NoList/NOANSI_ALIAS/include=([.include],"/here")
 testparrotsizes.c'

now what's that "/here" thing doing there?  Taking it out doesn't fix
things.

I'm stumped.  I'll go ask on VMSperl.



-- 

Michael G. Schwern   <[EMAIL PROTECTED]>http://www.pobox.com/~schwern/
Perl Quality Assurance  <[EMAIL PROTECTED]> Kwalitee Is Job One
I'm successful because I'm lucky.   The harder I work, the luckier I get.



OpenVMS V7.2-1H1 configure.pl results using the defaults

2002-04-01 Thread Charles Bunders

Configure.pl had a few problems.  Thought I would send it to the list.  Below
this is a 'perl -"V"' if you want to know that info.

Thanks...


Parrot Version 0.0.4 Configure
Copyright (C) 2001-2002 Yet Another Society

Since you're running this script, you obviously have
Perl 5--I'll be pulling some defaults from its configuration.

Checking the MANIFEST to make sure you have a complete Parrot kit...

Okay, we found everything.  Next you'll need to answer
a few questions about your system.  Defaults are in square
brackets, and you can hit enter to accept them.  If you
don't want the default, type a new value in.  If that new
value starts with a '+', it will be concatenated to the
default value.

What C compiler do you want to use? [CC/DECC] 
How about your linker? [Link] 
What flags would you like passed to your C compiler?
[/Standard=Relaxed_ANSI/Prefix=All/Obj=.obj/NoList/NOANSI_ALIAS/include=([.incl
ude],"/here")] 
What flags would you like passed to your linker? [/NoTrace/NoMap] 
Which libraries would you like your C compiler to include? [ ] 
How big would you like integers to be? [long] 
And your floats? [double] 
What is your native opcode type? [long] 
Now I have to find out what opcode files you would like to compile into your
Parrot.

The following opcode files are available:
core.ops io.ops obscure.ops rx.ops

WARNING: Bad Things may happen if the first file on the list isn't core.ops.

WARNING: These file names will not be checked for spelling, and typing them
 wrong will force you to run Configure again.

WARNING: I worry way too much about Configure users.

Which opcode files would you like? [core.ops io.ops rx.ops] 
Determining if your C compiler is actually gcc (this could take a while):


Your C compiler is not gcc.


Probing Perl 5's configuration to determine which headers you have (this could
take a while on slow machines)...

Determining C data type sizes by compiling and running a small C program (this
could take a while):

  Building ./test.c   from test_c.in...
Figuring out what integer type we can mix with pointers...
We'll use 'unsigned int'.

Building a preliminary version of include/parrot/config.h, your Makefiles, and
other files:

  Building include/parrot/config.hfrom config_h.in...
  Building ./Makefile from Makefile.in...
Use of uninitialized value in substitution iterator at configure.pl line 811.
  Building ./classes/Makefile from classes/Makefile.in...
  Building ./docs/Makefilefrom docs/Makefile.in...
  Building ./languages/Makefile   from languages/Makefile.in...
  Building ./languages/jako/Makefile  from languages/jako/Makefile.in...
  Building ./languages/miniperl/Makefile  from
languages/miniperl/Makefile.in...
  Building ./languages/scheme/Makefilefrom languages/scheme/Makefile.in...
  Building lib/Parrot/Types.pmfrom Types_pm.in...
  Building lib/Parrot/Config.pm   from Config_pm.in...


Checking some things by compiling and running another small C program (this
could take a while):

  Building ./testparrotsizes.cfrom testparrotsizes_c.in...

#include "parrot/parrot.h"
..^
%CC-F-NOINCLFILEF, Cannot find file "parrot/parrot.h" specified in #include
directive.
at line number 9 in file TESTPARROTSIZES.C;1
C compiler died! at (eval 1) line 13.
%RMS-E-FNF, file not found





$ perl -"V"
Summary of my perl5 (revision 5.0 version 6 subversion 1) configuration:
  Platform:
osname=VMS, osvers=V7.2-1, archname=VMS_AXP
uname='VMS briana V7.2-1 AlphaStation 200 4/233'
config_args='-"des" -"Dcf_email=system"'
hint=none, useposix=false, d_sigaction=define
usethreads=undef use5005threads=undef useithreads=undef
usemultiplicity=undef
useperlio=undef d_sfio=undef uselargefiles=undef usesocks=undef
use64bitint=undef use64bitall=undef uselongdouble=undef
  Compiler:
cc='CC/DECC', ccflags
='/Include=[]/Standard=Relaxed_ANSI/Prefix=All/Obj=.obj/NoList/NOANSI_ALIAS',
optimize='',
cppflags='undef'
ccversion='60490005', gccversion='', gccosandvers='undef'
intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='int',
lseeksize=4
alignbytes=8, usemymalloc=N, prototype=define
  Linker and Libraries:
ld='Link', ldflags ='/NoTrace/NoMap'
libpth=/sys$share /sys$library
libs= 
perllibs= 
libc=(DECCRTL), so=exe, useshrplib=undef, libperl=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
  Built under VMS
  Compiled at Aug 16 2001 15:46:23
  %ENV:
PERLLIB="PERL_ROOT:[LIB]"
PERLSHR="$4$DUA1:[PERL-5_6_1]PERLSHR.EXE"
PERL_ROOT="$4$DUA1:[PERL-5_6_1.]"
  @INC:
PERL_ROOT:[LIB]
perl_root:[lib.VM

Re: [PATCH Configure.pl] (still broken) Re: OpenVMS can't getpast configure

2002-03-18 Thread Dan Sugalski

At 10:08 PM -0500 3/17/02, Michael G Schwern wrote:
>Poking around in the DECC manual, there's two problems.
>http://www.openvms.compaq.com/commercial/c/5492p004.htm#index_x_113
>
>First, its INCLUDE_DIRECTORY, not INCLUDE (although INCLUDE works).

VMS applies the shortest unique prefix rule with commands and 
switches. I think /inc would work too, but that's probably a bit too 
short for comfort.

>Second, there seems to be some confusing rules about mixing VMS and
>Unix style paths.  It seems that the style used in INCLUDE_DIRECTORY
>has to match the style used in the #include. 
>
>so this works:
>
> CC/DECC /INCLUDE=("./include") testparrotsizes.c
>
>but you might want to get independent confirmation from the vmsperl
>folks about that.

That's new. Older versions of the Dec C compiler didn't do that--the 
bit before the / was considered either a logical name or ignored. So 
you'd need a PARROT: logical to make it work. If the ./include scheme 
is OK, we'll go with that and require folks to have reasonably modern 
versions of Dec C. Given our rollout schedule, I don't consider that 
excessive.
-- 
 Dan

--"it's like this"---
Dan Sugalski  even samurai
[EMAIL PROTECTED] have teddy bears and even
   teddy bears get drunk



Re: [PATCH Configure.pl] (still broken) Re: OpenVMS can't get past configure

2002-03-17 Thread Michael G Schwern

On Sun, Mar 17, 2002 at 05:06:35PM -0800, Brent Dax wrote:
> # Checking some things by compiling and running another small C
> # program (this
> # could take a while):
> #
> #   Building ./testparrotsizes.cfrom testparrotsizes_c.in...
> #
> #
> # #include "parrot/parrot.h"
> # #include "parrot/parrot.h"
> # ..^
> # ..^
> # %CC-F-NOINCLFILEF, Cannot find file "parrot/parrot.h"
> # specified in #include directive.
> # %CC-F-NOINCLFILEF, Cannot find file "parrot/parrot.h"
> # specified in #include directive.
> # at line number 9 in file USER1:[SCHWERN.SRC.PARROT]TESTPARROTSIZES.C;1
> # at line number 9 in file USER1:[SCHWERN.SRC.PARROT]TESTPARROTSIZES.C;1
> # C compiler died! at (eval 1) line 13.
> # %RMS-E-FNF, file not found
> 
> Yikes.  Does the C compiler recognize that sort of path?  How about
> the -I switch (it may be set differently by VMS's hints file) that tells
> it to look in ./include?

main::(configure.pl:668):   compiletestc("testparrotsizes");
  DB<2> s
main::CODE(0x7a1c8c)((eval 4)[configure.pl:297]:10):
10: my $name;
  DB<2> n
main::CODE(0x7a1c8c)((eval 4)[configure.pl:297]:11):
11: $name = shift;
  DB<2> 
main::CODE(0x7a1c8c)((eval 4)[configure.pl:297]:12):
12: $name = "test" unless $name;
  DB<2> 
main::CODE(0x7a1c8c)((eval 4)[configure.pl:297]:13):
13: system("$c{cc} $c{ccflags} $name.c") and die "C compiler 
died!";
  DB<2> x "$c{cc} $c{ccflags} $name.c"
0  'CC/DECC 
/Standard=Relaxed_ANSI/Prefix=All/Obj=.obj/NoList/NOANSI_ALIAS/include=([.include],"/here")
 testparrotsizes.c'
  DB<3> use Cwd
  DB<4> x cwd
0  'USER1:[SCHWERN.SRC.PARROT]'
  DB<5> n


#include "parrot/parrot.h"
#include "parrot/parrot.h"
..^
..^
%CC-F-NOINCLFILEF, Cannot find file "parrot/parrot.h" specified in #include directive.
%CC-F-NOINCLFILEF, Cannot find file "parrot/parrot.h" specified in #include directive.
at line number 9 in file USER1:[SCHWERN.SRC.PARROT]TESTPARROTSIZES.C;3
at line number 9 in file USER1:[SCHWERN.SRC.PARROT]TESTPARROTSIZES.C;3
C compiler died! at (eval 4)[configure.pl:297] line 13.
main::__ANON__[(eval 4)[configure.pl:297]:15]('testparrotsizes') called 
Debugged program terminated.  Use q to quit or R to restart,



Poking around in the DECC manual, there's two problems.
http://www.openvms.compaq.com/commercial/c/5492p004.htm#index_x_113

First, its INCLUDE_DIRECTORY, not INCLUDE (although INCLUDE works).

Second, there seems to be some confusing rules about mixing VMS and
Unix style paths.  It seems that the style used in INCLUDE_DIRECTORY
has to match the style used in the #include.  

   Search the places specified in the /INCLUDE_DIRECTORY qualifier, if
   any. A place that can be parsed successfuly as an OpenVMS file-spec
   and that does not contain an explicit file type or version
   specification is edited to append the default header file type
   specification (".h" or ".").  
   
   A place containing a "/" character is considered to be a UNIX-style
   name. If the name in the #include directive also contains a "/"
   character that is not the first character and is not preceded by a
   "!" character (it is not an absolute UNIX-style pathname), then the
   name in the #include directive is appended to the named place,
   separated by a "/" character, before applying the decc$to_vms
   pathname translation function. The result of the decc$to_vms
   translation is then used as the filespec to try to open.

so this works:

CC/DECC /INCLUDE=("./include") testparrotsizes.c

but you might want to get independent confirmation from the vmsperl
folks about that.


-- 

Michael G. Schwern   <[EMAIL PROTECTED]>http://www.pobox.com/~schwern/
Perl Quality Assurance  <[EMAIL PROTECTED]> Kwalitee Is Job One
Not king yet



RE: [PATCH Configure.pl] (still broken) Re: OpenVMS can't get past configure

2002-03-17 Thread Brent Dax

Michael G Schwern:
# On Sun, Mar 17, 2002 at 10:13:58AM -0800, Brent Dax wrote:
# > Lines in question:
# >
# >
# > foreach(grep {/^i_/} keys %Config) {
# > $c{$_}=$Config{$_};
# > $c{headers}.=defineifdef((/^i_(.*)$/));
# > }
# >
# > I think VMS is too lame to handle the grep line.  Honestly,
# I'd rather
# > not change it to bow to a retarded OS, but apparently we
# have to.  You
# > can probably just say:
# >
# > foreach(keys %Config) {
# > next unless /^i_/;
# > $c{$_}=$Config{$_};
# > $c{headers}.=defineifdef((/^i_(.*)$/));
# > }
#
# If one wanted to do that in a memory efficient manner...
#
# --- Configure.plSun Mar 17 15:53:06 2002
# +++ Configure.pl  Sat Mar 16 15:00:00 2002
# @@ -483,9 +481,10 @@
#  # Set up HAS_HEADER_
#  #
#
# -foreach(grep {/^i_/} keys %Config) {
# -$c{$_}=$Config{$_};
# -$c{headers}.=defineifdef((/^i_(.*)$/));
# +while(my($k, $v) = each %Config) {
# +next unless $k =~ /^i_/;
# +$c{$k} = $v;
# +$c{headers} .= defineifdef(($k =~ /^i_(.*)$/));
#  }
#
#  print <<"END";
#
#
# But even with this in place it still takes forever with 5.005_03.  So
# I'll just chalk it up to a perl bug.  5.7.2 fares much better, but
# still bombs later on...
#
#
# Your C compiler is not gcc.
#
#
# Probing Perl 5's configuration to determine which headers you
# have (this could
# take a while on slow machines)...
#
# Determining C data type sizes by compiling and running a
# small C program (this
# could take a while):
#
#   Building ./test.c   from test_c.in...
#
# Figuring out the formats to pass to pack() for the various
# Parrot internal
# types...
# Figuring out what integer type we can mix with pointers...
# We'll use 'unsigned int'.
#
# Building a preliminary version of include/parrot/config.h,
# your Makefiles, and
# other files:
#
#   Building include/parrot/config.hfrom config_h.in...
#   Building ./Makefile from Makefile.in...
# Use of uninitialized value in substitution iterator at
# configure.pl line 803.
#   Building ./classes/Makefile from classes/Makefile.in...
#   Building ./docs/Makefilefrom docs/Makefile.in...
#   Building ./languages/Makefile   from
# languages/Makefile.in...
#   Building ./languages/jako/Makefile  from
# languages/jako/Makefile.in...
#   Building ./languages/miniperl/Makefile  from
# languages/miniperl/Makefile.in...
#   Building ./languages/scheme/Makefilefrom
# languages/scheme/Makefile.in...
#   Building lib/Parrot/Types.pmfrom Types_pm.in...
#   Building lib/Parrot/Config.pm   from Config_pm.in...
#
#
# Checking some things by compiling and running another small C
# program (this
# could take a while):
#
#   Building ./testparrotsizes.cfrom testparrotsizes_c.in...
#
#
# #include "parrot/parrot.h"
# #include "parrot/parrot.h"
# ..^
# ..^
# %CC-F-NOINCLFILEF, Cannot find file "parrot/parrot.h"
# specified in #include directive.
# %CC-F-NOINCLFILEF, Cannot find file "parrot/parrot.h"
# specified in #include directive.
# at line number 9 in file USER1:[SCHWERN.SRC.PARROT]TESTPARROTSIZES.C;1
# at line number 9 in file USER1:[SCHWERN.SRC.PARROT]TESTPARROTSIZES.C;1
# C compiler died! at (eval 1) line 13.
# %RMS-E-FNF, file not found

Yikes.  Does the C compiler recognize that sort of path?  How about
the -I switch (it may be set differently by VMS's hints file) that tells
it to look in ./include?

# PS You're not qualified to yell at VMS until you grok the mystery of:
# $ rm foo
# $ rm foo
# $ rm foo
# $ rm foo
# $ rm foo
# $ rm foo
# $ rm foo
# $ rm foo
# $ rm foo
# $ rm foo
# $ rm foo
# rm.exe: foo: no such file or directory
#
# :)

Nine versions of foo.  A nice feature, IMHO.  ;^)

--Brent Dax <[EMAIL PROTECTED]>
@roles=map {"Parrot $_"} qw(embedding regexen Configure)

#define private public
--Spotted in a C++ program just before a #include




RE: OpenVMS can't get past configure

2002-03-17 Thread Melvin Smith


>personal dislike for VMS.  I don't know enough about VMS to form an
>opinion on it--its popular days were before my time.  ;^)

I never cared for the VMS command shell (I think it was DCL, been a few
years since I worked on it), but there is a lot to be learned
from the VMS architecture itself.

For one, it has security features that would make you cringe.

Also, it just plain doesn't crash.

That aside, to each his own. You'll take my UN*X when you
pry it from my cold, dead, hardware.

-Melvin




[PATCH Configure.pl] (still broken) Re: OpenVMS can't get past configure

2002-03-17 Thread Michael G Schwern

On Sun, Mar 17, 2002 at 10:13:58AM -0800, Brent Dax wrote:
> Lines in question:
> 
> 
> foreach(grep {/^i_/} keys %Config) {
> $c{$_}=$Config{$_};
> $c{headers}.=defineifdef((/^i_(.*)$/));
> }
> 
> I think VMS is too lame to handle the grep line.  Honestly, I'd rather
> not change it to bow to a retarded OS, but apparently we have to.  You
> can probably just say:
> 
> foreach(keys %Config) {
> next unless /^i_/;
> $c{$_}=$Config{$_};
> $c{headers}.=defineifdef((/^i_(.*)$/));
> }

If one wanted to do that in a memory efficient manner...

--- Configure.plSun Mar 17 15:53:06 2002
+++ Configure.pl  Sat Mar 16 15:00:00 2002
@@ -483,9 +481,10 @@
 # Set up HAS_HEADER_
 #
 
-foreach(grep {/^i_/} keys %Config) {
-$c{$_}=$Config{$_};
-$c{headers}.=defineifdef((/^i_(.*)$/));
+while(my($k, $v) = each %Config) {
+next unless $k =~ /^i_/;
+$c{$k} = $v;
+$c{headers} .= defineifdef(($k =~ /^i_(.*)$/));
 }
 
 print <<"END";


But even with this in place it still takes forever with 5.005_03.  So
I'll just chalk it up to a perl bug.  5.7.2 fares much better, but
still bombs later on...


Your C compiler is not gcc.


Probing Perl 5's configuration to determine which headers you have (this could
take a while on slow machines)...

Determining C data type sizes by compiling and running a small C program (this
could take a while):

  Building ./test.c   from test_c.in...

Figuring out the formats to pass to pack() for the various Parrot internal
types...
Figuring out what integer type we can mix with pointers...
We'll use 'unsigned int'.

Building a preliminary version of include/parrot/config.h, your Makefiles, and
other files:

  Building include/parrot/config.hfrom config_h.in...
  Building ./Makefile from Makefile.in...
Use of uninitialized value in substitution iterator at configure.pl line 803.
  Building ./classes/Makefile from classes/Makefile.in...
  Building ./docs/Makefilefrom docs/Makefile.in...
  Building ./languages/Makefile   from languages/Makefile.in...
  Building ./languages/jako/Makefile  from languages/jako/Makefile.in...
  Building ./languages/miniperl/Makefile  from languages/miniperl/Makefile.in...
  Building ./languages/scheme/Makefilefrom languages/scheme/Makefile.in...
  Building lib/Parrot/Types.pmfrom Types_pm.in...
  Building lib/Parrot/Config.pm   from Config_pm.in...


Checking some things by compiling and running another small C program (this
could take a while):

  Building ./testparrotsizes.cfrom testparrotsizes_c.in...


#include "parrot/parrot.h"
#include "parrot/parrot.h"
..^
..^
%CC-F-NOINCLFILEF, Cannot find file "parrot/parrot.h" specified in #include directive.
%CC-F-NOINCLFILEF, Cannot find file "parrot/parrot.h" specified in #include directive.
at line number 9 in file USER1:[SCHWERN.SRC.PARROT]TESTPARROTSIZES.C;1
at line number 9 in file USER1:[SCHWERN.SRC.PARROT]TESTPARROTSIZES.C;1
C compiler died! at (eval 1) line 13.
%RMS-E-FNF, file not found




PS You're not qualified to yell at VMS until you grok the mystery of:
$ rm foo
$ rm foo
$ rm foo 
$ rm foo
$ rm foo
$ rm foo
$ rm foo
$ rm foo
$ rm foo
$ rm foo
$ rm foo
rm.exe: foo: no such file or directory

:)


-- 

Michael G. Schwern   <[EMAIL PROTECTED]>http://www.pobox.com/~schwern/
Perl Quality Assurance  <[EMAIL PROTECTED]> Kwalitee Is Job One
It wasn't false, just differently truthful.
-- Abhijit Menon-Sen in <[EMAIL PROTECTED]>



RE: OpenVMS can't get past configure

2002-03-17 Thread Dan Sugalski

At 11:52 AM -0800 3/17/02, Brent Dax wrote:
>Dan Sugalski:
># At 10:13 AM -0800 3/17/02, Brent Dax wrote:
># ># Probing Perl 5's configuration to determine which headers you
># ># have (this could
># ># take a while on slow machines)...
># ># Out of memory!
># ># %SYSTEM-F-ABORT, abort
># >
># >Lines in question:
># >
># >
># >foreach(grep {/^i_/} keys %Config) {
># > $c{$_}=$Config{$_};
># > $c{headers}.=defineifdef((/^i_(.*)$/));
># >}
># >
># >I think VMS is too lame to handle the grep line.
>#
># No, it's not. Perl works fine on VMS, just as it does on dozens of
># other platforms. If that code's throwing a fit, then either perl
># itself is broken, or the configure script is broken.
>#
># Likely the error is someplace else.
>
>We saw this error on VMS before, and that was the cause.  That line
>_does_ take a lot of memory:
>
>   -the hash
>   -a list of the keys
>   -the result list from the grep

In which case it's not a VMS problem, but a memory one. I expect the 
quotas on the test drive machines that Schwern's using are pretty low 
to keep any one user from adversely impacting another. Odds are that 
an attempt at another time would work, if there were fewer users on 
the system--the system will hand out extra memory to a process if its 
available, but makes no guarantees on having overflow.

More importantly, this is a sign we're going to have problems on 
systems without ample memory. (I'm not looking forward to the 
expected footprint for a compile of core.ops with full optimization 
on...)

I'm going to try and get a VMS test system out of some of the folks I 
know in VMS engineering. Won't be the latest and greatest, but 
there'll be fewer limits.

># >Honestly, I'd rather not change it to bow to a retarded OS
>#
># I think, perhaps, that namecalling at software would best be saved
># for other places.
>
>The namecalling was because it couldn't handle grep's memory
>requirements (which, granted, are non-trivial), not because of any
>personal dislike for VMS.  I don't know enough about VMS to form an
>opinion on it--its popular days were before my time.  ;^)

Still, the namecalling's inappropriate. Operating systems are 
software, and all software sucks. Singling out a particular piece of 
it's pretty pointless--might as well point out that one particular 
spot on the sun's awfully bright. ;)
-- 
 Dan

--"it's like this"---
Dan Sugalski  even samurai
[EMAIL PROTECTED] have teddy bears and even
   teddy bears get drunk



Re: OpenVMS can't get past configure

2002-03-17 Thread Josh Wilmes


I suspect that it's not that VMS can't handle it- it's more likely that 
VMS does a better job of placing quotas on memory usage than other OSes.
There's probably something analogous to "ulimit" which would fix the 
issue, but requiring that in order to build parrot isn't really reasonable.

If we can make it take less memory, that'd be preferable.

Though if it's running out of memory on that grep, i hesitate to imagine 
what it will do on trying to compile some of those giant autogenerated .c 
files.

--Josh

At 11:52 on 03/17/2002 PST, "Brent Dax" <[EMAIL PROTECTED]> wrote:

> Dan Sugalski:
> # At 10:13 AM -0800 3/17/02, Brent Dax wrote:
> # ># Probing Perl 5's configuration to determine which headers you
> # ># have (this could
> # ># take a while on slow machines)...
> # ># Out of memory!
> # ># %SYSTEM-F-ABORT, abort
> # >
> # >Lines in question:
> # >
> # >
> # >foreach(grep {/^i_/} keys %Config) {
> # > $c{$_}=$Config{$_};
> # > $c{headers}.=defineifdef((/^i_(.*)$/));
> # >}
> # >
> # >I think VMS is too lame to handle the grep line.
> #
> # No, it's not. Perl works fine on VMS, just as it does on dozens of
> # other platforms. If that code's throwing a fit, then either perl
> # itself is broken, or the configure script is broken.
> #
> # Likely the error is someplace else.
> 
> We saw this error on VMS before, and that was the cause.  That line
> _does_ take a lot of memory:
> 
>   -the hash
>   -a list of the keys
>   -the result list from the grep
> 
> # >Honestly, I'd rather not change it to bow to a retarded OS
> #
> # I think, perhaps, that namecalling at software would best be saved
> # for other places.
> 
> The namecalling was because it couldn't handle grep's memory
> requirements (which, granted, are non-trivial), not because of any
> personal dislike for VMS.  I don't know enough about VMS to form an
> opinion on it--its popular days were before my time.  ;^)
> 
> --Brent Dax <[EMAIL PROTECTED]>
> @roles=map {"Parrot $_"} qw(embedding regexen Configure)
> 
> #define private public
> --Spotted in a C++ program just before a #include





RE: OpenVMS can't get past configure

2002-03-17 Thread Brent Dax

Dan Sugalski:
# At 10:13 AM -0800 3/17/02, Brent Dax wrote:
# ># Probing Perl 5's configuration to determine which headers you
# ># have (this could
# ># take a while on slow machines)...
# ># Out of memory!
# ># %SYSTEM-F-ABORT, abort
# >
# >Lines in question:
# >
# >
# >foreach(grep {/^i_/} keys %Config) {
# > $c{$_}=$Config{$_};
# > $c{headers}.=defineifdef((/^i_(.*)$/));
# >}
# >
# >I think VMS is too lame to handle the grep line.
#
# No, it's not. Perl works fine on VMS, just as it does on dozens of
# other platforms. If that code's throwing a fit, then either perl
# itself is broken, or the configure script is broken.
#
# Likely the error is someplace else.

We saw this error on VMS before, and that was the cause.  That line
_does_ take a lot of memory:

-the hash
-a list of the keys
-the result list from the grep

# >Honestly, I'd rather not change it to bow to a retarded OS
#
# I think, perhaps, that namecalling at software would best be saved
# for other places.

The namecalling was because it couldn't handle grep's memory
requirements (which, granted, are non-trivial), not because of any
personal dislike for VMS.  I don't know enough about VMS to form an
opinion on it--its popular days were before my time.  ;^)

--Brent Dax <[EMAIL PROTECTED]>
@roles=map {"Parrot $_"} qw(embedding regexen Configure)

#define private public
--Spotted in a C++ program just before a #include




RE: OpenVMS can't get past configure

2002-03-17 Thread Dan Sugalski

At 10:13 AM -0800 3/17/02, Brent Dax wrote:
># Probing Perl 5's configuration to determine which headers you
># have (this could
># take a while on slow machines)...
># Out of memory!
># %SYSTEM-F-ABORT, abort
>
>Lines in question:
>
>
>foreach(grep {/^i_/} keys %Config) {
> $c{$_}=$Config{$_};
> $c{headers}.=defineifdef((/^i_(.*)$/));
>}
>
>I think VMS is too lame to handle the grep line.

No, it's not. Perl works fine on VMS, just as it does on dozens of 
other platforms. If that code's throwing a fit, then either perl 
itself is broken, or the configure script is broken.

Likely the error is someplace else.

>Honestly, I'd rather not change it to bow to a retarded OS

I think, perhaps, that namecalling at software would best be saved 
for other places.
-- 
 Dan

--"it's like this"---
Dan Sugalski  even samurai
[EMAIL PROTECTED] have teddy bears and even
   teddy bears get drunk



RE: OpenVMS can't get past configure

2002-03-17 Thread Brent Dax

Michael G Schwern:
# Using 5.005_03 on OpenVMS 7.3...
#
#
# Determining if your C compiler is actually gcc (this could
# take a while):
#
#
# Your C compiler is not gcc.
#
#
# Probing Perl 5's configuration to determine which headers you
# have (this could
# take a while on slow machines)...
# Out of memory!
# %SYSTEM-F-ABORT, abort

Lines in question:


foreach(grep {/^i_/} keys %Config) {
$c{$_}=$Config{$_};
$c{headers}.=defineifdef((/^i_(.*)$/));
}

I think VMS is too lame to handle the grep line.  Honestly, I'd rather
not change it to bow to a retarded OS, but apparently we have to.  You
can probably just say:

foreach(keys %Config) {
next unless /^i_/;
$c{$_}=$Config{$_};
$c{headers}.=defineifdef((/^i_(.*)$/));
}

--Brent Dax <[EMAIL PROTECTED]>
@roles=map {"Parrot $_"} qw(embedding regexen Configure)

#define private public
--Spotted in a C++ program just before a #include




OpenVMS can't get past configure

2002-03-16 Thread Michael G Schwern

Using 5.005_03 on OpenVMS 7.3...


Determining if your C compiler is actually gcc (this could take a while):


Your C compiler is not gcc.


Probing Perl 5's configuration to determine which headers you have (this could
take a while on slow machines)...
Out of memory!
%SYSTEM-F-ABORT, abort


-- 

Michael G. Schwern   <[EMAIL PROTECTED]>http://www.pobox.com/~schwern/
Perl Quality Assurance  <[EMAIL PROTECTED]> Kwalitee Is Job One
no paste enema
lycos is taught about it
my ass is sealed
-- Schwern



RE: SV: OpenVMS

2001-10-04 Thread Brent Dax

Dan Sugalski:
# At 02:56 PM 10/4/2001 +0100, Simon Cozens wrote:
# >Can't we just use a hints file? :(
#
# Give me a day or so and I'll get it fixed properly. I'm used
# to that by

If you're hacking in that area, can you package the test.c stuff in a
subroutine for ease of hints overloading?

# now... :) (There's a reason we just chucked it all and do our
# own thing to
# configure stuff in perl 5 on VMS)

I thought that was funny shell syntax and other such things.  With Perl
5's portability stuff (think File::Spec, etc.) we should be able to have
One True Configure, at least while it's still implemented in Perl.
Right?

--Brent Dax
[EMAIL PROTECTED]
Configure pumpking for Perl 6

They *will* pay for what they've done.




Re: SV: OpenVMS

2001-10-04 Thread Dan Sugalski

At 02:45 PM 10/4/2001 +0100, Simon Cozens wrote:
>On Wed, Oct 03, 2001 at 01:18:04PM -0700, Brent Dax wrote:
> >   foreach(grep {/pattern/} keys %Config) {
> >   blah blah blah
> >
> > with:
> >
> >   while($_=each %Config) {
> >   next unless /pattern/;
> >   blah blah blah
>
>Better, but it doesn't appear to ever *end*. :(
>
>Moreover:
> print scalar keys %Config
>doesn't end either. Nor does %foo = %config;

What, on the test drive VMS system? That's bizarre. It *should* work. (The 
perl they're using is, for all intents and purposes, the one I used in 
production for a year or so)

I gotta get an account there and find out what's going on.

Dan

--"it's like this"---
Dan Sugalski  even samurai
[EMAIL PROTECTED] have teddy bears and even
  teddy bears get drunk




Re: SV: OpenVMS

2001-10-04 Thread Dan Sugalski

At 02:56 PM 10/4/2001 +0100, Simon Cozens wrote:
>Can't we just use a hints file? :(

Give me a day or so and I'll get it fixed properly. I'm used to that by 
now... :) (There's a reason we just chucked it all and do our own thing to 
configure stuff in perl 5 on VMS)

Dan

--"it's like this"---
Dan Sugalski  even samurai
[EMAIL PROTECTED] have teddy bears and even
  teddy bears get drunk




Re: SV: OpenVMS

2001-10-04 Thread Simon Cozens

On Thu, Oct 04, 2001 at 02:45:31PM +0100, Simon Cozens wrote:
> Oh dear.

Even if I hack it wildly:

Alright, now I'm gonna check some stuff by compiling and running
a small C program.  This could take a bit...
Use of uninitialized value at configure.pl line 140.
CC/DECC /float=ieee/Include=[]/Standard=Relaxed_ANSI/Prefix=All/Obj=.obj/NoList 
-I./include -o test_siz test.c
%DCL-W-VALREQ, missing qualifier or keyword value - supply all required values
 \INCLUDE\
C compiler died! at configure.pl line 140.

Can't we just use a hints file? :(

-- 
Heh, heh, heh, heh... the NOISE of a bursar CHEWING Proctors' Memoranda.
- Henry Braun is Oxford Zippy



Re: SV: OpenVMS

2001-10-04 Thread Simon Cozens

On Wed, Oct 03, 2001 at 01:18:04PM -0700, Brent Dax wrote:
>   foreach(grep {/pattern/} keys %Config) {
>   blah blah blah
> 
> with:
> 
>   while($_=each %Config) {
>   next unless /pattern/;
>   blah blah blah

Better, but it doesn't appear to ever *end*. :(

Moreover:
print scalar keys %Config
doesn't end either. Nor does %foo = %config;

Oh dear.

-- 
Britain has football hooligans, Germany has neo-Nazis, and France has farmers. 
-The Times



RE: SV: OpenVMS

2001-10-03 Thread Brent Dax

Michael G Schwern:
# On Wed, Oct 03, 2001 at 07:09:06PM +0100, Simon Cozens wrote:
# > On Wed, Oct 03, 2001 at 01:55:39PM -0400, Dan Sugalski wrote:
# > > If you want to wait, that's fine. I don't think I'm going
# to get untangled
# > > for another day or three, though.
# >
# > Waiting might also help to shake out whatever's wrong with
# Win2K. Maybe
# > it's just Brent's system being funny. (And I'd try playing
# with Compaq
# > Test Drive's OpenVMS system, but I can't find gzip, vmstar
# or, unfortunately,
# > perl. And damn, it's been a long time since I used DCL.)
#
# Unpleasent things happen with 5.005_03
...
# Okay.  Now I'm gonna probe Perl 5's configuration to see
# what headers you have around.  This could take a bit on slow
# machines...
# Out of memory!
# Out of memory!
# %SYSTEM-F-ABORT, abort

Oof.  It probably doesn't like the 'grep {/pattern/} keys %Config' very
much.  Replace:

foreach(grep {/pattern/} keys %Config) {
blah blah blah

with:

while($_=each %Config) {
next unless /pattern/;
blah blah blah

(untested) and it ought to work okay.  (Fill in the correct /pattern/,
of course.)

# bleadperl 12109 is slightly less unpleasent.
#
# Okay.  Now I'm gonna probe Perl 5's configuration to see
# what headers you have around.  This could take a bit on slow
# machines...
#
# Alright, now I'm gonna check some stuff by compiling and running
# a small C program.  This could take a bit...
# Use of uninitialized value in concatenation (.) or string at
# configure.pl line 137.
# %DCL-W-VALREQ, missing qualifier or keyword value - supply
# all required values \INCLUDE\
# C compiler died! at configure.pl line 137.
# %RMS-E-FNF, file not found

Yeah, that whole test.c thing is highly Unix-centric.  I'll probably
wrap it up in a function so hints files can override its behavior.  If
you can't figure out how to adapt what's there for VMS, you can always
replace the split() with the actual values of the things.  (Yucky, I
know, but it would at least work.)

--Brent Dax
[EMAIL PROTECTED]
Configure pumpking for Perl 6

They *will* pay for what they've done.




Re: SV: OpenVMS

2001-10-03 Thread Michael G Schwern

On Wed, Oct 03, 2001 at 07:09:06PM +0100, Simon Cozens wrote:
> On Wed, Oct 03, 2001 at 01:55:39PM -0400, Dan Sugalski wrote:
> > If you want to wait, that's fine. I don't think I'm going to get untangled 
> > for another day or three, though.
> 
> Waiting might also help to shake out whatever's wrong with Win2K. Maybe
> it's just Brent's system being funny. (And I'd try playing with Compaq
> Test Drive's OpenVMS system, but I can't find gzip, vmstar or, unfortunately,
> perl. And damn, it's been a long time since I used DCL.)

Unpleasent things happen with 5.005_03

$ perl Configure.pl
Subroutine ln redefined at /perl_root/lib/ExtUtils/Manifest.pm line 27.
Parrot Configure
Copyright (C) 2001 Yet Another Society

Since you're running this script, you obviously have
Perl 5--I'll be pulling some defaults from its configuration.

First, I'm gonna check the manifest, to make sure you got a 
complete Parrot kit.

Okay, we found everything.  Next you'll need to answer 
a few questions about your system.  Rules are the same 
as Perl 5's Configure--defaults are in square brackets, 
and you can hit enter to accept them.

What C compiler do you want to use? [CC/DECC] 
How about your linker? [Link] 
What flags would you like passed to your C compiler? 
[/float=ieee/Include=[]/Standard=Relaxed_ANSI/Prefix=All/Obj=.obj/NoList -I./include] 
Which libraries would you like your C compiler to include? [] 
How big would you like integers to be? [long] 
And your floats? [double] 
What is your native opcode type? [long] 
Okay.  Now I'm gonna probe Perl 5's configuration to see
what headers you have around.  This could take a bit on slow 
machines...
Out of memory!
Out of memory!
%SYSTEM-F-ABORT, abort


bleadperl 12109 is slightly less unpleasent.

Okay.  Now I'm gonna probe Perl 5's configuration to see
what headers you have around.  This could take a bit on slow 
machines...

Alright, now I'm gonna check some stuff by compiling and running
a small C program.  This could take a bit...
Use of uninitialized value in concatenation (.) or string at configure.pl line 137.
%DCL-W-VALREQ, missing qualifier or keyword value - supply all required values 
\INCLUDE\
C compiler died! at configure.pl line 137.
%RMS-E-FNF, file not found



-- 

Michael G. Schwern   <[EMAIL PROTECTED]>http://www.pobox.com/~schwern/
Perl6 Quality Assurance <[EMAIL PROTECTED]>   Kwalitee Is Job One
36 haikus
would scare the shit out of me.
Thank goodness for paste!
-- Schwern



Re: SV: OpenVMS

2001-10-03 Thread Simon Cozens

On Wed, Oct 03, 2001 at 01:55:39PM -0400, Dan Sugalski wrote:
> If you want to wait, that's fine. I don't think I'm going to get untangled 
> for another day or three, though.

Waiting might also help to shake out whatever's wrong with Win2K. Maybe
it's just Brent's system being funny. (And I'd try playing with Compaq
Test Drive's OpenVMS system, but I can't find gzip, vmstar or, unfortunately,
perl. And damn, it's been a long time since I used DCL.)

No release today, folks. False alarm.

-- 
With the arrest of Dimitry Sklyarov it has become apparent that it is not
safe for non US software engineers to visit the United States. - Alan Cox



Re: SV: OpenVMS

2001-10-03 Thread Dan Sugalski

At 06:49 PM 10/3/2001 +0100, Simon Cozens wrote:
>On Wed, Oct 03, 2001 at 01:52:05PM -0400, Dan Sugalski wrote:
> > If we don't build on VMS it's not a show-stopper for 0.02.
>
>I think it is. There's not much point having a core platforms
>list if we selectively ignore it. :(

Well, like any other rule you occasionally get a pass. :)

If you want to wait, that's fine. I don't think I'm going to get untangled 
for another day or three, though.

Dan

--"it's like this"---
Dan Sugalski  even samurai
[EMAIL PROTECTED] have teddy bears and even
  teddy bears get drunk




Re: SV: OpenVMS

2001-10-03 Thread Simon Cozens

On Wed, Oct 03, 2001 at 01:52:05PM -0400, Dan Sugalski wrote:
> If we don't build on VMS it's not a show-stopper for 0.02.

I think it is. There's not much point having a core platforms
list if we selectively ignore it. :(

-- 
* DrForr digs around for a fresh IV drip bag and proceeds to hook up.
 Coffee port.
 Firewalled, like everything else around here.



Re: SV: OpenVMS

2001-10-03 Thread Dan Sugalski

At 07:47 PM 10/3/2001 +0200, Henrik Tougaard wrote:
> > Fra: Simon Cozens [mailto:[EMAIL PROTECTED]]
> >
> > Botheration, I forgot all about this. How's it coming on?
>
>I haven't had any tuits yet.
>Has anybody involved the vms-perl list?

I have, but everyone's tied up. As am I, unfortunately.

>
>Does VMS have to be on the core list??
>

Yes. Partially for the same reason that Windows native is--it's *not* by 
any stretch of the imagination Unix.

If we don't build on VMS it's not a show-stopper for 0.02.

Dan

--"it's like this"---
Dan Sugalski  even samurai
[EMAIL PROTECTED] have teddy bears and even
  teddy bears get drunk




SV: OpenVMS

2001-10-03 Thread Henrik Tougaard

> Fra: Simon Cozens [mailto:[EMAIL PROTECTED]]
> 
> Botheration, I forgot all about this. How's it coming on?

I haven't had any tuits yet.
Has anybody involved the vms-perl list?
I forgot to include them in the original mail,
but someone migth have tuits enough to start it.


Does VMS have to be on the core list??


--
Henrik Tougaard, Copenhagen, Denmark
"The first rule of Perl Club is, we don't talk about Perl Club"
- Dave Cross at YAPC::Europe 2.0.01



OpenVMS

2001-10-03 Thread Simon Cozens

Botheration, I forgot all about this. How's it coming on?

-- 
IBM:
It may be slow, but it's hard to use.