summaryrefslogtreecommitdiff
path: root/hints
diff options
context:
space:
mode:
authorSpider Boardman <spider@orb.nashua.nh.us>2002-03-21 04:23:45 -0500
committerJarkko Hietaniemi <jhi@iki.fi>2002-03-21 14:44:09 +0000
commit90e831dcaea7bb76a1f6fd13b3d99e8db4a40ec1 (patch)
tree0ee5f89c522bb234461746acdfede6d60b0e5c1f /hints
parent9366f0ec508a96f6d067d5496e2a37c30b9c2521 (diff)
downloadperl-90e831dcaea7bb76a1f6fd13b3d99e8db4a40ec1.tar.gz
More HP-UX/IA64 work
Message-Id: <200203211423.JAA61178@leggy.zk3.dec.com> p4raw-id: //depot/perl@15388
Diffstat (limited to 'hints')
-rw-r--r--hints/hpux.sh33
1 files changed, 30 insertions, 3 deletions
diff --git a/hints/hpux.sh b/hints/hpux.sh
index aa99f27a9a..f354c0ffde 100644
--- a/hints/hpux.sh
+++ b/hints/hpux.sh
@@ -41,6 +41,10 @@ if [ "$xxOsRevMajor" -le 10 ]; then
echo "Archname is $archname"
+# Fix XSlib (CPAN) confusion when re-using a prefix but changing from ILP32
+# to LP64 builds. They're NOT binary compatible, so quit claiming they are.
+archname64=LP64
+
### HP-UX OS specific behaviour
@@ -83,7 +87,10 @@ case `$cc -v 2>&1`"" in
*64*)
echo "main(){}">try.c
case "$gccversion" in
- 3*) ccflags="$ccflags -mpa-risc-2-0"
+ 3*)
+ case "$archname" in
+ PA-RISC*) ccflags="$ccflags -mpa-risc-2-0" ;;
+ esac
;;
*) # gcc with gas will not accept +DA2.0
case "`$cc -c -Wa,+DA2.0 try.c 2>&1`" in
@@ -104,6 +111,8 @@ case `$cc -v 2>&1`"" in
*) # HPld
case "$gccversion" in
[12]*)
+ # Why not 3 as well here?
+ # Since not relevant to IA64, not changed.
ldflags="$ldflags -Wl,+vnocompatwarnings"
ccflags="$ccflags -Wl,+vnocompatwarnings"
;;
@@ -222,8 +231,15 @@ EOM
# HP-UX soon, including a user-friendly exit
case $gcc_64native in
no) case "$gccversion" in
- [12]*) ccflags="$ccflags -mlp64"
- ldflags="$ldflags -Wl,+DD64"
+ [123]*) ccflags="$ccflags -mlp64"
+ case "$archname" in
+ PA-RISC*)
+ ldflags="$ldflags -Wl,+DD64"
+ ;;
+ IA64*)
+ ldflags="$ldflags -mlp64"
+ ;;
+ esac
;;
esac
;;
@@ -519,3 +535,14 @@ d_isnan='define'
d_isinf='define'
d_isfinite='define'
d_unordered='define'
+# Next one(s) need the leading tab. These are special 'hint' symbols that
+# are not to be propagated to config.sh, all related to pthreads draft 4
+# interfaces.
+case "$d_oldpthreads" in
+ ''|$undef)
+ d_crypt_r_proto='undef'
+ d_getgrent_r_proto='undef'
+ d_getpwent_r_proto='undef'
+ d_strerror_r_proto='undef'
+ ;;
+ esac