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

Diff of /MITgcm/tools/build_options/linux_ia32_g77

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

revision 1.23 by edhill, Fri May 12 19:08:46 2006 UTC revision 1.29 by jmc, Thu Sep 8 23:13:20 2011 UTC
# Line 3  Line 3 
3  #  $Header$  #  $Header$
4  #  $Name$  #  $Name$
5  #  #
6    #  tested on  faulks with gcc-g77 v3.4.6 (with FC 6)
7    #  tested with MPI on (old) aces cluster (gcc-g77 3.3.3, FC 2), using:
8    #       module add mpich/gnu
9    #       export MPI_INC_DIR=/usr/local/pkg/mpich/mpich-gcc/include
10    
11    if test "x$MPI" = xtrue ; then
12      CC='mpicc'
13      FC='mpif77'
14      LINK=$FC
15    else
16      CC='gcc'
17      FC='g77'
18      LINK=$FC
19    fi
20    
21    DEFINES='-D_BYTESWAPIO -DWORDLENGTH=4 -DNML_EXTENDED_F77'
 FC=g77  
 CC=gcc  
 DEFINES='-D_BYTESWAPIO -DWORDLENGTH=4'  
 # CPP='gcc -E -traditional -P -'  
22  CPP='cpp  -traditional -P'  CPP='cpp  -traditional -P'
23    EXTENDED_SRC_FLAG='-ffixed-line-length-132'
24    GET_FC_VERSION="--version"
25    
26  NOOPTFLAGS='-O0'  NOOPTFLAGS='-O0'
27    NOOPTFILES=''
28    
29  if test "x$IEEE" = x ; then  has_sse2=f
30      #  No need for IEEE-754  grep flags /proc/cpuinfo | grep sse2 > /dev/null 2>&1  &&  has_sse2=t
     FFLAGS='-Wimplicit -Wunused -Wuninitialized'  
     FOPTIM='-O3 -malign-double -funroll-loops'  
 else  
     #  Try to follow IEEE-754  
     has_sse2=f  
     grep flags /proc/cpuinfo | grep sse2 > /dev/null 2>&1  &&  has_sse2=t  
31    
32      # older OS on sea.mit.edu does not support sse  FFLAGS="$FFLAGS -Wimplicit -Wunused"
     if [ `uname -n` = "sea" ]; then has_sse2=f; fi  
33    
34    if test "x$IEEE" = x ; then     #- with optimisation:
35       #- note(jmc): on aces, sse & sse2 are faster; -O3 is not always faster than -O2
36      if test "x$has_sse2" = xt ; then      if test "x$has_sse2" = xt ; then
37          FFLAGS='-Wimplicit -Wunused -mfpmath=sse -msse -msse2'          FFLAGS="$FFLAGS -mfpmath=sse -msse -msse2"
38        fi
39       #FOPTIM='-O3 -malign-double -funroll-loops'
40       # Problems with "-funroll-loops" for some set-up, e.g. tutorial_held_suarez_cs
41        FOPTIM='-O3 -malign-double'
42    else                            #- no optimisation + IEEE :
43        if test "x$has_sse2" = xt ; then
44            FFLAGS="$FFLAGS -mfpmath=sse -msse -msse2"
45      else      else
46          FFLAGS='-Wimplicit -Wunused -ffloat-store'          FFLAGS="$FFLAGS -ffloat-store"
47      fi      fi
     #  echo 'FFLAGS="'$FFLAGS'"'  
48      FOPTIM='-O0 -malign-double'      FOPTIM='-O0 -malign-double'
49  fi  fi
50    
51    CFLAGS="-O0"
52    GSLINC=''
53    GSLLIB='-lgsl -lgslcblas'
54    PAPIINC='-I/usr/local/pkg/papi/papi-3.0.8.1/p4/include'
55    PAPILIB='-L/usr/local/pkg/papi/papi-3.0.8.1/p4/lib -lpapi'
56    
57    INCLUDEDIRS=''
58    INCLUDES=''
59    LIBS=''
60    
61  if test -d /usr/include/netcdf-3 ; then  if test -d /usr/include/netcdf-3 ; then
62      INCLUDES='-I/usr/include/netcdf-3'      INCLUDES='-I/usr/include/netcdf-3'
63      if test -d /usr/lib/netcdf-3 ; then      if test -d /usr/lib/netcdf-3 ; then
# Line 48  elif test -d /usr/local/netcdf ; then Line 73  elif test -d /usr/local/netcdf ; then
73      INCLUDES='-I/usr/local/netcdf/include'      INCLUDES='-I/usr/local/netcdf/include'
74      LIBS='-L/usr/local/netcdf/lib'      LIBS='-L/usr/local/netcdf/lib'
75  fi  fi
 GSLINC=''  
 GSLLIB='-lgsl -lgslcblas'  
 PAPIINC='-I/usr/local/pkg/papi/papi-3.0.8.1/p4/include'  
 PAPILIB='-L/usr/local/pkg/papi/papi-3.0.8.1/p4/lib -lpapi'  
76    
77    if [ -n "$MPI_INC_DIR" -a "x$MPI" = xtrue ] ; then
78        INCLUDES="$INCLUDES -I$MPI_INC_DIR"
79        INCLUDEDIRS="$INCLUDEDIRS $MPI_INC_DIR"
80    #   MPIINCLUDEDIR="$MPI_INC_DIR"
81    #   MPI_HEADER_FILES='mpif.h mpiof.h'
82    #   MPI_HEADER_FILES_INC='./mpi_headers/mpif.h ./mpi_headers/mpiof.h'
83    fi

Legend:
Removed from v.1.23  
changed lines
  Added in v.1.29

  ViewVC Help
Powered by ViewVC 1.1.22