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

Diff of /MITgcm_contrib/heimbach/OpenAD/code_regress/genmake2

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

revision 1.7 by utke, Fri Jun 20 22:25:03 2008 UTC revision 1.11 by utke, Tue Jul 15 17:58:04 2008 UTC
# Line 2659  endif Line 2659  endif
2659    
2660  EOF  EOF
2661    
2662    echo "  Add the source list for common block to module conversion "
2663    echo >> $MAKEFILE
2664    printf "CB2M_F90_SRC_NAMES = " >> $MAKEFILE
2665    for i in `cat ${MODS}/cb2mFiles` ; do
2666      echo    " \\" >> $MAKEFILE
2667      printf " $i" >> $MAKEFILE
2668    done
2669    echo >> $MAKEFILE
2670    
2671  echo "  Add the source list for AD code generation"  echo "  Add the source list for AD code generation"
2672  echo >> $MAKEFILE  echo >> $MAKEFILE
2673  printf "AD_FILES = " >> $MAKEFILE  printf "AD_FILES = " >> $MAKEFILE
2674    for i in `cat ${MODS}/cb2mFiles` ; do
2675      echo    " \\" >> $MAKEFILE
2676      printf " ${i}_mod.f$FS90" >> $MAKEFILE
2677    done
2678  AD_FILES=`cat adSrcFiles.tmp`  AD_FILES=`cat adSrcFiles.tmp`
2679  for i in $AD_FILES ; do  for i in $AD_FILES ; do
2680    basename=${i%%.f}    basename=${i%%.f}
# Line 2676  done Line 2689  done
2689  echo >> $MAKEFILE  echo >> $MAKEFILE
2690  rm -f adSrcFiles.tmp  rm -f adSrcFiles.tmp
2691    
 cat >>$MAKEFILE <<EOF  
   
2692    
2693  # files to be converted:  cat >>$MAKEFILE <<EOF
 # right now there is no quick hack  
 # to pick these out automatically  
 # but we will be using the  
 # canonicalizer anyway  
 CB2M_F90_SRC_NAMES = \  
 SIZE \  
 EEPARAMS \  
 PARAMS \  
 BAR2 \  
 BARRIER \  
 CD_CODE_VARS \  
 CG2D \  
 CG3D \  
 DFILE \  
 DYNVARS \  
 EEIO \  
 EESUPPORT \  
 EOS \  
 EXCH_JAM \  
 EXCH \  
 FC_NAMEMANGLE \  
 FFIELDS \  
 GAD \  
 GLOBAL_MAX \  
 GLOBAL_SUM \  
 GMREDI \  
 GMREDI_TAVE \  
 GRID \  
 MNC_BUFF \  
 MNC_COMMON \  
 MNC_PARAMS \  
 MPI_INFO \  
 RESTART \  
 SIGREG \  
 SOLVE_FOR_PRESSURE3D \  
 SOLVE_FOR_PRESSURE \  
 SURFACE \  
 tamc \  
 tamc_keys \  
 cost \  
 g_cost \  
 ctrl \  
 ctrl_dummy \  
 ctrl_weights \  
 optim \  
 grdchk  
2694    
2695  .PHONY: adAll  .PHONY: adAll
2696  adAll: \$(EXE_AD) ncheckLev.conf  adAll: \$(EXE_AD) ncheckLev.conf
# Line 2741  adDepend: \$(ALL_LINKED_FILES) \$(addsuf Line 2706  adDepend: \$(ALL_LINKED_FILES) \$(addsuf
2706          -rm -f makedepend.out          -rm -f makedepend.out
2707    
2708  OPENAD_SUPPORT_F90_SRC_FILES = \  OPENAD_SUPPORT_F90_SRC_FILES = \
2709  w2f__types.f90 \  w2f__types.F90 \
2710  active_module.f90 \  OAD_active.F90 \
2711  OAD_cp.f90 \  OAD_cp.F90 \
2712  OAD_rev.f90 \  OAD_rev.F90 \
2713  OAD_tape.f90          OAD_tape.F90        
2714    
2715  OPENAD_SUPPORT_C_SRC_FILES = \  OPENAD_SUPPORT_C_SRC_FILES = \
2716  iaddr.c \  iaddr.c \
2717  timeRatio.c  timeRatio.c
2718    
2719  f95_test_mods.f90: \$(OPENAD_SUPPORT_F90_SRC_FILES)  f95_test_mods.f90: \$(OPENAD_SUPPORT_F90_SRC_FILES:F90=$FS90)
2720          cat \$^ > \$@          cat \$^ > \$@
2721    
2722  f95_test.f90: all_mods.xb.x2w.w2f.pp.f$FS90 \$(NON_AD_F77_SRC_FILES:.F=_cb2m.f$FS90) ad_input_code.w2f.canon.xb.x2w.w2f.rs.pp.f$FS90  f95_test.f90: all_mods.xb.x2w.w2f.pp.f$FS90 \$(NON_AD_F77_SRC_FILES:.F=_cb2m.f$FS90) ad_input_code.w2f.canon.xb.x2w.w2f.rs.pp.f$FS90
# Line 2761  f95_test.out: f95_test_mods.f90 f95_test Line 2726  f95_test.out: f95_test_mods.f90 f95_test
2726          f95 -fixed -w=unused -maxcontin=132 -c f95_test_mods.f90 > \$@ 2>&1          f95 -fixed -w=unused -maxcontin=132 -c f95_test_mods.f90 > \$@ 2>&1
2727          f95 -fixed -w=unused -maxcontin=132 -c -fixed f95_test.f90 >> \$@ 2>&1          f95 -fixed -w=unused -maxcontin=132 -c -fixed f95_test.f90 >> \$@ 2>&1
2728    
2729  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)
2730    
2731  \$(EXE_AD): \$(ALL_LINKED_FILES) \$(addsuffix _mod.h, \$(CB2M_F90_SRC_NAMES)) \$(AD_OBJ_FILES)  \$(EXE_AD): \$(ALL_LINKED_FILES) \$(addsuffix _mod.h, \$(CB2M_F90_SRC_NAMES)) \$(AD_OBJ_FILES)
2732          @echo Creating \$@ ...          @echo Creating \$@ ...
# Line 2777  openad: ad_input_code.w2f.canon.xb.x2w.w Line 2742  openad: ad_input_code.w2f.canon.xb.x2w.w
2742    
2743  # create the header files  # create the header files
2744  %_mod.h : %.h ${MODS}/cb2mGetHeaders.csh ${MODS}/cb2mGetHeaders.awk  %_mod.h : %.h ${MODS}/cb2mGetHeaders.csh ${MODS}/cb2mGetHeaders.awk
2745          ${MODS}/cb2mGetHeaders.csh $< ${MODS}/cb2mGetHeaders.awk          ${MODS}/cb2mGetHeaders.csh $< ${MODS}/cb2mGetHeaders.awk \$(CB2M_F90_SRC_NAMES)
2746    
2747  # change everybody else to use the new module files:  # change everybody else to use the new module files:
2748  %_cb2m.FF90 : %.F ${MODS}/cb2mUseModules.bash  %_cb2m.FF90 : %.F ${MODS}/cb2mUseModules.bash
2749          ${MODS}/cb2mUseModules.bash $<          ${MODS}/cb2mUseModules.bash $< ${MPI}
2750    
2751  # makefile debug rule  # makefile debug rule
2752  small_f: \$(CB2M_F90_PP_SRC_FILES)  small_f: \$(CB2M_F90_PP_SRC_FILES)

Legend:
Removed from v.1.7  
changed lines
  Added in v.1.11

  ViewVC Help
Powered by ViewVC 1.1.22