From: Andy Dougherty Date: Tue, 16 Sep 2003 13:47:55 +0000 (-0400) Subject: Re: [perl #23791] Many errors in build under NCR MP-RAS X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=40f422c75bf33f6da66b6b68e6416e11bad0ba61;p=p5sagit%2Fp5-mst-13.2.git Re: [perl #23791] Many errors in build under NCR MP-RAS Message-ID: p4raw-id: //depot/perl@21247 --- diff --git a/ext/POSIX/hints/svr4.pl b/ext/POSIX/hints/svr4.pl index 31e6640..23a5a8f 100644 --- a/ext/POSIX/hints/svr4.pl +++ b/ext/POSIX/hints/svr4.pl @@ -1,16 +1,24 @@ -# For NCR systems with uname -a output like the following: +# For NCR MP-RAS systems with uname -a output like the following: # foo foo 4.0 3.0 3441 Pentium III(TM)-ISA/PCI # foo foo 4.0 3.0 4400 Pentium II(TM)-ISA/PCI +# foo foo 4.2 1.1.2 shg2 386at # the system needs to explicitly link against -lmw to pull in some # symbols such as _mwoflocheckl and possibly others. -# Configure sets archname='3441-svr4.0' or '4400-svr4.0' +# For the first two, Configure sets archname='3441-svr4.0' or '4400-svr4.0'. # The regex below is an attempt to get both systems as well as # any reasonable future permutations. # Thanks to Doug Hendricks for the original info. +# (See hints/svr4.sh for more details.) # A. Dougherty Tue Oct 30 10:20:07 EST 2001 +# if ($Config{'archname'} =~ /[34]4[0-9][0-9]-svr4/) { $self->{LIBS} = ['-lm -posix -lcposix -lmw']; } +# A better NCR MP-RAS test, thanks to W. Geoffrey Rommel, is to +# look for /etc/issue and /etc/.relid. A. Dougherty, September 16, 2003 +elsif( -e '/etc/issue' && -e '/etc/.relid') { + $self->{LIBS} = ['-lm -posix -lcposix -lmw']; +} # Not sure what OS this one is. elsif ($Config{archname} =~ /RM\d\d\d-svr4/) { $self->{LIBS} = ['-lm -lc -lposix -lcposix']; diff --git a/hints/svr4.sh b/hints/svr4.sh index b3be9ac..aa1008d 100644 --- a/hints/svr4.sh +++ b/hints/svr4.sh @@ -140,19 +140,28 @@ esac # foo foo 4.0 3.0 3441 Pentium III(TM)-ISA/PCI # Similar errors reported for # foo foo 4.0 3.0 4400 pentium ii(tm)-isapci ' - -# Configure sets osname=svr4.0, osvers=3.0, archname='3441-svr4.0' -case "$myuname" in -*3441*|*4400*isapci) - # With the NCR High Performance C Compiler R3.0c, miniperl fails - # t/op/regexp.t test 461 unless we compile with optimizie=-g. - # The whole O/S is being phased out, so more detailed probing - # is probably not warranted. - case "$optimize" in +# and also for +# foo foo 4.2 1.1.2 shg2 386at +# W. Geoffrey Rommel, 2003-09-09 reported: +# I have talked to a developer at NCR, and there seems to be no +# reliable way to make sure that this is really MP-RAS. It's not +# in uname, it's not in the kernel, it's not in sysinfo ... +# However, the files /etc/issue and /etc/.relid are present in MP-RAS. +# +# Other System V-derived systems may have /etc/issue, but /etc/.relid +# may well be unique. Configure-time tests for the POSIX +# _mwoflocheckl issue (see ext/POSIX/hints/svr4.pl) would be appreciated. +# +if test -f /etc/issue -a -f /etc/.relid; then + # With the NCR High Performance C Compiler R3.0c, miniperl fails + # t/op/regexp.t test 461 unless we compile with optimize=-g. + # Volunteers are needed to determine just which files need special + # treatment. For now, use optimize=-g for everything. + # + case "$optimize" in '') optimize='-g' ;; esac - ;; -esac +fi # Configure may fail to find lstat() since it's a static/inline function # in on Unisys U6000 SVR4, UnixWare 2.x, and possibly other