3 |
# $Header$ |
# $Header$ |
4 |
# $Name$ |
# $Name$ |
5 |
# |
# |
6 |
# Build options for Fedore Core 4 x86-64 Opteron |
# Build options for Open64 Compiler on Linux x86-64 |
7 |
# tested on (Linux batsi.mit.edu 2.6.14-1.1656_FC4smp #1 SMP Thu Jan 5 22:26:33 EST 2006 x86_64 x86_64 x86_64 GNU/Linux) system 20071121 |
# first version tested on Fedore Core 4 x86-64 Opteron (Linux batsi) |
8 |
# |
# updated and tested on acesgrid (Fedora Core 15), using: |
9 |
|
# module load open64 (Version 4.2.4) |
10 |
|
|
11 |
|
#------- |
12 |
|
# run with OpenMP: needs to set environment var. OMP_NUM_THREADS |
13 |
|
# and generally, needs to increase the thread stack-size: |
14 |
|
# - sh,bash: |
15 |
|
# > export OMP_NUM_THREADS=2 |
16 |
|
# > export OMP_SLAVE_STACK_SIZE=400m |
17 |
|
# - csh,tcsh: |
18 |
|
# > setenv OMP_NUM_THREADS 2 |
19 |
|
# > setenv OMP_SLAVE_STACK_SIZE 400m |
20 |
|
#------- |
21 |
|
|
22 |
CC=opencc |
CC=opencc |
23 |
FC=openf90 |
FC=openf90 |
24 |
LD=openf90 |
LINK=openf90 |
25 |
|
|
26 |
DEFINES='-DWORDLENGTH=4' |
DEFINES='-DWORDLENGTH=4' |
27 |
CPP='cpp -traditional -P' |
CPP='cpp -traditional -P' |
28 |
MAKEDEPEND=/usr/X11R6/bin/makedepend |
EXTENDED_SRC_FLAG='-extend-source' |
29 |
NOOPTFLAGS='-O0 -m64 -g -fPIC' |
GET_FC_VERSION="--version" |
30 |
|
OMPFLAG='-openmp' |
31 |
|
#OMPFLAG='-openmp -OPT:early_mp=ON' |
32 |
|
|
33 |
|
NOOPTFLAGS='-O0 -g' |
34 |
NOOPTFILES='' |
NOOPTFILES='' |
35 |
|
|
36 |
if test "x$DEVEL" != x ; then |
FFLAGS="$FFLAGS -m64 -fPIC -convert big_endian" |
37 |
FFLAGS='-m64 -convert big_endian -fPIC -ffortran-bounds-check -trapuv -g' |
#- might want to use '-r8' for fizhi pkg: |
38 |
else |
#FFLAGS="$FFLAGS -r8" |
|
FFLAGS='-m64 -convert big_endian -fPIC' |
|
|
fi |
|
39 |
|
|
40 |
if test "x$IEEE" = x ; then |
if test "x$IEEE" = x ; then #- with optimisation: |
|
# No need for IEEE-754 |
|
41 |
FOPTIM='-O3 -LNO:fusion=2 -OPT:roundoff=1:IEEE_arithmetic=3' # -funsafe-math-optimizations' |
FOPTIM='-O3 -LNO:fusion=2 -OPT:roundoff=1:IEEE_arithmetic=3' # -funsafe-math-optimizations' |
42 |
else |
else |
43 |
# Try to follow IEEE-754 |
if test "x$DEVEL" = x ; then #- no optimisation + IEEE : |
44 |
FOPTIM='-O3 -LNO:fusion=2 -OPT:roundoff=0:IEEE_arithmetic=1 -fmath-errno -fno-fast-math' |
FOPTIM='-O0 -OPT:roundoff=0:IEEE_arithmetic=1 -fmath-errno -fno-fast-math' |
45 |
|
else #- development/check options: |
46 |
|
FFLAGS="$FFLAGS -ffortran-bounds-check -trapuv -g" |
47 |
|
FOPTIM='-O0 -OPT:roundoff=0:IEEE_arithmetic=1 -fmath-errno -fno-fast-math' |
48 |
|
fi |
49 |
fi |
fi |
50 |
|
|
51 |
F90FLAGS=$FFLAGS |
F90FLAGS=$FFLAGS |
52 |
F90OPTIM=$FOPTIM |
F90OPTIM=$FOPTIM |
53 |
CFLAGS='-O3 -m64 -fPIC' |
CFLAGS='-O0 -m64 -fPIC' |
54 |
GSLLIB='-lgsl -lgslcblas' |
GSLLIB='-lgsl -lgslcblas' |
55 |
|
|
56 |
if [ "x$NETCDF_ROOT" != x ] ; then |
if [ "x$NETCDF_ROOT" != x ] ; then |