/[MITgcm]/MITgcm/tools/build_options/linux_amd64_gfortran
ViewVC logotype

Diff of /MITgcm/tools/build_options/linux_amd64_gfortran

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.17 by jmc, Sun Mar 18 22:46:08 2012 UTC revision 1.25 by jahn, Mon Jun 9 15:57:31 2014 UTC
# Line 11  Line 11 
11  # OpenMP : Tested on dickens with gcc-gfortran v4.3.2 as shipped with FC 10  # OpenMP : Tested on dickens with gcc-gfortran v4.3.2 as shipped with FC 10
12  #              on baudelaire with gcc-gfortran v4.4.5 as shipped with FC 13  #              on baudelaire with gcc-gfortran v4.4.5 as shipped with FC 13
13  #              on danton     with gcc-gfortran v4.5.1 as shipped with FC 14  #              on danton     with gcc-gfortran v4.5.1 as shipped with FC 14
14    #                            with gcc-gfortran v4.7.x as shipped with FC 17
15    #                            with gcc-gfortran v4.8.1 as shipped with FC 19
16  #              on acesgrid   with gcc-gfortran v4.6.0 as shipped with FC 15  #              on acesgrid   with gcc-gfortran v4.6.0 as shipped with FC 15
17  #  #
18  # MPI : Tested on acesgrid (Fedora Core 15), using:  # MPI : Tested on acesgrid (Fedora Core 15), using:
# Line 25  Line 27 
27  #       export MPI_GCC_DIR=/srv/software/gcc/gcc-packages/gcc-4.4.5/mpich2/mpich2-1.3  #       export MPI_GCC_DIR=/srv/software/gcc/gcc-packages/gcc-4.4.5/mpich2/mpich2-1.3
28  #       export MPI_INC_DIR=$MPI_GCC_DIR/include  #       export MPI_INC_DIR=$MPI_GCC_DIR/include
29  #       export PATH=$MPI_GCC_DIR/bin:$PATH  #       export PATH=$MPI_GCC_DIR/bin:$PATH
30    #
31    # and on IRIDIS at Southampton
32    # http://www.southampton.ac.uk/isolutions/computing/hpc/iridis/
33    #    with
34    #       module load openmpi/1.4.3/gcc-4.3.3
35    #    and
36    #       export MPI_INC_DIR=$MPIROOT/include
37    
38  #-------  #-------
39  # run with OpenMP: needs to set environment var. OMP_NUM_THREADS  # run with OpenMP: needs to set environment var. OMP_NUM_THREADS
# Line 48  else Line 57  else
57  fi  fi
58    
59  DEFINES='-DWORDLENGTH=4 -DNML_TERMINATOR'  DEFINES='-DWORDLENGTH=4 -DNML_TERMINATOR'
 CPP='cpp -traditional -P'  
