/[MITgcm]/MITgcm_contrib/heimbach/OpenAD/code_shallow_openad/genmake2
ViewVC logotype

Diff of /MITgcm_contrib/heimbach/OpenAD/code_shallow_openad/genmake2

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

revision 1.12 by utke, Sat Jan 27 04:37:54 2007 UTC revision 1.14 by utke, Tue Jun 5 20:10:25 2007 UTC
# Line 2218  echo >> $MAKEFILE Line 2218  echo >> $MAKEFILE
2218  printf "AD_FILES = " >> $MAKEFILE  printf "AD_FILES = " >> $MAKEFILE
2219  AD_FILES=`cat adSrcFiles.tmp`  AD_FILES=`cat adSrcFiles.tmp`
2220  for i in $AD_FILES ; do  for i in $AD_FILES ; do
2221      basename=${i%%.f}
2222      toBeIgnored=`egrep ^$basename'[      ]*' ${MODS}/dontCompile`
2223      if test -z "$toBeIgnored" ; then
2224      echo    " \\" >> $MAKEFILE      echo    " \\" >> $MAKEFILE
2225      printf " $i" >> $MAKEFILE      printf " $i" >> $MAKEFILE
2226      else
2227        echo "Ignoring $i"
2228      fi
2229  done  done
2230  echo >> $MAKEFILE  echo >> $MAKEFILE
2231  rm -f adSrcFiles.tmp  rm -f adSrcFiles.tmp
# Line 2238  EEPARAMS \ Line 2244  EEPARAMS \
2244  PARAMS \  PARAMS \
2245  BAR2 \  BAR2 \
2246  BARRIER \  BARRIER \
 CD_CODE_VARS \  
2247  CG2D \  CG2D \
2248  CG3D \  CG3D \
2249  DFILE \  DFILE \
# Line 2271  grdchk Line 2276  grdchk
2276  .PHONY: adAll  .PHONY: adAll
2277  adAll: \$(EXE_AD)  adAll: \$(EXE_AD)
2278    
 # these are all fixed format:  
 CB2M_F77_TO_FF90_SRC_FILES=\$(F77_SRC_FILES:.F=_cb2m.FF90)  
 CB2M_F90_SRC_FILES=\$(addsuffix _mod.FF90, \$(CB2M_F90_SRC_NAMES))  
2279  CB2M_F90_PP_SRC_FILES=\$(addsuffix _mod.f$FS90, \$(CB2M_F90_SRC_NAMES))  CB2M_F90_PP_SRC_FILES=\$(addsuffix _mod.f$FS90, \$(CB2M_F90_SRC_NAMES))
2280    
2281  .PRECIOUS: \$(CB2M_F90_PP_SRC_FILES) \$(NON_AD_F77_SRC_FILES:.F=_cb2m.ff90)  .PRECIOUS: \$(CB2M_F90_PP_SRC_FILES) \$(NON_AD_F77_SRC_FILES:.F=_cb2m.ff90)
2282    
2283  .PHONY: adDepend  .PHONY: adDepend
2284  #this file is included at the bottom  adDepend: \$(ALL_LINKED_FILES) \$(addsuffix _mod.h, \$(CB2M_F90_SRC_NAMES)) \$(addsuffix _mod.FF90, \$(CB2M_F90_SRC_NAMES)) \$(F77_SRC_FILES:.F=_cb2m.FF90)
 adDepend: \$(ALL_LINKED_FILES) \$(CB2M_F90_SRC_FILES) \$(CB2M_F77_TO_FF90_SRC_FILES)  
2285          \$(MAKEDEPEND) -o .$FS \$(DEFINES) \$(INCLUDES) \$(F77_SRC_FILES)          \$(MAKEDEPEND) -o .$FS \$(DEFINES) \$(INCLUDES) \$(F77_SRC_FILES)
2286          \$(TOOLSDIR)/f90mkdepend >> \$(MAKEFILE)          \$(TOOLSDIR)/f90mkdepend >> \$(MAKEFILE)
2287          -rm -f makedepend.out          -rm -f makedepend.out
2288    
   
