diff options
author | Jarkko Hietaniemi <jhi@iki.fi> | 2014-11-28 11:53:57 -0500 |
---|---|---|
committer | Jarkko Hietaniemi <jhi@iki.fi> | 2014-11-29 16:54:28 -0500 |
commit | bd86b473b240a3cb030acb29edd9aad2df62454d (patch) | |
tree | 9f7c61461bc6ff6f4e1ad0543a84f615de3b699a /hints | |
parent | 6233097676c277b9213c6a4a9a165c2b60d0418e (diff) | |
download | perl-bd86b473b240a3cb030acb29edd9aad2df62454d.tar.gz |
HP-UX 10.20 has pseudo-long-double which shouldn't be used.
Diffstat (limited to 'hints')
-rw-r--r-- | hints/hpux.sh | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/hints/hpux.sh b/hints/hpux.sh index 39150be73e..cb1895d94a 100644 --- a/hints/hpux.sh +++ b/hints/hpux.sh @@ -213,6 +213,30 @@ case "$usemorebits" in $define|true|[yY]*) use64bitint="$define"; uselongdouble="$define" ;; esac +# There is a weird pre-C99 long double (a struct of four uin32_t) +# in HP-UX 10.20 but beyond strtold() there's no support for them +# for example in <math.h>. +case "$uselongdouble" in + $define|true|[yY]*) + if [ "$xxOsRevMajor" -lt 11 ]; then + cat <<EOM >&4 + +*** uselongdouble (or usemorebits) is not supported on HP-UX $xxOsRevMajor. +*** You need at least HP-UX 11.0. +*** Cannot continue, aborting. +EOM + exit 1 + fi + ;; + esac + +# Configure long double scan will detect the HP-UX 10.20 "long double" +# (a struct of four uin32_t) and think it is IEEE quad. Make it not so. +if [ "$xxOsRevMajor" -lt 11 ]; then + d_longdbl="$undef" + longdblsize=8 # Make it double. +fi + case "$archname" in IA64*) # While here, override so=sl auto-detection |