summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndy Dougherty <doughera@lafayette.edu>2003-09-16 09:47:55 -0400
committerJarkko Hietaniemi <jhi@iki.fi>2003-09-16 18:57:34 +0000
commit40f422c75bf33f6da66b6b68e6416e11bad0ba61 (patch)
tree11a65230b83fbf0113d83fad39a3acd0328d2f43
parent669ecdbcc9859cccd0b304b919aa0725f0097a2a (diff)
downloadperl-40f422c75bf33f6da66b6b68e6416e11bad0ba61.tar.gz
Re: [perl #23791] Many errors in build under NCR MP-RAS
Message-ID: <Pine.SOL.4.53.0309161345020.13081@maxwell.phys.lafayette.edu> p4raw-id: //depot/perl@21247
-rw-r--r--ext/POSIX/hints/svr4.pl12
-rw-r--r--hints/svr4.sh31
2 files changed, 30 insertions, 13 deletions
diff --git a/ext/POSIX/hints/svr4.pl b/ext/POSIX/hints/svr4.pl
index 31e6640522..23a5a8f879 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 b3be9ac40b..aa1008da80 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 <sys/stat.h> on Unisys U6000 SVR4, UnixWare 2.x, and possibly other