2289  OPENAD_SUPPORT_F90_SRC_FILES = \  OPENAD_SUPPORT_F90_SRC_FILES = \
2290  w2f__types.f90 \  w2f__types.f90 \
2291  active_module.f90 \  active_module.f90 \
# Line 2308  f95_test.out: f95_test_mods.f90 f95_test Line 2308  f95_test.out: f95_test_mods.f90 f95_test
2308          f95 -w=unused -maxcontin=132 -c f95_test_mods.f90 > \$@ 2>&1          f95 -w=unused -maxcontin=132 -c f95_test_mods.f90 > \$@ 2>&1
2309          f95 -w=unused -maxcontin=132 -c -fixed f95_test.f90 >> \$@ 2>&1          f95 -w=unused -maxcontin=132 -c -fixed f95_test.f90 >> \$@ 2>&1
2310    
2311  AD_OBJ_FILES=\$(OPENAD_SUPPORT_F90_SRC_FILES:.f90=.o) \$(OPENAD_SUPPORT_C_SRC_FILES:.c=.o) all_mods.xb.x2w.w2f.pp.o ad_input_code.w2f.canon.xb.x2w.w2f.rs.pp.o \$(NON_AD_F77_SRC_FILES:.F=_cb2m.o) \$(C_SRC_FILES:.c=.o) \$(F90_SRC_FILES:.F90=.o)  AD_OBJ_FILES=\$(OPENAD_SUPPORT_F90_SRC_FILES:.f90=.o) \$(OPENAD_SUPPORT_C_SRC_FILES:.c=.o) all_mods.xb.x2w.w2f.pp.o  ad_input_code.w2f.canon.xb.x2w.w2f.rs.pp.o \$(NON_AD_F77_SRC_FILES:.F=_cb2m.o) \$(C_SRC_FILES:.c=.o) \$(F90_SRC_FILES:.F90=.o)
2312    
2313  \$(EXE_AD): \$(AD_OBJ_FILES)  \$(EXE_AD): \$(ALL_LINKED_FILES) \$(addsuffix _mod.h, \$(CB2M_F90_SRC_NAMES)) \$(AD_OBJ_FILES)
2314          @echo Creating \$@ ...          @echo Creating \$@ ...
2315          \$(LINK) -o \$@ \$(FFLAGS) \$(FOPTIM) \$^ \$(LIBS)          \$(LINK) -o \$@ \$(FFLAGS) \$(FOPTIM) \$(AD_OBJ_FILES) \$(LIBS)
2316    
2317  # makefile debug rule  # makefile debug rule
2318  openad: ad_input_code.w2f.canon.xb.x2w.w2f.rs.pp.f  openad: ad_input_code.w2f.canon.xb.x2w.w2f.rs.pp.f
2319  .PHONY: openad  .PHONY: openad
2320    
2321  CB2MFILES= cb2m1.csh cb2m1.awk cb2m2.bash  # create the module files
2322  # create the module files and change the header files  %_mod.FF90 : %.h ${MODS}/cb2mGetModules.csh ${MODS}/cb2mGetModules.awk
2323  \$(CB2M_F90_SRC_FILES) \$(addsuffix _mod.h, \$(CB2M_F90_SRC_NAMES)) : \$(ALL_LINKED_FILES) \$(CB2MFILES)          ${MODS}/cb2mGetModules.csh $< ${MODS}/cb2mGetModules.awk
2324          ./cb2m1.csh \$(CB2M_F90_SRC_NAMES)  
2325    # create the header files
2326  # change everybody else to use the module files:  %_mod.h : %.h ${MODS}/cb2mGetHeaders.csh ${MODS}/cb2mGetHeaders.awk
2327  \$(CB2M_F77_TO_FF90_SRC_FILES): \$(addsuffix _mod.h, \$(CB2M_F90_SRC_NAMES)) \$(CB2M_F90_SRC_FILES)          ${MODS}/cb2mGetHeaders.csh $< ${MODS}/cb2mGetHeaders.awk
2328          ./cb2m2.bash  
2329    # change everybody else to use the new module files:
2330    %_cb2m.FF90 : %.F ${MODS}/cb2mUseModules.bash
2331            ${MODS}/cb2mUseModules.bash $<
2332    
2333  # makefile debug rule  # makefile debug rule
2334  small_f: \$(CB2M_F77_PP_SRC_FILES) \$(CB2M_F90_PP_SRC_FILES)  small_f: \$(CB2M_F90_PP_SRC_FILES)
2335  .PHONY: small_f  .PHONY: small_f
2336    
2337  ad_output.txt: \$(EXE_AD)  ad_output.txt: \$(EXE_AD)
# Line 2342  CB2M_AD_FILES=\$(AD_FILES:.f=_cb2m.ff90) Line 2345  CB2M_AD_FILES=\$(AD_FILES:.f=_cb2m.ff90)
2345  ad_input_code.$FS: ${MODS}/maxMinDefs.f \$(CB2M_AD_FILES)  ad_input_code.$FS: ${MODS}/maxMinDefs.f \$(CB2M_AD_FILES)
2346          cat \$^ > \$@          cat \$^ > \$@
2347    
 \$(CB2MFILES):  
         \$(LN) \$(addprefix ${MODS}/, \$(CB2MFILES)) .  
   
2348  # strip all comments and blanks to reduce  # strip all comments and blanks to reduce
2349  # the file size in order to reduce perl's memory requirements  # the file size in order to reduce perl's memory requirements
2350  ad_input_code_sf.f : ad_input_code.f  ad_input_code_sf.f : ad_input_code.f

Legend:
Removed from v.1.12  
changed lines
  Added in v.1.14

  ViewVC Help
Powered by ViewVC 1.1.22