[Dart-dev] [5956] DART/branches/development/mkmf: clean up flags and descriptions for the intel ifort compiler,

nancy at ucar.edu nancy at ucar.edu
Wed Feb 13 10:15:12 MST 2013


Revision: 5956
Author:   nancy
Date:     2013-02-13 10:15:11 -0700 (Wed, 13 Feb 2013)
Log Message:
-----------
clean up flags and descriptions for the intel ifort compiler,
and remove files for obsolete combinations/machines.

Modified Paths:
--------------
    DART/branches/development/mkmf/mkmf.template
    DART/branches/development/mkmf/mkmf.template.intel.linux

Removed Paths:
-------------
    DART/branches/development/mkmf/mkmf.template.Hamburg
    DART/branches/development/mkmf/mkmf.template.nec
    DART/branches/development/mkmf/mkmf.template.sgi.mips
    DART/branches/development/mkmf/mkmf.template.t3e
    DART/branches/development/mkmf/mkmf.template.t90
    DART/branches/development/mkmf/mkmf.template.xlf.osx

-------------- next part --------------
Modified: DART/branches/development/mkmf/mkmf.template
===================================================================
--- DART/branches/development/mkmf/mkmf.template	2013-02-07 18:10:55 UTC (rev 5955)
+++ DART/branches/development/mkmf/mkmf.template	2013-02-13 17:15:11 UTC (rev 5956)
@@ -1,4 +1,4 @@
-# Template for GNU gfortran on Linux or Mac OSX
+# Template for Intel Fortran Compiler on Linux clusters and workstations.
 #
 # DART software - Copyright 2004 - 2011 UCAR. This open source software is
 # provided by UCAR, "as is", without charge, subject to all terms of use at
@@ -11,75 +11,103 @@
 # $Date$
 
 # typical use with mkmf
-# mkmf -t mkmf.template.xxxx -c"-Duse_netCDF" ...
+# mkmf -t mkmf.template.xxxx ...
 #
-# Most likely NETCDF (and maybe LIBS) will need to be customized for your site
+# If NETCDF is set in your environment you do not need to set it here.
+# If you need additional libraries you may need to adjust LIBS below.
 #
-# 
-# Building DART with open-source software:
-# 
-# All the parts (except matlab, which is optional and only used to display results)
-# needed to build and run the DART package are now possible to get free from 
-# the open-source community.  To compile and run DART, you will need:
-# 
+# FFLAGS   useful for debugging
+#     -g       include debugging information.  these are all synonyms.
+#     -debug full
+#     -debug all
+#     -O0      setting -g will make this the default (no optimization).  
+#              it is possible to set -g and then explicitly set -O2 if 
+#              the behavior being debugged depends on optimization changes.
+#     -ftrapuv   traps if a local variable is used before being set
+#     -C       enables all runtime checks.  -C and -check all are synonyms.
+#     -check all
+#     -check <keywords>    enables/disables more specific runtime checks.
+#           keywords:  [arg_temp_created,bounds,overflow,format,pointers,uninit]
+#     -warn <keywords>  the level of warning messages issued.
+#           keywords:  [alignments, argument_checking, declarations,
+#                      errors, fileopt, general, ignore_loc, 
+#                      stderrors, truncated_source, uncalled,
+#                      uninitialized, unused, usage, all]
+#     -fp-stack-check  catches conditions where the FP stack is not correct.
+#           Typically this is when a real function is called as if it were a
+#           subroutine, OR a subroutine is called as if it were a function (return
+#           values left of FP stack OR too much data is taken off the FP stack)
+#     -vec-reportN  controls how much diagnostic output is printed about
+#                   loops vectorized by the compiler. N = 0 is silent,
+#                   N can have values up to 5.
 #
-# 1. The GNU GCC 4.2.0 version of the gfortran compiler.  See this web page for
-#    information on supported platforms and downloads: 
-#      http://gcc.gnu.org/wiki/GFortran
-# 
-#    (Note that there is a separate G95 project which distributes an alternate
-#    open-source fortran distribution, and I have heard that others have 
-#    successfully compiled other fortran code with that compiler, but we have
-#    not tried it with DART yet.)
-# 
-# 
-# 2. The netCDF software library package.  See:
-#      http://www.unidata.ucar.edu/software/netcdf
-# 
-#    The 3.6.2 version compiled for us with this:
-# 
-#     ./configure CC=gcc FC=gfortran
-#     make check
-#     make install
+# FFLAGS   useful for bitwise reproducibility and accuracy control
+#          (these will certainly slow down performance)
+#     -fp-model precise    more rigorous numerics in the face of optimization
+#                          (in my limited tests this is sufficient by itself to
+#                          create bitwise reproducible runs)
+#     -fpeN       controls floating point exception handling.  -fpe0 recommended.
+#     -ftz        'flush to zero' underflows result in zero.  set by default if
+#                 any -O other than -O0 set, or if -fpe0 or -fpe1 set.
+#     -pc80       set internal FPU precision to 64 bit significand
+#                 (default is -pc64 with 53 internal bits)
 #