60  EXTENDED_SRC_FLAG='-ffixed-line-length-132'  EXTENDED_SRC_FLAG='-ffixed-line-length-132'
61  F90FIXEDFORMAT='-ffixed-form'  F90FIXEDFORMAT='-ffixed-form'
62  GET_FC_VERSION="--version"  GET_FC_VERSION="--version"
# Line 57  OMPFLAG='-fopenmp' Line 65  OMPFLAG='-fopenmp'
65  NOOPTFLAGS='-O0'  NOOPTFLAGS='-O0'
66  NOOPTFILES=''  NOOPTFILES=''
67    
68  # Requires gfortran from 2006 onwards for -fconvert=big-endian  CFLAGS='-O0'
69    #- Requires gfortran from 2006 onwards for -fconvert=big-endian
70  FFLAGS="$FFLAGS -fconvert=big-endian -fimplicit-none"  FFLAGS="$FFLAGS -fconvert=big-endian -fimplicit-none"
71  # for big objects:  #- for big setups, compile & link with "-fPIC" or set memory-model to "medium":
72  FFLAGS="$FFLAGS -fPIC"  #CFLAGS="$CFLAGS -fPIC"
73    #FFLAGS="$FFLAGS -fPIC"
74    #-  with FC 19, need to use this without -fPIC (which cancels -mcmodel option):
75     CFLAGS="$CFLAGS -mcmodel=medium"
76     FFLAGS="$FFLAGS -mcmodel=medium"
77  #- might want to use '-fdefault-real-8' for fizhi pkg:  #- might want to use '-fdefault-real-8' for fizhi pkg:
78  #FFLAGS="$FFLAGS -fdefault-real-8"  #FFLAGS="$FFLAGS -fdefault-real-8 -fdefault-double-8"
79    
80  if test "x$IEEE" = x ; then     #- with optimisation:  if test "x$IEEE" = x ; then     #- with optimisation:
81     #- full optimisation     #- full optimisation
# Line 72  if test "x$IEEE" = x ; then     #- with Line 85  if test "x$IEEE" = x ; then     #- with
85     #FOPTIM='-O2 -funroll-loops'     #FOPTIM='-O2 -funroll-loops'
86  else  else
87     # these may also be useful, but require specific gfortran versions:     # these may also be useful, but require specific gfortran versions:
88     # -Wnonstd-intrinsics  for gfortran <= 4.3     # -Wnonstd-intrinsics        for gfortran <= 4.3
89     # -Wintrinsics-std     for gfortran >= 4.4     # -Wintrinsics-std           for gfortran >= 4.4
90     # -Wno-tabs            for gfortran >= 4.3     # -Wno-tabs                  for gfortran >= 4.3
91      FFLAGS="$FFLAGS -Waliasing -Wampersand -Wsurprising -Wline-truncation"     # -Wno-unused-dummy-argument for gfortran >= 4.6
92       #FFLAGS="$FFLAGS -Waliasing -Wampersand -Wsurprising -Wline-truncation"
93       #- or simply:
94        FFLAGS="$FFLAGS -Wall -Wno-unused-dummy-argument"
95     #- to get plenty of warnings: -Wall -Wextra (older form: -Wall -W) or:     #- to get plenty of warnings: -Wall -Wextra (older form: -Wall -W) or:
96     #FFLAGS="$FFLAGS -Wconversion -Wimplicit-interface -Wunused-labels"     #FFLAGS="$FFLAGS -Wconversion -Wimplicit-interface -Wunused-labels"
97    if test "x$DEVEL" = x ; then  #- no optimisation + IEEE :    if test "x$DEVEL" = x ; then  #- no optimisation + IEEE :
# Line 88  fi Line 104  fi
104    
105  F90FLAGS=$FFLAGS  F90FLAGS=$FFLAGS
106  F90OPTIM=$FOPTIM  F90OPTIM=$FOPTIM
 CFLAGS='-O0 -fPIC'  
107    
108  INCLUDEDIRS=''  INCLUDEDIRS=''
109  INCLUDES=''  INCLUDES=''
# Line 132  elif test -d /usr/include/netcdf.inc ; t Line 147  elif test -d /usr/include/netcdf.inc ; t
147      LIBS='-L/usr/lib64'      LIBS='-L/usr/lib64'
148  fi  fi
149    
150    if [ -n "$MPI_HOME" -a -z "$MPI_INC_DIR" ]; then
151        MPI_INC_DIR="$MPI_HOME/include"
152    fi
153  if [ -n "$MPI_INC_DIR" -a "x$MPI" = xtrue ] ; then  if [ -n "$MPI_INC_DIR" -a "x$MPI" = xtrue ] ; then
154      INCLUDES="$INCLUDES -I$MPI_INC_DIR"      INCLUDES="$INCLUDES -I$MPI_INC_DIR"
155      INCLUDEDIRS="$INCLUDEDIRS $MPI_INC_DIR"      INCLUDEDIRS="$INCLUDEDIRS $MPI_INC_DIR"
156        #- used for parallel (MPI) DIVA
157      MPIINCLUDEDIR="$MPI_INC_DIR"      MPIINCLUDEDIR="$MPI_INC_DIR"
158      MPI_HEADER_FILES='mpif.h mpiof.h'     #MPI_HEADER_FILES='mpif.h mpiof.h'
     MPI_HEADER_FILES_INC='./mpi_headers/mpif.h ./mpi_headers/mpiof.h'  
159  fi  fi

Legend:
Removed from v.1.17  
changed lines
  Added in v.1.25

  ViewVC Help
Powered by ViewVC 1.1.22