summaryrefslogtreecommitdiff
path: root/lib/make
diff options
context:
space:
mode:
Diffstat (limited to 'lib/make')
-rw-r--r--lib/make/known-architectures/linux37
1 files changed, 36 insertions, 1 deletions
diff --git a/lib/make/known-architectures/linux b/lib/make/known-architectures/linux
index 5af9559e..f8572f01 100644
--- a/lib/make/known-architectures/linux
+++ b/lib/make/known-architectures/linux
@@ -207,6 +207,9 @@ else
: ${LIBS="fortran ffio m"}
;;
Intel)
+
+ case "$host_cpu" in
+ i?86)
if test "$OPTIMISE" = "no"; then
: ${F77FLAGS='-align -w95 -O0'}
: ${F90FLAGS='-align -w95 -O0'}
@@ -239,12 +242,44 @@ else
: ${LIBDIRS="$IA32ROOT/lib"}
: ${LDFLAGS="-Qy $IA32ROOT/lib/icrt.link"}
fi
+ fi
+ ;;
+
+ ia64)
+ # Below is taken from IA32 settings and may be wrong for different versions etc
+ if test "$OPTIMISE" = "no"; then
+ : ${F77FLAGS='-align -w95 -O0'}
+ : ${F90FLAGS='-align -w95 -O0'}
+ else
+ : ${F77FLAGS='-align -w95'}
+ : ${F90FLAGS='-align -w95'}
+ fi
+
+ # check if the processor is a Pentium4 (ie. supports SSE2 instructions)
+ default_intel_fopt_flags='-O3 -ip'
+ if test "`grep -w flags /proc/cpuinfo 2>&1 | grep -w sse2`"; then
+ default_intel_fopt_flags='-O2 -xN -ip'
fi
+ : ${F77_OPTIMISE_FLAGS="$default_intel_fopt_flags"}
+ : ${F90_OPTIMISE_FLAGS="$default_intel_fopt_flags"}
+
+ # add the necessary libraries according to the compiler version
+ if test "`$F90 -V 2>&1 | grep Version | sed 's/.*Version //' | sed 's/\..*//'`" -ge 8; then
+ : ${LIBS='ifcore imf svml m cxa cprts cxa irc unwind'}
+ else
+ : ${LIBS='intrins IEPCF90 F90 imf m irc cxa cprts cxa'}
+ fi
+
if test "$LD" != "ecc" -a "$LD" != "ecpc" -a -n "$IA64ROOT" ; then
: ${LIBDIRS='$(IA64ROOT)/lib'}
# No longer needed for V6 (would also be pointing in wrong place)
# : ${LDFLAGS='$(IA64ROOT)/../../compiler50/ia64/lib/icrt.link'}
- fi
+ fi
+ ;;
+ *)
+ echo "Don't know compiler options for cpu $host_cpu"
+ ;;
+ esac
;;
Compaq)
: ${LIBS="for m"}