-#    You can add the argument --prefix=/dir to configure to make the install
-#    location for the includes and libs someplace other than /usr/local.
-# 
-# 
-# If you want to try the *optional* parallel execution option, you will
-# need a version of the MPI libs.  There are at least two open source options:
+# FFLAGS   useful for production
+#     -O2        default.  optimize without too much unrepeatable numerical games
+#     -O3,-O4    more aggressive optimizations.  check numerical differences
+#                before using these indiscriminately.
+#     -heap-arrays 10    allocate arrays from the heap instead of putting them
+#                on the stack.  the number is the limit in KB for when arrays
+#                move from the stack to the heap.  this can help if you get stack
+#                overflow errors and cannot increase the stack size more.
+#     -x, -m, -ax, -mcode, -march   all these flags tell the compiler to generate
+#                processor-specific or vector instructions.  either 'man ifort' or
+#                ifort --help to see what the current list of options are and
+#                which have priority over the others.
 #
-# 3. For parallel execution, OpenMPI 1.2 from:
-#       http://www.open-mpi.org/
+# FFLAGS   possibly useful, not normally used by DART 
+#     -fpp     run Fortran preprocessor on source files prior to compilation
+#     -free    interpret source as free-format, regardless of file extension
+#     -r8      specify default real size.  note that for DART we use explicit
+#              types on all our real values so this will not change anything
+#              inside DART.   see DART/common/types_mod.f90 if you must run
+#              with single precision reals.
+#     -convert big_endian         useful if you're on the wrong architecture.
+#              however this controls both reading and writing so you can't
+#              use it as a conversion mechanism unless you write files out
+#              in ascii format.  applies to all unformatted fortran i/o.
+#     -assume  byterecl ... more 'industry-standard' direct-access behavior
+#              controls what units the RECL (record length) specifier returns.
 #
-#     or mpich from:
-#       http://http://www-unix.mcs.anl.gov/mpi/mpich/
 #
-# Note that MPI IS NOT REQUIRED to build and run DART.  
-#
-# 
-# Possibly useful flags:
-#
-# -ffree-form          forces input file to be read as free format regardless 
-#                      of what file extension is has.
-#
-# -fdefault-real-8     force all real variables to be real*8.
-#
-# 
+# The PBL_1d model needs this flag added to whatever others are used:
+#FFLAGS = -r8 
 
 MPIFC = mpif90
 MPILD = mpif90
-FC = gfortran
-LD = gfortran
+FC = ifort
+LD = ifort
 
-# if $NETCDF in your environment is set to the location of the
-# include and lib directories, you are ok.  otherwise set the
-# next line to the location and uncomment it.
-# NETCDF = /usr/local
+# If your NETCDF environment variable is not set correctly, 
+# uncomment the following line and set value to where lib and include
+# are found for the netcdf files that match this compiler.
+# 
+# If you get an error about libnetcdff (note 2 f's) not found,
+# remove it from the libs line.  when building netcdf there are
+# options to put all the fortran interfaces into a separate library
+# and so there's no way to know ahead of time how the lib was
+# configured - single lib with all code, or two separate libs.
+#
+# NETCDF = /contrib/netcdf
 
-INCS = ${NETCDF}/include
-FFLAGS = -O2 -I$(INCS) -ffree-line-length-none
+INCS = -I$(NETCDF)/include
+LIBS = -L$(NETCDF)/lib -lnetcdff -lnetcdf
+FFLAGS  = -O3 -axavx -ipo -vec-report0 $(INCS)
+LDFLAGS = $(FFLAGS) $(LIBS)
 
-LIBS = -L${NETCDF}/lib -lnetcdf -lnetcdff
-LDFLAGS = -I$(INCS) $(LIBS)
+# for development or debugging, use this instead:
+# FFLAGS = -g -C -check noarg_temp_created -fpe0 -vec-report0 -fp-model precise  \
+#        -warn argument_checking,declarations,uncalled,unused -ftrapuv $(INCS)
+# Some optimized (BLAS, LAPACK) libraries may be available with:
+# LIBS = -L$(NETCDF)/lib -lnetcdf -lnetcdff -lmkl -lmkl_lapack -lguide -lpthread
 

