diff options
author | Jarkko Hietaniemi <jhi@iki.fi> | 2001-08-08 13:22:13 +0000 |
---|---|---|
committer | Jarkko Hietaniemi <jhi@iki.fi> | 2001-08-08 13:22:13 +0000 |
commit | 6c7aff00377b827ccc6e918bdb59169ef553af97 (patch) | |
tree | 181a9d77c0f662069df1746be59b6cc26e0b498a /hints/dec_osf.sh | |
parent | 03c6e78a0ff65edc6cf70aa8f6dcb50b664ccbef (diff) | |
download | perl-6c7aff00377b827ccc6e918bdb59169ef553af97.tar.gz |
Make VMS use IEEE math by default; reorder Tru64 hints
so that -fprm d -ieee (the -ieee gives as e.g. IEEE 754
exception semantics) is always set if using (the new) cc.
p4raw-id: //depot/perl@11613
Diffstat (limited to 'hints/dec_osf.sh')
-rw-r--r-- | hints/dec_osf.sh | 33 |
1 files changed, 21 insertions, 12 deletions
diff --git a/hints/dec_osf.sh b/hints/dec_osf.sh index 8bf043f171..134a3aa7e1 100644 --- a/hints/dec_osf.sh +++ b/hints/dec_osf.sh @@ -60,12 +60,16 @@ cc=${cc:-cc} +case "`$cc -v 2>&1 | grep cc`" in +*gcc*) isgcc=gcc ;; +esac + # do NOT, I repeat, *NOT* take away the leading tabs # Configure Black Magic (TM) # reset _DEC_cc_style= -case "`$cc -v 2>&1 | grep cc`" in -*gcc*) _gcc_version=`$cc --version 2>&1 | tr . ' '` +case "$isgcc" in +gcc) _gcc_version=`$cc --version 2>&1 | tr . ' '` set $_gcc_version if test "$1" -lt 2 -o \( "$1" -eq 2 -a \( "$2" -lt 95 -o \( "$2" -eq 95 -a "$3" -lt 2 \) \) \); then cat >&4 <<EOF @@ -116,8 +120,8 @@ EOF esac # be nauseatingly ANSI -case "`$cc -v 2>&1 | grep gcc`" in -*gcc*) ccflags="$ccflags -ansi" +case "$isgcc" in +gcc) ccflags="$ccflags -ansi" ;; *) ccflags="$ccflags -std" ;; @@ -129,13 +133,10 @@ esac # we want optimisation case "$optimize" in -'') case "`$cc -v 2>&1 | grep gcc`" in - *gcc*) - optimize='-O3' ;; +'') case "$isgcc" in + gcc) optimize='-O3' ;; *) case "$_DEC_cc_style" in - new) optimize='-O4' - ccflags="$ccflags -fprm d -ieee" - ;; + new) optimize='-O4' ;; old) optimize='-O2 -Olimit 3200' ;; esac ccflags="$ccflags -D_INTRINSICS" @@ -144,6 +145,14 @@ case "$optimize" in ;; esac +# we want dynamic fp rounding mode, and we want ieee exception semantics +case "$isgcc" in +gcc) case "$_DEC_cc_style" in + new) ccflags="$ccflags -fprm d -ieee" ;; + esac + ;; +esac + # Make glibpth agree with the compiler suite. Note that /shlib # is not here. That's on purpose. Even though that's where libc # really lives from V4.0 on, the linker (and /sbin/loader) won't @@ -255,8 +264,8 @@ cat > UU/usethreads.cbu <<'EOCBU' case "$usethreads" in $define|true|[yY]*) # Threads interfaces changed with V4.0. - case "`$cc -v 2>&1 | grep gcc`" in - *gcc*)ccflags="-D_REENTRANT $ccflags" ;; + case "$isgcc" in + gcc) ccflags="-D_REENTRANT $ccflags" ;; *) case "`uname -r`" in *[123].*) ccflags="-threads $ccflags" ;; *) ccflags="-pthread $ccflags" ;; |