/[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.6 by utke, Fri Jun 20 20:29:59 2008 UTC revision 1.8 by utke, Tue Jun 24 03:26:08 2008 UTC
# Line 2296  printf 'H_SRC_FILES = '   > hsrclist.tmp Line 2296  printf 'H_SRC_FILES = '   > hsrclist.tmp
2296  alldirs="$SOURCEDIRS $INCLUDEDIRS ."  alldirs="$SOURCEDIRS $INCLUDEDIRS ."
2297  for d in $alldirs ; do  for d in $alldirs ; do
2298      deplist=      deplist=
2299      sfiles=`( cd $d; echo *.[h,c,F] | grep -v _cb2m)`      sfiles=`( cd $d; echo *.[h,c,F] *.flow )`
2300      sfiles=`( echo $sfiles; cd $d; echo *.F90 | grep -v _cb2m)`      sfiles=`( echo $sfiles; cd $d; echo *.F90 )`
2301        if test "x$OPENAD" != x ; then
2302            sfiles=`( echo $sfiles | grep -v _cb2m\. )`
2303        fi
2304      for sf in $sfiles ; do      for sf in $sfiles ; do
2305          if test ! -r ".links.tmp/$sf" ; then          if test ! -r ".links.tmp/$sf" ; then
2306              if test -f "$d/$sf" ; then              if test -f "$d/$sf" ; then
2307                    ignore_f=f
2308                  case $d/$sf in                  case $d/$sf in
2309                    ./$PACKAGES_DOT_H)                    ./$PACKAGES_DOT_H)
2310                            ignore_f=t
2311                          ;;                          ;;
2312                    ./AD_CONFIG.h)                    ./AD_CONFIG.h)
2313                            ignore_f=t
2314                          ;;                          ;;
2315                    ./FC_NAMEMANGLE.h)                    ./FC_NAMEMANGLE.h)
2316                            ignore_f=t
2317                          ;;                          ;;
2318                    ./BUILD_INFO.h)                    ./BUILD_INFO.h)
2319                            ignore_f=t
2320                            ;;
2321                      ./EMBEDDED_FILES.h)
2322                            ignore_f=t
2323                          ;;                          ;;
2324                    *)                    *)
2325                          #  For the local directory *ONLY*,                          #  For the local directory *ONLY*,
# Line 2321  for d in $alldirs ; do Line 2332  for d in $alldirs ; do
2332                          fi                          fi
2333                          ;;                          ;;
2334                  esac                  esac
2335                  extn=`echo $sf | $AWK -F. '{print $NF}'`                  if test "x$ignore_f" = xf ; then
2336                  case $extn in                      extn=`echo $sf | $AWK -F. '{print $NF}'`
2337                      F)                      case $extn in
2338                            F)
2339                          echo    " \\"  >> F77srclist.tmp                          echo    " \\"  >> F77srclist.tmp
2340                          printf " $sf" >> F77srclist.tmp                          printf " $sf" >> F77srclist.tmp
2341                          basename=${sf%%.F}                          basename=${sf%%.F}
# Line 2343  for d in $alldirs ; do Line 2355  for d in $alldirs ; do
2355                              printf " $sf" >> nonADF77srclist.tmp                              printf " $sf" >> nonADF77srclist.tmp
2356                            fi                            fi
2357                          fi                          fi
2358                          ;;                              ;;
2359                      F90)                          F90)
2360                          echo    " \\"  >> F90srclist.tmp                          echo    " \\"  >> F90srclist.tmp
2361                          printf " $sf" >> F90srclist.tmp                          printf " $sf" >> F90srclist.tmp
2362                          ;;                          ;;
# Line 2356  for d in $alldirs ; do Line 2368  for d in $alldirs ; do
2368                          echo    " \\"  >> hsrclist.tmp                          echo    " \\"  >> hsrclist.tmp
2369                          printf " $sf" >> hsrclist.tmp                          printf " $sf" >> hsrclist.tmp
2370                          ;;                          ;;
2371                  esac                     esac
2372                    fi
2373              fi              fi
2374          fi          fi
2375      done      done
# Line 2646  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 2663  done Line 2689  done
2689  echo >> $MAKEFILE  echo >> $MAKEFILE
2690  rm -f adSrcFiles.tmp  rm -f adSrcFiles.tmp
2691    
 cat >>$MAKEFILE <<EOF  
2692    
2693    cat >>$MAKEFILE <<EOF
 # files to be converted:  
 # 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 2764  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

Legend:
Removed from v.1.6  
changed lines
  Added in v.1.8

  ViewVC Help
Powered by ViewVC 1.1.22