Deleted: DART/branches/development/mkmf/mkmf.template.Hamburg
===================================================================
--- DART/branches/development/mkmf/mkmf.template.Hamburg	2013-02-07 18:10:55 UTC (rev 5955)
+++ DART/branches/development/mkmf/mkmf.template.Hamburg	2013-02-13 17:15:11 UTC (rev 5956)
@@ -1,91 +0,0 @@
-# Template for Intel 9.x Fortran Compiler on Linux clusters
-#   and workstations
-#
-# DART software - Copyright 2004 - 2011 UCAR. This open source software is
-# provided by UCAR, "as is", without charge, subject to all terms of use at
-# http://www.image.ucar.edu/DAReS/DART/DART_download
-#
-# <next few lines under version control, do not edit>
-# $URL$
-# $Id$
-# $Revision$
-# $Date$
-
-# typical use with mkmf
-# mkmf -t mkmf.template.xxxx -c"-Duse_netCDF" ...
-#
-# NETCDF and LIBS may need to be customized for your site.
-#
-# If you have multiple machines to compile on and the only difference is
-# where NETCDF is installed, you can comment NETCDF out of this template
-# file and set it as an environment variable.
-#
-# FFLAGS   use when you like, if you must
-#     -fpp     run Fortran preprocessor on source files prior to compilation
-#     -free    interpret source as free-format, regardless of file extension
-#     -r8      specify default real size ...
-#     -convert big_endian         useful if you're on the wrong architecture
-#     -assume  byterecl ... more 'industry-standard' direct-access behavior
-#
-# FFLAGS   useful for debugging
-#     -C       (partially) enable extensive runtime error checking
-#     -g       include symbol table
-#     -check all       [bounds,overflow,format,args]
-#     -check noarg_temp_created   turns off this one
-#     -[no]warn <keywords>
-#           specifies the level of warning messages issued.
-#           keywords:  [no]alignments, [no]argument_checking, [no]declarations,
-#                      [no]errors, [no]fileopt, [no]general, [no]ignore_loc, 
-#                      [no]stderrors, [no]truncated_source, [no]uncalled,
-#                      [no]uninitialized, [no]unused, [no]usage
-#     -fpstkchk  catches conditions where the FP stack is not correct.
-#     Typically this is when a real function is called as if it were a
-#     subroutine, OR a subroutine is called as if it were a function (return
-#     values left of FP stack OR too much data is taken off the FP stack)
-#
-# FFLAGS   useful for benchmarking
-#     -O0      disable optimizations
-#     -pc64    set internal FPU precision to 53 bit significand
-#     -fpe0    underflows result in zero; all other exceptions abort
-#
-# FFLAGS   useful for production
-#     -O2      optimize
-#     -mp      maintain precision in the face of optimization
-#
-# Just for reference, this template has been used with these versions
-# of the fortran compiler.
-#
-# Compiler Information (ifort -V):  [dart, fisher]
-#    Intel(R) Fortran Compiler for 32-bit applications, Version 9.0
-#    Build 20051201Z Package ID: l_fc_c_9.0.031
-#    Copyright (C) 1985-2005 Intel Corporation.  All rights reserved.
-#    FOR NON-COMMERCIAL USE ONLY
-#
-# Compiler Information (ifort -V):  [coral]
-#    Intel(R) Fortran Compiler for Intel(R) EM64T-based applications, Version 9.0
-#    Build 20051020 
-#    Copyright (C) 1985-2005 Intel Corporation.  All rights reserved.
-#
-# Compiler Information (ifort -V):  [lightning]
-#    Intel(R) Fortran Compiler for Intel(R) EM64T-based applications, Version 8.1
-#    Build 20050406 Package ID: l_fce_pc_8.1.027
-#    Copyright (C) 1985-2005 Intel Corporation.  All rights reserved.
-#
-#
-# The PBL_1d model needs this flag added to whatever others are used:
-#FFLAGS = -r8 
-
-MPIFC = mpif90
-MPILD = mpif90
-FC = ifort
-LD = ifort
-
-# If your NETCDF environment variable is not set correctly, 
-# uncomment the following line and set value properly. 
-NETCDF = /sw/etch-ia32/netcdf-3.6.2-intel
-
-INCS = -I$(NETCDF)/include
-LIBS = -L$(NETCDF)/lib -lnetcdff -lnetcdf
-FFLAGS  = -O2 -fpe0 -vec-report0 $(INCS)
-LDFLAGS = $(FFLAGS) $(LIBS) -static
-

Modified: DART/branches/development/mkmf/mkmf.template.intel.linux
===================================================================
--- DART/branches/development/mkmf/mkmf.template.intel.linux	2013-02-07 18:10:55 UTC (rev 5955)
+++ DART/branches/development/mkmf/mkmf.template.intel.linux	2013-02-13 17:15:11 UTC (rev 5956)
@@ -11,48 +11,85 @@
 # $Date$
 
 # typical use with mkmf
-# mkmf -t mkmf.template.xxxx -c"-Duse_netCDF" ...
+# mkmf -t mkmf.template.xxxx ...
 #
-# NETCDF and LIBS may need to be customized for your site.
+# If NETCDF is set in your environment you do not need to set it here.
+# If you need additional libraries you may need to adjust LIBS below.
 #
-# If you have multiple machines to compile on and the only difference is
-# where NETCDF is installed, you can comment NETCDF out of this template
-# file and set it as an environment variable.
+# FFLAGS   useful for debugging
+#     -g       include debugging information.  these are all synonyms.
+#     -debug full
+#     -debug all
+#     -O0      setting -g will make this the default (no optimization).  
+#              it is possible to set -g and then explicitly set -O2 if 
+#              the behavior being debugged depends on optimization changes.
+#     -ftrapuv   traps if a local variable is used before being set
+#     -C       enables all runtime checks.  -C and -check all are synonyms.
+#     -check all
+#     -check <keywords>    enables/disables more specific runtime checks.
+#           keywords:  [arg_temp_created,bounds,overflow,format,pointers,uninit]
+#     -warn <keywords>  the level of warning messages issued.
+#           keywords:  [alignments, argument_checking, declarations,
+#                      errors, fileopt, general, ignore_loc, 
+#                      stderrors, truncated_source, uncalled,
+#                      uninitialized, unused, usage, all]
+#     -fp-stack-check  catches conditions where the FP stack is not correct.
+#           Typically this is when a real function is called as if it were a
+#           subroutine, OR a subroutine is called as if it were a function (return
+#           values left of FP stack OR too much data is taken off the FP stack)
+#     -vec-reportN  controls how much diagnostic output is printed about
+#                   loops vectorized by the compiler. N = 0 is silent,
+#                   N can have values up to 5.
 #
