33 |
# -DIFORT turns on ifort-specific declarations in darwin (RAND is not an intrinsic) |
# -DIFORT turns on ifort-specific declarations in darwin (RAND is not an intrinsic) |
34 |
DEFINES='-DWORDLENGTH=4 -DIFORT' |
DEFINES='-DWORDLENGTH=4 -DIFORT' |
35 |
CPP='cpp -traditional -P' |
CPP='cpp -traditional -P' |
36 |
|
EXTENDED_SRC_FLAG='-132' |
37 |
|
#OMPFLAG='-openmp' |
38 |
|
|
39 |
NOOPTFILES='mds_byteswapr8.F mds_byteswapr4.F mds_byteswapi4.F mom_calc_ke.F' |
NOOPTFILES='mds_byteswapr8.F mds_byteswapr4.F mds_byteswapi4.F mom_calc_ke.F mon_ke.F' |
40 |
|
|
41 |
if test "x$IEEE" = x ; then |
if test "x$IEEE" = x ; then |
42 |
# No need for IEEE-754 |
# No need for IEEE-754 |
43 |
NOOPTFLAGS='-O2' |
NOOPTFLAGS='-O2' |
44 |
FOPTIM='-O3 -align' |
# use this for exact checkpointing (slightly slower): |
45 |
|
# FOPTIM='-O2 -pc64 -mieee-fp -align' |
46 |
|
FOPTIM='-O2 -align' |
47 |
# ifort options: |
# ifort options: |
48 |
# -132 fixed-form line length is 132 characters |
# -132 fixed-form line length is 132 characters |
49 |
# -r8 REAL is REAL*8 |
# -r8 REAL is REAL*8 |
55 |
# -fno-alias don't assume aliasing (assume that different variables DON'T refer to the same memory location) |
# -fno-alias don't assume aliasing (assume that different variables DON'T refer to the same memory location) |
56 |
# -assume byterecl record length in OPEN statements is in bytes |
# -assume byterecl record length in OPEN statements is in bytes |
57 |
# -convert big_endian binary files contain big-endian data |
# -convert big_endian binary files contain big-endian data |
58 |
FFLAGS="$FFLAGS -132 -r8 -i4 -w95 -W0 -WB -xT -fno-alias -assume byterecl -convert big_endian" |
FFLAGS="$FFLAGS -w95 -W0 -WB -xT -fno-alias -assume byterecl -convert big_endian" |
59 |
else |
else |
60 |
# Try to follow IEEE-754 |
# Try to follow IEEE-754 |
61 |
NOOPTFLAGS='-O0' |
NOOPTFLAGS='-O0' |
64 |
# -pc64 round floating point values to 64 bits |
# -pc64 round floating point values to 64 bits |
65 |
# one could also try |
# one could also try |
66 |
# -mp maintain precision |
# -mp maintain precision |
67 |
FFLAGS="$FFLAGS -pc64 -132 -r8 -i4 -w95 -W0 -WB -xT -fno-alias -assume byterecl -convert big_endian" |
FFLAGS="$FFLAGS -pc64 -w95 -W0 -WB -xT -fno-alias -assume byterecl -convert big_endian" |
68 |
fi |
fi |
69 |
|
#- might want to use '-r8' for fizhi pkg: |
70 |
|
#FFLAGS="$FFLAGS -r8" |
71 |
|
|
72 |
#F90FLAGS=$FFLAGS |
#F90FLAGS=$FFLAGS |
73 |
#F90OPTIM=$FOPTIM |
#F90OPTIM=$FOPTIM |
74 |
|
|
75 |
NOOPTFILES=$NOOPTFILES' mitcplr_char2real.F mitcplr_real2char.F' |
NOOPTFILES=$NOOPTFILES' mds_byteswap.F' |
|
NOOPTFILES=$NOOPTFILES' mitcplr_char2int.F mitcplr_int2char.F mds_byteswap.F' |
|
76 |
|
|