-# FFLAGS   use when you like, if you must
+# FFLAGS   useful for bitwise reproducibility and accuracy control
+#          (these will slow down performance to various degrees)
+#     -fp-model precise    control how floating point roundoff is done so it is
+#                          reproducible from run to run.  in simple tests this
+#                          flag alone was enough to create bitwise reproducible
+#                          code but slowed execution significantly.
+#     -ftz        'flush to zero' underflows result in zero.  set by default if
+#                 any -O other than -O0 set, or if -fpe0 or -fpe1 set.
+#     -fpeN       controls floating point exception handling.  -fpe0 rounds underflow
+#                 to zero and traps on any other exception type.
+#     -pc80       set internal FPU precision to 64 bit significand
+#                 (default is -pc64 with 53 internal bits)
+#
+# FFLAGS   useful for production
+#     -O2        default.  optimize without too much unrepeatable numerical games
+#     -O3        more aggressive optimizations.  check numerical differences
+#                before using this indiscriminately.
+#     -O1        if you get compile-time errors about out of memory or unable to
+#                complete compilation because of complexity, try lowering the
+#                optimization level on the offending source files.
+#     -ipo       enable optimizations between routines in separate source files
+#     -heap-arrays 10    allocate large arrays from the heap instead of putting them
+#                on the stack.  the number is the limit in KB for when arrays
+#                move from the stack to the heap.  this can help if you get stack
+#                overflow errors and cannot increase the stack size more.
+#                allocating from the stack is faster, but it's usually a smaller
+#                size than the heap.
+#     -x, -m, -ax, -mcode, -march   all these flags tell the compiler to generate
+#                processor-specific or vector instructions.  either 'man ifort' or
+#                ifort --help to see what the current list of options are and
+#                which have priority over the others.
+#                (for those running on yellowstone, -axavx will enable the advanced
+#                vector instructions available on the sandy bridge processors.)
+#
+# FFLAGS   possibly useful, not normally used by DART 
 #     -fpp     run Fortran preprocessor on source files prior to compilation
 #     -free    interpret source as free-format, regardless of file extension
-#     -r8      specify default real size ...
-#     -convert big_endian         useful if you're on the wrong architecture
+#     -r8      specify default real size.  note that for DART we use explicit
+#              types on all our real values so this will not change anything
+#              inside DART.   see DART/common/types_mod.f90 if you must run
+#              with single precision reals.
+#     -convert big_endian         useful if you're on the wrong architecture.
+#              however this controls both reading and writing so you can't
+#              use it as a conversion mechanism unless you write files out
+#              in ascii format.  applies to all unformatted fortran i/o.
 #     -assume  byterecl ... more 'industry-standard' direct-access behavior
+#              controls what units the RECL (record length) specifier returns.
 #
-# FFLAGS   useful for debugging
-#     -C       (partially) enable extensive runtime error checking
-#     -g       include symbol table
-#     -check all       [bounds,overflow,format,args]
-#     -check noarg_temp_created   turns off this one
-#     -[no]warn <keywords>
-#           specifies the level of warning messages issued.
-#           keywords:  [no]alignments, [no]argument_checking, [no]declarations,
-#                      [no]errors, [no]fileopt, [no]general, [no]ignore_loc, 
-#                      [no]stderrors, [no]truncated_source, [no]uncalled,
-#                      [no]uninitialized, [no]unused, [no]usage
-#     -fpstkchk  catches conditions where the FP stack is not correct.
-#     Typically this is when a real function is called as if it were a
-#     subroutine, OR a subroutine is called as if it were a function (return
-#     values left of FP stack OR too much data is taken off the FP stack)
 #
-# FFLAGS   useful for benchmarking
-#     -O0                  disable optimizations
-#     -pc64                set internal FPU precision to 53 bit significand
-#     -ftz                 'flush to zero' underflows result in zero
-#     -fp-model precise    more rigorous numerics in the face of optimization
-#
-# FFLAGS   useful for production
-#     -O2        optimize without too much unrepeatable numerical games
-#     -x [WPTO]  generates specialized code to run exclusively on processors ...
-#                check   ifort --help    for a list of options/processors
-#
 # The PBL_1d model needs this flag added to whatever others are used:
 #FFLAGS = -r8 
 
@@ -62,18 +99,35 @@
 LD = ifort
 
 # If your NETCDF environment variable is not set correctly, 
-# uncomment the following line and set value properly. 
+# uncomment the following line and set value to where lib and include
+# are found for the netcdf files that match this compiler.
+# 
+# If you get an error about libnetcdff (note 2 f's) not found,
+# remove it from the libs line.  when building netcdf there are
+# configure options to put all the fortran interfaces into a 
+# separate library from the base lib, or build one larger library.
+# so each system can be different depending on who built
+# the netcdf libs.
+#
 # NETCDF = /contrib/netcdf
 
 INCS = -I$(NETCDF)/include
-LIBS = -L$(NETCDF)/lib -lnetcdf
-FFLAGS  = -O2 -ftz -vec-report0 $(INCS)
+LIBS = -L$(NETCDF)/lib -lnetcdff -lnetcdf
+FFLAGS  = -O -vec-report0 $(INCS)
 LDFLAGS = $(FFLAGS) $(LIBS)
 
 # for development or debugging, use this instead:
-# FFLAGS = -C -check noarg_temp_created -ftz -vec-report0 -fp-model precise -O0 -g \
-#        -warn argument_checking,declarations,uncalled,unused -debug full -ftrapuv $(INCS)
-# FFLAGS = -ftz -vec-report0 -O3 -g $(INCS)
+# FFLAGS = -g -C -check noarg_temp_created -fpe0 -vec-report0 -fp-model precise  \
+#        -warn argument_checking,declarations,uncalled,unused -ftrapuv $(INCS)
+#
+# for speed on yellowstone (verify against a run with with -O and -fp-model precise 
+#        that the numerical differences aren't too large to be acceptable):
+# FFLAGS = -O3 -axavx -ipo -vec-report0 $(INCS)
+#
 # Some optimized (BLAS, LAPACK) libraries may be available with:
-# LIBS = -L$(NETCDF)/lib -lnetcdf -lmkl -lmkl_lapack -lguide -lpthread
+# LIBS = -L$(NETCDF)/lib -lnetcdff -lnetcdf -lmkl -lmkl_lapack -lguide -lpthread
+#
+# If you get this error: libimf.so: warning: warning: feupdateenv is not implemented 
+# try adding: -limf -lm to your LIBS line.
 
+

Deleted: DART/branches/development/mkmf/mkmf.template.nec
===================================================================
--- DART/branches/development/mkmf/mkmf.template.nec	2013-02-07 18:10:55 UTC (rev 5955)
+++ DART/branches/development/mkmf/mkmf.template.nec	2013-02-13 17:15:11 UTC (rev 5956)
@@ -1,105 +0,0 @@
-# Template for SX cross compiler
-#
-# DART software - Copyright 2004 - 2011 UCAR. This open source software is
-# provided by UCAR, "as is", without charge, subject to all terms of use at
-# http://www.image.ucar.edu/DAReS/DART/DART_download
-#
-# <next few lines under version control, do not edit>
-# $URL$
-# $Id$
-# $Revision$
-# $Date$
-
-# typical use with mkmf
-# mkmf -t mkmf.template.xxxx -c"-Duse_netCDF" ...
-#
-# NETCDF and LIBS needs to be customized for your site
-#
-# WARNING -- this is untested with the DART software (no access to a platform)
-#
-MPIFC = sxmpif90
-MPILD = sxmpif90
-FC = sxmpif90
-LD = sxmpif90
-CC = sxmpic++
-
-# If your NETCDF environment variable is not set correctly, 
-# uncomment the following line and set value properly. 
-NETCDF = /opt/sx/netcdf
-
-CPPFLAGS = -D__SXdbl4
-FFLAGS = -dw -Wf"-A dbl4" -R2 -ts. -Pmulti -Chopt -I$(NETCDF)/include
-CFLAGS = -Xa
-#FFLAGS = -Wf"-init stack=zero" -Wf,-pvctl,fullmsg
-LDFLAGS = -Pmulti $(LIBS)
-LIST = -R2
-# LIBS needs to be customized per site
-LIBS = $(TOTALVIEW) -L$(NETCDF)/lib -lnetcdf_r8i4
-
-# you should never need to change any lines below.
-
-# see the SX F90 manual for more details on some of the file extensions
-# discussed here.
-# this makefile template recognizes fortran sourcefiles with extensions
-# .f, .f90, .F, .F90. Given a sourcefile <file>.<ext>, where <ext> is one of
-# the above, this provides a number of default actions:
-
-# make <file>.T		create a CIF file
-# make <file>.L		create a compiler listing
-# make <file>.o		create an object file
-# make <file>.s		create an assembly listing
-# make <file>.x		create an executable file, assuming standalone
-#			source
-
-# The macro TMPFILES is provided to slate files like the above for removal.
-
-RM = rm -f
-SHELL = /bin/csh
-TMPFILES = *.L i.* *.s *.mod
-
-.SUFFIXES: .F .F90 .L .T .f .f90 .h .o .s .x
-
-.f.L:
-	$(FC) $(FFLAGS) -c $(LIST) $*.f
-.f.T:
-	$(FC) $(FFLAGS) -c -cif $*.f
-.f.o:
-	$(FC) $(FFLAGS) -c $*.f
-.f.s:
-	$(FC) $(FFLAGS) -S $*.f
-.f.x:
-	$(FC) $(FFLAGS) -o $*.x $*.f *.o $(LDFLAGS)
-.f90.L:
-	$(FC) $(FFLAGS) -c $(LIST) $*.f90
-.f90.T:
-	$(FC) $(FFLAGS) -c -cif $*.f90
-.f90.o:
-	$(FC) $(FFLAGS) -c $*.f90
-.f90.s:
-	$(FC) $(FFLAGS) -c -S $*.f90
-.f90.x:
-	$(FC) $(FFLAGS) -o $*.x $*.f90 *.o $(LDFLAGS)
-.F.L:
-	$(FC) $(CPPDEFS) $(CPPFLAGS) $(FFLAGS) -c $(LIST) $*.F
-.F.T:
-	$(FC) $(CPPDEFS) $(CPPFLAGS) $(FFLAGS) -c -cif $*.F
-.F.f:
-	$(CPP) $(CPPDEFS) $(CPPFLAGS) $*.F > $*.f
-.F.o:
-	$(FC) $(CPPDEFS) $(CPPFLAGS) $(FFLAGS) -c $*.F
-.F.s:
-	$(FC) $(CPPDEFS) $(CPPFLAGS) $(FFLAGS) -c -S $*.F
-.F.x:
-	$(FC) $(CPPDEFS) $(CPPFLAGS) $(FFLAGS) -o $*.x $*.F *.o $(LDFLAGS)
-.F90.L:
-	$(FC) $(CPPDEFS) $(CPPFLAGS) $(FFLAGS) -c $(LIST) $*.F90
-.F90.T:
-	$(FC) $(CPPDEFS) $(CPPFLAGS) $(FFLAGS) -c -cif $*.F90
-.F90.f90:
-	$(CPP) $(CPPDEFS) $(CPPFLAGS) $*.F90 > $*.f90
-.F90.o:
-	$(FC) $(CPPDEFS) $(CPPFLAGS) $(FFLAGS) -c $*.F90
-.F90.s:
-	$(FC) $(CPPDEFS) $(CPPFLAGS) $(FFLAGS) -c -S $*.F90
-.F90.x:
-	$(FC) $(CPPDEFS) $(CPPFLAGS) $(FFLAGS) -o $*.x $*.F90 *.o $(LDFLAGS)

Deleted: DART/branches/development/mkmf/mkmf.template.sgi.mips
===================================================================
--- DART/branches/development/mkmf/mkmf.template.sgi.mips	2013-02-07 18:10:55 UTC (rev 5955)
+++ DART/branches/development/mkmf/mkmf.template.sgi.mips	2013-02-13 17:15:11 UTC (rev 5956)
@@ -1,41 +0,0 @@
-# Template for SGI MIPSpro f90  (this is NOT for SGI Altix clusters;
-#  see the other SGI template file with "altix" in the name)
-#
-# DART software - Copyright 2004 - 2011 UCAR. This open source software is
-# provided by UCAR, "as is", without charge, subject to all terms of use at
-# http://www.image.ucar.edu/DAReS/DART/DART_download
-#
-# <next few lines under version control, do not edit>
-# $URL$
-# $Id$
-# $Revision$
-# $Date$
-
-# typical use with mkmf
-# mkmf -t mkmf.template.xxxx -c"-Duse_netCDF" ...
-#
-# NETCDF and LIBS needs to be customized for your site
-#
-# WARNING -- This file is intended for an SGI running the IRIX system on 
-#   MIPS processors.   This will not work on an SGI Altix cluster running
-#   the Intel compilers. 
-#
-# Compiler Information [f90 -version]:
-#    MIPSpro Compilers: Version 7.4.3m
-#
-
-MPIFC = f90
-MPILD = f90 -lmpi
-FC = f90
-LD = f90 
-
-# NETCDF is location of include (header) files, 
-# NETCDFLIB is location of modules and libs
-
-NETCDF = /usr/local
-NETCDFLIB = /usr/local/lib64/r4i4
-
-INCS = -I$(NETCDFLIB) -I$(NETCDF)/include 
-LIBS = -L$(NETCDFLIB) -lnetcdf
-FFLAGS = -64 -i4 -r8 -O0 $(INCS)
-LDFLAGS = -dont_warn_unused $(FFLAGS) $(LIBS)

Deleted: DART/branches/development/mkmf/mkmf.template.t3e
===================================================================
--- DART/branches/development/mkmf/mkmf.template.t3e	2013-02-07 18:10:55 UTC (rev 5955)
+++ DART/branches/development/mkmf/mkmf.template.t3e	2013-02-13 17:15:11 UTC (rev 5956)
@@ -1,99 +0,0 @@
-# Template for t3e
-#
-# DART software - Copyright 2004 - 2011 UCAR. This open source software is
-# provided by UCAR, "as is", without charge, subject to all terms of use at
-# http://www.image.ucar.edu/DAReS/DART/DART_download
-#
-# <next few lines under version control, do not edit>
-# $URL$
-# $Id$
-# $Revision$
-# $Date$
-
-# typical use with mkmf
-# mkmf -t mkmf.template.xxxx -c"-Duse_netCDF" ...
-#
-# NETCDF and LIBS needs to be customized for your site
-#
-# WARNING -- this is untested with the DART software (no access to a platform)
-#
-
-MPIFC = mpif90
-MPILD = mpif90
-FC = f90
-LD = f90
-CPPFLAGS = -F
-LIST = -O negmsgs -rs
-FFLAGS = -dp -O2,unroll2
-LDFLAGS = -Wl"-Dpreset=nan;streams=on;permok=yes -Xm $(LIBS)"
-
-# you should never need to change any lines below.
-
-# see the CF90 manual for more details on some of the file extensions
-# discussed here.
-# this makefile template recognizes fortran sourcefiles with extensions
-# .f, .f90, .F, .F90. Given a sourcefile <file>.<ext>, where <ext> is one of
-# the above, this provides a number of default actions:
-
-# make <file>.T		create a CIF file
-# make <file>.lst	create a compiler listing
-# make <file>.o		create an object file
-# make <file>.s		create an assembly listing
-# make <file>.x		create an executable file, assuming standalone
-#			source
-
-# make <file>.i		create a preprocessed file (only for .F and .F90
-#			extensions)
-
-# The macro TMPFILES is provided to slate files like the above for removal.
-
-RM = rm -f
-SHELL = /bin/csh
-TMPFILES = .*.m *.T *.TT *.i *.lst *.s
-
-.SUFFIXES: .F .F90 .H .T .f .F90 .h .i .lst .o .s .x
-
-.f.T:
-	$(FC) $(FFLAGS) -c -Ca $*.f
-.f.lst:
-	$(FC) $(FFLAGS) $(LIST) -c $*.f
-.f.o:
-	$(FC) $(FFLAGS) -c     $*.f
-.f.s:
-	$(FC) $(FFLAGS) -eS    $*.f
-.f.x:
-	$(FC) $(FFLAGS) $(LDFLAGS) -o $*.x $*.f
-.f90.T:
-	$(FC) $(FFLAGS) -c -Ca $*.f90
-.f90.lst:
-	$(FC) $(FFLAGS) $(LIST) -c $*.f90
-.f90.o:
-	$(FC) $(FFLAGS) -c     $*.f90
-.f90.s:
-	$(FC) $(FFLAGS) -c -eS $*.f90
-.f90.x:
-	$(FC) $(FFLAGS) $(LDFLAGS) -o $*.x $*.f90
-.F.T:
-	$(FC) $(CPPDEFS) $(CPPFLAGS) $(FFLAGS) -c -Ca $*.F
-.F.i:
-	$(FC) $(CPPDEFS) $(CPPFLAGS) -eP $*.F
-.F.lst:
-	$(FC) $(CPPDEFS) $(CPPFLAGS) $(FFLAGS) $(LIST) -c $*.F
-.F.o:
-	$(FC) $(CPPDEFS) $(CPPFLAGS) $(FFLAGS) -c     $*.F
-.F.s:
-	$(FC) $(CPPDEFS) $(CPPFLAGS) $(FFLAGS) -c -eS $*.F
-.F.x:
-	$(FC) $(CPPDEFS) $(CPPFLAGS) $(FFLAGS) $(LDFLAGS) -o $*.x $*.F
-.F90.T:
-	$(FC) $(CPPDEFS) $(CPPFLAGS) $(FFLAGS) -c -Ca $*.F90
-.F90.i:
-	$(FC) $(CPPDEFS) $(CPPFLAGS) -eP $*.F90
-.F90.lst:
-	$(FC) $(CPPDEFS) $(CPPFLAGS) $(FFLAGS) $(LIST) -c $*.F90
-.F90.o:
-	$(FC) $(CPPDEFS) $(CPPFLAGS) $(FFLAGS) -c     $*.F90
-.F90.s:
-	$(FC) $(CPPDEFS) $(CPPFLAGS) $(FFLAGS) -c -eS $*.F90
-.F90.x:
-	$(FC) $(CPPDEFS) $(CPPFLAGS) $(FFLAGS) $(LDFLAGS) -o $*.x $*.F90

Deleted: DART/branches/development/mkmf/mkmf.template.t90
===================================================================
--- DART/branches/development/mkmf/mkmf.template.t90	2013-02-07 18:10:55 UTC (rev 5955)
+++ DART/branches/development/mkmf/mkmf.template.t90	2013-02-13 17:15:11 UTC (rev 5956)
@@ -1,106 +0,0 @@
-# Template for t90
-#
-# DART software - Copyright 2004 - 2011 UCAR. This open source software is
-# provided by UCAR, "as is", without charge, subject to all terms of use at
-# http://www.image.ucar.edu/DAReS/DART/DART_download
-#
-# <next few lines under version control, do not edit>
-# $URL$
-# $Id$
-# $Revision$
-# $Date$
-
-# typical use with mkmf
-# mkmf -t mkmf.template.xxxx -c"-Duse_netCDF" ...
-#
-# NETCDF and LIBS needs to be customized for your site
-#
-# WARNING -- this is untested with the DART software (no access to a platform)
-#
-
-MPIFC = mpif90
-MPILD = mpif90
-FC = f90
-LD = f90
-CPPFLAGS = -F
-FFLAGS = -O2
-LDFLAGS = -Wl"-Dpreset=nan $(LIBS)"
-LIST = -O negmsgs -rs
-
-# you should never need to change any lines below.
-
-# see the CF90 manual for more details on some of the file extensions
-# discussed here.
-# this makefile template recognizes fortran sourcefiles with extensions
-# .f, .f90, .F, .F90. Given a sourcefile <file>.<ext>, where <ext> is one of
-# the above, this provides a number of default actions:
-
-# make <file>.T		create a CIF file
-# make <file>.lst	create a compiler listing
-# make <file>.o		create an object file
-# make <file>.s		create an assembly listing
-# make <file>.x		create an executable file, assuming standalone
-#			source
-
-# make <file>.i		create a preprocessed file (only for .F and .F90
-#			extensions)
-
-# make <file>.hpm	produce hpm output from <file>.x
-# make <file>.proc	produce procstat output from <file>.x
-
-# The macro TMPFILES is provided to slate files like the above for removal.
-
-RM = rm -f
-SHELL = /bin/csh
-TMPFILES = .*.m *.T *.TT *.hpm *.i *.lst *.proc *.s
-
-.SUFFIXES: .F .F90 .H .T .f .F90 .h .hpm .i .lst .proc .o .s .x
-
-.f.T:
-	$(FC) $(FFLAGS) -c -Ca $*.f
-.f.lst:
-	$(FC) $(FFLAGS) $(LIST) -c $*.f
-.f.o:
-	$(FC) $(FFLAGS) -c     $*.f
-.f.s:
-	$(FC) $(FFLAGS) -eS    $*.f
-.f.x:
-	$(FC) $(FFLAGS) $(LDFLAGS) -o $*.x $*.f
-.f90.T:
-	$(FC) $(FFLAGS) -c -Ca $*.f90
-.f90.lst:
-	$(FC) $(FFLAGS) $(LIST) -c $*.f90
-.f90.o:
-	$(FC) $(FFLAGS) -c     $*.f90
-.f90.s:
-	$(FC) $(FFLAGS) -c -eS $*.f90
-.f90.x:
-	$(FC) $(FFLAGS) $(LDFLAGS) -o $*.x $*.f90
-.F.T:
-	$(FC) $(CPPDEFS) $(CPPFLAGS) $(FFLAGS) -c -Ca $*.F
-.F.i:
-	$(FC) $(CPPDEFS) $(CPPFLAGS) -eP $*.F
-.F.lst:
-	$(FC) $(CPPDEFS) $(CPPFLAGS) $(FFLAGS) $(LIST) -c $*.F
-.F.o:
-	$(FC) $(CPPDEFS) $(CPPFLAGS) $(FFLAGS) -c     $*.F
-.F.s:
-	$(FC) $(CPPDEFS) $(CPPFLAGS) $(FFLAGS) -c -eS $*.F
-.F.x:
-	$(FC) $(CPPDEFS) $(CPPFLAGS) $(FFLAGS) $(LDFLAGS) -o $*.x $*.F
-.F90.T:
-	$(FC) $(CPPDEFS) $(CPPFLAGS) $(FFLAGS) -c -Ca $*.F90
-.F90.i:
-	$(FC) $(CPPDEFS) $(CPPFLAGS) -eP $*.F90
-.F90.lst:
-	$(FC) $(CPPDEFS) $(CPPFLAGS) $(FFLAGS) $(LIST) -c $*.F90
-.F90.o:
-	$(FC) $(CPPDEFS) $(CPPFLAGS) $(FFLAGS) -c     $*.F90
-.F90.s:
-	$(FC) $(CPPDEFS) $(CPPFLAGS) $(FFLAGS) -c -eS $*.F90
-.F90.x:
-	$(FC) $(CPPDEFS) $(CPPFLAGS) $(FFLAGS) $(LDFLAGS) -o $*.x $*.F90
-.x.proc:
-	procstat -R $*.proc $*.x
-.x.hpm:
-	hpm -r -o $*.hpm $*.x

Deleted: DART/branches/development/mkmf/mkmf.template.xlf.osx
===================================================================
--- DART/branches/development/mkmf/mkmf.template.xlf.osx	2013-02-07 18:10:55 UTC (rev 5955)
+++ DART/branches/development/mkmf/mkmf.template.xlf.osx	2013-02-13 17:15:11 UTC (rev 5956)
@@ -1,63 +0,0 @@
-# Template for IBM xlf Compilers on Mac OSX
-#
-# DART software - Copyright 2004 - 2011 UCAR. This open source software is
-# provided by UCAR, "as is", without charge, subject to all terms of use at
-# http://www.image.ucar.edu/DAReS/DART/DART_download
-#
-# <next few lines under version control, do not edit>
-# $URL$
-# $Id$
-# $Revision$
-# $Date$
-
-# typical use with mkmf
-# mkmf -t mkmf.template.xxxx -c"-Duse_netCDF" ...
-#
-# NETCDF and LIBS needs to be customized for your site
-#
-# -C                  array bounds checking
-# -qfullpath -g       for totalview
-#
-#
-# FFLAGS   used all the time
-#   -qsuffix=f=f90:cpp=F90      invoke the preprocessor at right time
-#   -qarch=auto                 optimize for _this_ architecture
-#   -qmaxmem=-1 
-#
-# FFLAGS   useful for debugging
-#   -C                        array bounds checking
-#   -qfullpath -g             for totalview
-#
-# FFLAGS   useful for benchmarking
-#   -O0                       turn off optimization
-#
-# FFLAGS   useful for production
-#    -O     Optimizes code (currently the same as -O2).
-#
-#    -O0    Performs very few optimizations (the same as -qnoopt).
-#
-#    -O2    Optimizes code.
-#
-#    -O3    Performs the -O level optimizations and performs additional
-#           optimizations that are memory or compile time intensive.
-#
-#    -O4    Aggressively optimizes the source program, trading off
-#           additional compile time for potential improvements in the
-#           generated code.  This option implies the following options:
-#           -qarch=auto -qcache=auto -qhot -qipa -qtune=auto -O3.
-#
-#    -O5    Same as -O4, but also implies the -qipa=level=2 option.
-
-MPIFC = mpif90
-MPILD = mpif90
-FC = xlf90
-LD = xlf90
-
-# If your NETCDF environment variable is not set correctly, 
-# uncomment the following line and set value properly. 
-# NETCDF = /Users/thoar/netcdf-3.5.1
-
-INCS = -I${NETCDF}/include
-LIBS = -L${NETCDF}/lib -lnetcdf
-FFLAGS = -qsuffix=f=f90:cpp=F90 -qarch=auto -qmaxmem=-1 -O2 $(INCS)
-LDFLAGS = $(FFLAGS) $(LIBS)


More information about the Dart-dev mailing list