/[MITgcm]/MITgcm/tools/genmake2
ViewVC logotype

Diff of /MITgcm/tools/genmake2

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

revision 1.237 by jmc, Fri Aug 24 23:41:17 2012 UTC revision 1.241 by utke, Wed Sep 19 20:46:03 2012 UTC
# Line 174  EOF Line 174  EOF
174  test_for_package_in_cpp_options() {  test_for_package_in_cpp_options() {
175      cpp_options=$1      cpp_options=$1
176      pkg=$2      pkg=$2
177      test_for_string_in_file $cpp_options "^[ ]*#define.*ALLOW_$pkg[ ]"      test_for_string_in_file $cpp_options "^ *# *define *\<ALLOW_$pkg\>"
178      test_for_string_in_file $cpp_options "^[ ]*#undef.*ALLOW_$pkg[ ]"      test_for_string_in_file $cpp_options "^ *# *undef *\<ALLOW_$pkg\>"
179      test_for_string_in_file $cpp_options "^[ ]*#define.*DISABLE_$pkg[ ]"      test_for_string_in_file $cpp_options "^ *# *define *\<DISABLE_$pkg\>"
180      test_for_string_in_file $cpp_options "^[ ]*#undef.*DISABLE_$pkg[ ]"      test_for_string_in_file $cpp_options "^ *# *undef *\<DISABLE_$pkg\>"
     test_for_string_in_file $cpp_options "^[ ]*#define.*ALLOW_$pkg$"  
     test_for_string_in_file $cpp_options "^[ ]*#undef.*ALLOW_$pkg$"  
     test_for_string_in_file $cpp_options "^[ ]*#define.*DISABLE_$pkg$"  
     test_for_string_in_file $cpp_options "^[ ]*#undef.*DISABLE_$pkg$"  
181  }  }
182    
183  # Search for particular CPP #cmds associated with MPI  # Search for particular CPP #cmds associated with MPI
184  # usage: test_for_mpi_in_cpp_eeoptions CPP_file  # usage: test_for_mpi_in_cpp_eeoptions CPP_file
185  test_for_mpi_in_cpp_eeoptions() {  test_for_mpi_in_cpp_eeoptions() {
186      cpp_options=$1      cpp_options=$1
187      test_for_string_in_file $cpp_options "^[ ]*#define.*ALLOW_USE_MPI[ ]"      test_for_string_in_file $cpp_options "^ *# *define *\<ALLOW_USE_MPI\>"
188      test_for_string_in_file $cpp_options "^[ ]*#undef.*ALLOW_USE_MPI[ ]"      test_for_string_in_file $cpp_options "^ *# *undef *\<ALLOW_USE_MPI\>"
     test_for_string_in_file $cpp_options "^[ ]*#define.*ALWAYS_USE_MPI[ ]"  
     test_for_string_in_file $cpp_options "^[ ]*#undef.*ALWAYS_USE_MPI[ ]"  
     test_for_string_in_file $cpp_options "^[ ]*#define.*ALLOW_USE_MPI$"  
     test_for_string_in_file $cpp_options "^[ ]*#undef.*ALLOW_USE_MPI$"  
     test_for_string_in_file $cpp_options "^[ ]*#define.*ALWAYS_USE_MPI$"  
     test_for_string_in_file $cpp_options "^[ ]*#undef.*ALWAYS_USE_MPI$"  
189  }  }
190    
191  # Search for particular string in a file. Return 1 if detected, 0 if not  # Search for particular string in a file. Return 1 if detected, 0 if not
# Line 203  test_for_mpi_in_cpp_eeoptions() { Line 193  test_for_mpi_in_cpp_eeoptions() {
193  test_for_string_in_file() {  test_for_string_in_file() {
194      file=$1      file=$1
195      strng=$2      strng=$2
196      grep -i "$strng" $file > /dev/null 2>&1      grep "$strng" $file > /dev/null 2>&1
197      RETVAL=$?      RETVAL=$?
198      if test "x${RETVAL}" = x0 ; then      if test "x${RETVAL}" = x0 ; then
199          printf "Error: In $file there is an illegal line: "          printf "Error: In $file there is an illegal line: "
# Line 411  build_cyrus_makedepend()  { Line 401  build_cyrus_makedepend()  {
401      (      (
402          cd $ROOTDIR/tools/cyrus-imapd-makedepend  \          cd $ROOTDIR/tools/cyrus-imapd-makedepend  \
403              &&  ./configure > /dev/null 2>&1  \              &&  ./configure > /dev/null 2>&1  \
404              &&  make > /dev/null 2>&1              &&  $MAKE > /dev/null 2>&1
405          if test -x ./makedepend.exe ; then          if test -x ./makedepend.exe ; then
406              $LN ./makedepend.exe ./makedepend              $LN ./makedepend.exe ./makedepend
407          fi          fi
# Line 596  Error: No options file was found in:  $R Line 586  Error: No options file was found in:  $R
586  EOF  EOF
587          exit 1          exit 1
588      fi      fi
   
 #     # look for possible MPI libraries  
 #     mpi_libs=  
 #     mpi_fort=`which mpif77 2>/dev/null`  
 #     RETVAL=$?  
 #     if test "x${RETVAL}" = x0 ; then  
 #       cat >>test.f <<EOF  
 #       PROGRAM HELLO  
 #       DO 10, I=1,10  
 #       PRINT *,'Hello World'  
 #    10 CONTINUE  
 #       STOP  
 #       END  
 # EOF  
 #       eval "$mpi_fort -showme test.f > out"  
 #       RETVAL=$?  
 #       if test "x${RETVAL}" = x0 ; then  
 #           a=`cat out`  
 #           for i in $a ; do  
 #               case $i in  
 #                   -*)  
 #                       mpi_libs="$mpi_libs $i" ;;  
 #               esac  
 #           done  
 #           echo "The MPI libs appear to be:"  
 #           echo "  "$mpi_libs  
 #       fi  
 #       rm -f test.f out  
 #     fi  
589  }  }
590    
591  #  Parse the package dependency information  #  Parse the package dependency information
# Line 1245  SVD_TAMC_FLAGS= Line 1206  SVD_TAMC_FLAGS=
1206  TAMC_EXTRA=  TAMC_EXTRA=
1207    
1208  #  The following state can be set directly by command-line switches  #  The following state can be set directly by command-line switches
1209  gm_s1="OPTFILE PKG_DEPEND PKG_GROUPS DISABLE ENABLE MAKEFILE MAKEDEPEND PLATFORM"  gm_s1="ROOTDIR STANDARDDIRS MODS PKG_DEPEND PKG_GROUPS DISABLE ENABLE"
1210  gm_s2="FC CC MPI OMP USE_R4 TS PAPIS PCLS PAPI PCL HPMT IEEE DEVEL GSL FEXTRAFLAGS"  gm_s2="PLATFORM OPTFILE MAKE MAKEFILE MAKEDEPEND FC CC MPI OMP USE_R4"
1211  gm_s3="ROOTDIR STANDARDDIRS MODS DUMPSTATE"  gm_s3="FEXTRAFLAGS IEEE DEVEL GSL TS PAPIS PCLS PAPI PCL HPMT DUMPSTATE"
1212    
1213  #  The following state is not directly set by command-line switches  #  The following state is not directly set by command-line switches
1214  gm_s4="LN S64 LINK MAKE PACKAGES INCLUDES FFLAGS FOPTIM"  gm_s4="LN S64 LINK PACKAGES INCLUDES FFLAGS FOPTIM"
1215  gm_s5="CFLAGS LIBS KPP KFLAGS1 KFLAGS2 KPPFILES NOOPTFILES NOOPTFLAGS"  gm_s5="CFLAGS LIBS KPP KFLAGS1 KFLAGS2 KPPFILES NOOPTFILES NOOPTFLAGS"
1216  gm_s6="TOOLSDIR SOURCEDIRS INCLUDEDIRS EXEDIR EXECUTABLE EXEHOOK"  gm_s6="TOOLSDIR SOURCEDIRS INCLUDEDIRS EXEDIR EXECUTABLE EXEHOOK"
1217  gm_s7="PWD THISHOST THISUSER THISDATE THISVER MACHINE"  gm_s7="PWD THISHOST THISUSER THISDATE THISVER MACHINE"
# Line 1697  check_for_broken_Ff Line 1658  check_for_broken_Ff
1658    
1659  if test ! "x$MPI" = x ; then  if test ! "x$MPI" = x ; then
1660        echo "  Turning on MPI cpp macros"        echo "  Turning on MPI cpp macros"
1661        DEFINES="$DEFINES -DALLOW_USE_MPI -DALWAYS_USE_MPI"        DEFINES="$DEFINES -DALLOW_USE_MPI"
1662  fi  fi
1663  if test ! "x$OMP" = x ; then  if test ! "x$OMP" = x ; then
1664        echo "  Add OMPFLAG and turn on OpenMP cpp macros"        echo "  Add OMPFLAG and turn on OpenMP cpp macros"
# Line 2715  cat >>$MAKEFILE <<EOF Line 2676  cat >>$MAKEFILE <<EOF
2676  # INCLUDES     : Directories searched for header files  # INCLUDES     : Directories searched for header files
2677  # DEFINES      : Macro definitions for CPP  # DEFINES      : Macro definitions for CPP
2678  # MAKEDEPEND   : Dependency generator  # MAKEDEPEND   : Dependency generator
 # KPP          : Special preprocessor command (specific to platform)  
 # KFLAGS       : Flags for KPP  
2679  # FC           : Fortran compiler command  # FC           : Fortran compiler command
2680  # FFLAGS       : Configuration/debugging options for FC  # FFLAGS       : Configuration/debugging options for FC
2681  # FOPTIM       : Optimization options for FC  # FOPTIM       : Optimization options for FC
# Line 2753  fi Line 2712  fi
2712  cat >>$MAKEFILE <<EOF  cat >>$MAKEFILE <<EOF
2713  # Unix ln (link)  # Unix ln (link)
2714  LN = ${LN}  LN = ${LN}
 # C preprocessor  
 CPP = cat \$< | ${S64} | ${CPP}  
2715  # Dependency generator  # Dependency generator
2716  MAKEDEPEND = ${MAKEDEPEND}  MAKEDEPEND = ${MAKEDEPEND}
2717  # Special preprocessor (KAP on DECs, FPP on Crays)  # Special preprocessor (KAP on DECs, FPP on Crays)
# Line 2790  NOOPTFLAGS = ${NOOPTFLAGS} Line 2747  NOOPTFLAGS = ${NOOPTFLAGS}
2747  # Flags and libraries needed for linking  # Flags and libraries needed for linking
2748  LIBS = ${LIBS}  LIBS = ${LIBS}
2749  # Name of the makefile  # Name of the makefile
2750  MAKEFILE=${MAKEFILE}  MAKEFILE = ${MAKEFILE}
2751    # Name of the make program
2752    MAKE = ${MAKE}
2753    
2754  EOF  EOF
2755    
# Line 2821  echo '.SUFFIXES: .o .'$FS' .p .F .c .f'$ Line 2780  echo '.SUFFIXES: .o .'$FS' .p .F .c .f'$
2780    
2781  cat >>$MAKEFILE <<EOF  cat >>$MAKEFILE <<EOF
2782    
2783  all: \$(EXECUTABLE)  all: fwd_exe_target
2784    fwd_exe_target:
2785            @echo Update AD_CONFIG.h and make \$(EXECUTABLE)
2786            @$BASH\$(TOOLSDIR)/convert_cpp_cmd2defines "Forward version" -bAD_CONFIG_H -UALLOW_ADJOINT_RUN -UALLOW_TANGENTLINEAR_RUN > ad_config.template
2787            @cmp ad_config.template AD_CONFIG.h || cat ad_config.template > AD_CONFIG.h
2788            @-rm -f ad_config.template
2789            \$(MAKE) -f \$(MAKEFILE) \$(EXECUTABLE)
2790    
2791  \$(EXECUTABLE): \$(SPECIAL_FILES) \$(F77_SRC_FILES) \$(C_SRC_FILES) \$(H_SRC_FILES) \$(F90_SRC_FILES) \$(OBJFILES) \$(EMBEDDED_FILES)  \$(EXECUTABLE): \$(SPECIAL_FILES) \$(F77_SRC_FILES) \$(C_SRC_FILES) \$(H_SRC_FILES) \$(F90_SRC_FILES) \$(OBJFILES) \$(EMBEDDED_FILES)
2792          @echo Creating \$@ ...          @echo Creating \$@ ...
2793          \$(LINK) -o \$@ \$(FFLAGS) \$(FOPTIM) \$(OBJFILES) \$(LIBS)          \$(LINK) -o \$@ \$(FFLAGS) \$(FOPTIM) \$(OBJFILES) \$(LIBS)
2794    
2795  depend:  depend:
2796          @make -f \$(MAKEFILE) links          @\$(MAKE) -f \$(MAKEFILE) links
2797          \$(MAKEDEPEND) -f \$(MAKEFILE) -o .$FS \$(DEFINES) \$(INCLUDES) \$(F77_SRC_FILES)          \$(MAKEDEPEND) -f \$(MAKEFILE) -o .$FS \$(DEFINES) \$(INCLUDES) \$(F77_SRC_FILES)
2798          \$(TOOLSDIR)/f90mkdepend >> \$(MAKEFILE)          \$(TOOLSDIR)/f90mkdepend >> \$(MAKEFILE)
2799          -rm -f makedepend.out          -rm -f makedepend.out
# Line 2857  clean: Line 2823  clean:
2823    
2824  # remove most of the files that "make" and "make depend" generate  # remove most of the files that "make" and "make depend" generate
2825  Clean:  Clean:
2826          @make -f \$(MAKEFILE) clean          @\$(MAKE) -f \$(MAKEFILE) clean
2827          @make -f \$(MAKEFILE) cleanlinks          @\$(MAKE) -f \$(MAKEFILE) cleanlinks
2828          -rm -f \$(SPECIAL_FILES) f90mkdepend.log $MAKEFILE.old          -rm -f \$(SPECIAL_FILES) f90mkdepend.log $MAKEFILE.old
2829          -rm -f taf_command taf_output taf_ad.log taf_ad_flow.log taf_ftl.log          -rm -f taf_command taf_output taf_ad.log taf_ad_flow.log taf_ftl.log
2830          -rm -f genmake_warnings genmake_errors make.log          -rm -f genmake_warnings genmake_errors make.log
# Line 2866  Clean: Line 2832  Clean:
2832  # remove also the executable, files that "genmake2" generates (except Makefile)  # remove also the executable, files that "genmake2" generates (except Makefile)
2833  #         and output from a run (plus log files from testreport)  #         and output from a run (plus log files from testreport)
2834  CLEAN:  CLEAN:
2835          @make -f \$(MAKEFILE) Clean          @\$(MAKE) -f \$(MAKEFILE) Clean
2836          -rm -f \$(EXECUTABLE) \$(EXE_AD) \$(EXE_FTL) *.bak          -rm -f \$(EXECUTABLE) \$(EXE_AD) \$(EXE_FTL) *.bak
2837          -rm -f $LOGFILE genmake_state genmake_*optfile          -rm -f $LOGFILE genmake_state genmake_*optfile
2838          -rm -f SIZE.h.mpi genmake.tr_log make.tr_log          -rm -f SIZE.h.mpi genmake.tr_log make.tr_log
# Line 2885  cleanlinks: Line 2851  cleanlinks:
2851  # Special targets (SPECIAL_FILES) which are created by make  # Special targets (SPECIAL_FILES) which are created by make
2852  ${PACKAGES_DOT_H}:  ${PACKAGES_DOT_H}:
2853          @echo Creating \$@ ...          @echo Creating \$@ ...
2854          @$BASH\$(TOOLSDIR)/convert_cpp_cmd2defines "Warning - this file is automatically generated - do NOT edit" -bPACKAGES_CONFIG_H "Disabled packages:" \$(DISABLED_PACKAGES) " " "Enabled packages:" \$(ENABLED_PACKAGES) > \$@          @$BASH\$(TOOLSDIR)/convert_cpp_cmd2defines -bPACKAGES_CONFIG_H "Disabled packages:" \$(DISABLED_PACKAGES) " " "Enabled packages:" \$(ENABLED_PACKAGES) > \$@
2855  AD_CONFIG.h:  AD_CONFIG.h:
2856          @echo Creating \$@ ...          @echo Creating \$@ ...
2857          @$BASH\$(TOOLSDIR)/convert_cpp_cmd2defines "Warning - this file is automatically generated - do NOT edit" -bAD_CONFIG_H -UALLOW_ADJOINT_RUN -UALLOW_TANGENTLINEAR_RUN > \$@          @$BASH\$(TOOLSDIR)/convert_cpp_cmd2defines "Default version" -bAD_CONFIG_H -UALLOW_ADJOINT_RUN -UALLOW_TANGENTLINEAR_RUN > \$@
2858  FC_NAMEMANGLE.h:  FC_NAMEMANGLE.h:
2859          @echo Creating \$@ ...          @echo Creating \$@ ...
2860          echo "$FC_NAMEMANGLE" > \$@          echo "$FC_NAMEMANGLE" > \$@
# Line 2928  cat >>$MAKEFILE <<EOF Line 2894  cat >>$MAKEFILE <<EOF
2894  ## This nullifies any default implicit rules concerning these two file types:  ## This nullifies any default implicit rules concerning these two file types:
2895  ## %.o : %.F  ## %.o : %.F
2896    
2897    # C preprocessing and replacing the _d in constants:
2898    CPPCMD = cat \$< | ${CPP} \$(DEFINES) \$(INCLUDES) | ${S64}
2899    
2900  .F.$FS:  .F.$FS:
2901          \$(CPP) \$(DEFINES) \$(INCLUDES) > \$@          \$(CPPCMD)  > \$@
2902  .$FS.o:  .$FS.o:
2903          \$(FC) \$(FFLAGS) \$(FOPTIM) -c \$<          \$(FC) \$(FFLAGS) \$(FOPTIM) -c \$<
2904  .F.o:  .F.o:
2905          \$(FC) \$(FFLAGS) \$(FOPTIM) -c \$<          \$(FC) \$(FFLAGS) \$(FOPTIM) -c \$<
2906  .F90.$FS90:  .F90.$FS90:
2907          \$(CPP) \$(DEFINES) \$(INCLUDES) > \$@          \$(CPPCMD)  > \$@
2908  .FF90.f$FS90:  .FF90.f$FS90:
2909          \$(CPP) \$(DEFINES) \$(INCLUDES) > \$@          \$(CPPCMD)  > \$@
2910  .$FS90.o:  .$FS90.o:
2911          \$(F90C) \$(F90FLAGS) \$(F90OPTIM) -c \$<          \$(F90C) \$(F90FLAGS) \$(F90OPTIM) -c \$<
2912  .f$FS90.o:  .f$FS90.o:
# Line 2946  cat >>$MAKEFILE <<EOF Line 2915  cat >>$MAKEFILE <<EOF
2915  .c.o:  .c.o:
2916          \$(CC) \$(CFLAGS) \$(DEFINES) \$(INCLUDES) -c \$<          \$(CC) \$(CFLAGS) \$(DEFINES) \$(INCLUDES) -c \$<
2917  .flow.flowdir:  .flow.flowdir:
2918          \$(CPP) \$(DEFINES) \$(INCLUDES) > \$@          \$(CPPCMD) > \$@
2919    
2920  # Special exceptions that use the ( .F - .p - .$FS - .o ) rule-chain  # Special exceptions that use the ( .F - .p - .$FS - .o ) rule-chain
2921  .F.p:  .F.p:
2922          \$(CPP) \$(DEFINES) \$(INCLUDES) > \$@          \$(CPPCMD) > \$@
2923  .p.$FS:  .p.$FS:
2924          \$(KPP) \$(KFLAGS1)\$@ \$(KFLAGS2) \$<          \$(KPP) \$(KFLAGS1)\$@ \$(KFLAGS2) \$<
2925    
# Line 2997  rm -f adSrcFiles.tmp Line 2966  rm -f adSrcFiles.tmp
2966  cat >>$MAKEFILE <<EOF  cat >>$MAKEFILE <<EOF
2967    
2968  # ... AD ...  # ... AD ...
2969  adall: \$(EXE_AD)  adall: ad_exe_target
2970  adtaf: ad_taf_output.$FS  adtaf: ad_taf_output.$FS
2971  adtamc: ad_tamc_output.$FS  adtamc: ad_tamc_output.$FS
2972    
2973  ad_input_code.$FS: \$(AD_FILES) \$(H_SRC_FILES) \$(AD_FLOW_FILES)  ad_exe_target:
2974          @$BASH\$(TOOLSDIR)/convert_cpp_cmd2defines "Warning - this file is automatically generated - do NOT edit" -DALLOW_ADJOINT_RUN -UALLOW_TANGENTLINEAR_RUN > ad_config.template          @echo Update AD_CONFIG.h and make \$(EXE_AD)
2975            @$BASH\$(TOOLSDIR)/convert_cpp_cmd2defines "Adjoint version" -bAD_CONFIG_H -DALLOW_ADJOINT_RUN -UALLOW_TANGENTLINEAR_RUN > ad_config.template
2976            @cmp ad_config.template AD_CONFIG.h || cat ad_config.template > AD_CONFIG.h
2977            @-rm -f ad_config.template
2978            \$(MAKE) -f \$(MAKEFILE) \$(EXE_AD)
2979    
2980    ad_input_code.$FS: \$(AD_FILES) \$(AD_FLOW_FILES)
2981            @$BASH\$(TOOLSDIR)/convert_cpp_cmd2defines "Adjoint version" -bAD_CONFIG_H -DALLOW_ADJOINT_RUN -UALLOW_TANGENTLINEAR_RUN > ad_config.template
2982          cmp ad_config.template AD_CONFIG.h || cat ad_config.template > AD_CONFIG.h          cmp ad_config.template AD_CONFIG.h || cat ad_config.template > AD_CONFIG.h
2983          -rm -f ad_config.template          @-rm -f ad_config.template
2984          @make -f \$(MAKEFILE) \$(F77_PP_SRC_FILES)          @\$(MAKE) -f \$(MAKEFILE) \$(F77_PP_SRC_FILES)
2985          @make -f \$(MAKEFILE) \$(FLOWFILES)          @\$(MAKE) -f \$(MAKEFILE) \$(FLOWFILES)
2986          cat \$(FLOWFILES) \$(AD_FILES) | sed -f \$(TOOLSDIR)/remove_comments_sed > ad_input_code.$FS          cat \$(FLOWFILES) \$(AD_FILES) | sed -f \$(TOOLSDIR)/remove_comments_sed > ad_input_code.$FS
2987    
2988  ad_taf_output.$FS: ad_input_code.$FS  ad_taf_output.$FS: ad_input_code.$FS
# Line 3019  adtafonly: Line 2995  adtafonly:
2995          ls -l ad_input_code_ad.$FS          ls -l ad_input_code_ad.$FS
2996          cat ad_input_code_ad.$FS | sed -f \$(TOOLSDIR)/adjoint_sed > ad_taf_output.$FS          cat ad_input_code_ad.$FS | sed -f \$(TOOLSDIR)/adjoint_sed > ad_taf_output.$FS
2997    
2998  \${EXE_AD}: ad_taf_output.o \$(OBJFILES)  \$(EXE_AD): \$(SPECIAL_FILES) \$(F77_SRC_FILES) \$(C_SRC_FILES) \$(H_SRC_FILES) \$(F90_SRC_FILES) ad_taf_output.o \$(OBJFILES) \$(EMBEDDED_FILES)
2999          \$(LINK) -o \${EXE_AD} \$(FFLAGS) \$(FOPTIM) \$(OBJFILES) ad_taf_output.o \$(LIBS)          \$(LINK) -o \${EXE_AD} \$(FFLAGS) \$(FOPTIM) \$(OBJFILES) ad_taf_output.o \$(LIBS)
3000    
3001  ad_tamc_output.$FS: ad_input_code.$FS  ad_tamc_output.$FS: ad_input_code.$FS
# Line 3038  adtrick: Line 3014  adtrick:
3014  adobj: ad_taf_output.o \$(OBJFILES)  adobj: ad_taf_output.o \$(OBJFILES)
3015    
3016  # ... FTL ...  # ... FTL ...
3017  ftlall: \$(EXE_FTL)  ftlall: ftl_exe_target
3018  ftltaf: ftl_taf_output.$FS  ftltaf: ftl_taf_output.$FS
3019  ftltamc: ftl_tamc_output.$FS  ftltamc: ftl_tamc_output.$FS
3020    
3021  ftl_input_code.$FS: \$(AD_FILES) \$(H_SRC_FILES)  ftl_exe_target:
3022          @$BASH\$(TOOLSDIR)/convert_cpp_cmd2defines "Warning - this file is automatically generated - do NOT edit" -UALLOW_ADJOINT_RUN -DALLOW_TANGENTLINEAR_RUN > ftl_config.template          @echo Update AD_CONFIG.h and make \$(EXE_FTL)
3023          cmp ftl_config.template AD_CONFIG.h || cat ftl_config.template > AD_CONFIG.h          @$BASH\$(TOOLSDIR)/convert_cpp_cmd2defines "TangLin version" -bAD_CONFIG_H -UALLOW_ADJOINT_RUN -DALLOW_TANGENTLINEAR_RUN > ad_config.template
3024          -rm -f ftl_config.template          @cmp ad_config.template AD_CONFIG.h || cat ad_config.template > AD_CONFIG.h
3025          @make -f \$(MAKEFILE) \$(F77_PP_SRC_FILES)          @-rm -f ad_config.template
3026          @make -f \$(MAKEFILE) \$(AD_FLOW_FILES)          \$(MAKE) -f \$(MAKEFILE) \$(EXE_FTL)
3027    
3028    ftl_input_code.$FS: \$(AD_FILES)
3029            @$BASH\$(TOOLSDIR)/convert_cpp_cmd2defines "TangLin version" -bAD_CONFIG_H -UALLOW_ADJOINT_RUN -DALLOW_TANGENTLINEAR_RUN > ad_config.template
3030            cmp ad_config.template AD_CONFIG.h || cat ad_config.template > AD_CONFIG.h
3031            @-rm -f ad_config.template
3032            @\$(MAKE) -f \$(MAKEFILE) \$(F77_PP_SRC_FILES)
3033            @\$(MAKE) -f \$(MAKEFILE) \$(AD_FLOW_FILES)
3034          cat \$(AD_FLOW_FILES) \$(AD_FILES) | sed -f \$(TOOLSDIR)/remove_comments_sed > ftl_input_code.$FS          cat \$(AD_FLOW_FILES) \$(AD_FILES) | sed -f \$(TOOLSDIR)/remove_comments_sed > ftl_input_code.$FS
3035    
3036  ftl_taf_output.$FS: ftl_input_code.$FS  ftl_taf_output.$FS: ftl_input_code.$FS
# Line 3060  ftltafonly: Line 3043  ftltafonly:
3043          ls -l ftl_input_code_ftl.$FS          ls -l ftl_input_code_ftl.$FS
3044          cat ftl_input_code_ftl.$FS | sed -f \$(TOOLSDIR)/adjoint_sed > ftl_taf_output.$FS          cat ftl_input_code_ftl.$FS | sed -f \$(TOOLSDIR)/adjoint_sed > ftl_taf_output.$FS
3045    
3046  \${EXE_FTL}: ftl_taf_output.o \$(OBJFILES)  \$(EXE_FTL): \$(SPECIAL_FILES) \$(F77_SRC_FILES) \$(C_SRC_FILES) \$(H_SRC_FILES) \$(F90_SRC_FILES) ftl_taf_output.o \$(OBJFILES) \$(EMBEDDED_FILES)
3047          \$(LINK) -o \${EXE_FTL} \$(FFLAGS) \$(FOPTIM) \$(OBJFILES) ftl_taf_output.o \$(LIBS)          \$(LINK) -o \${EXE_FTL} \$(FFLAGS) \$(FOPTIM) \$(OBJFILES) ftl_taf_output.o \$(LIBS)
3048    
3049  ftl_tamc_output.$FS: ftl_input_code.$FS  ftl_tamc_output.$FS: ftl_input_code.$FS
# Line 3090  svd_touch: Line 3073  svd_touch:
3073          touch ad_taf_output.$FS ftl_taf_output.$FS          touch ad_taf_output.$FS ftl_taf_output.$FS
3074          \$(FC) \$(FFLAGS) \$(FOPTIM) -c ad_taf_output.$FS          \$(FC) \$(FFLAGS) \$(FOPTIM) -c ad_taf_output.$FS
3075          \$(FC) \$(FFLAGS) \$(FOPTIM) -c ftl_taf_output.$FS          \$(FC) \$(FFLAGS) \$(FOPTIM) -c ftl_taf_output.$FS
3076          @$BASH\$(TOOLSDIR)/convert_cpp_cmd2defines "Warning - this file is automatically generated - do NOT edit" -UALLOW_ADJOINT_RUN -DALLOW_TANGENTLINEAR_RUN > ftl_config.template          @$BASH\$(TOOLSDIR)/convert_cpp_cmd2defines "SVD version" -bAD_CONFIG_H -UALLOW_ADJOINT_RUN -DALLOW_TANGENTLINEAR_RUN > ad_config.template
3077          cmp ftl_config.template AD_CONFIG.h || cat ftl_config.template > AD_CONFIG.h          cmp ad_config.template AD_CONFIG.h || cat ad_config.template > AD_CONFIG.h
3078          -rm -f ftl_config.template          @-rm -f ad_config.template
3079    
3080  EOF  EOF
3081    
# Line 3321  printf "\n\n# DO NOT DELETE\n" >> $MAKEF Line 3304  printf "\n\n# DO NOT DELETE\n" >> $MAKEF
3304  printf "\n===  Done  ===\n"  printf "\n===  Done  ===\n"
3305    
3306  # Create special header files  # Create special header files
3307  $BASH $TOOLSDIR/convert_cpp_cmd2defines "Warning - this file is automatically generated - do NOT edit" -bPACKAGES_CONFIG_H "Disabled packages:" $DISABLED_PACKAGES " " "Enabled packages:" $ENABLED_PACKAGES > $PACKAGES_DOT_H".tmp"  $BASH $TOOLSDIR/convert_cpp_cmd2defines -bPACKAGES_CONFIG_H "Disabled packages:" $DISABLED_PACKAGES " " "Enabled packages:" $ENABLED_PACKAGES > $PACKAGES_DOT_H".tmp"
3308  if test ! -f $PACKAGES_DOT_H ; then  if test ! -f $PACKAGES_DOT_H ; then
3309      mv -f $PACKAGES_DOT_H".tmp" $PACKAGES_DOT_H      mv -f $PACKAGES_DOT_H".tmp" $PACKAGES_DOT_H
3310  else  else
# Line 3335  else Line 3318  else
3318      fi      fi
3319  fi  fi
3320  if test ! -f AD_CONFIG.h ; then  if test ! -f AD_CONFIG.h ; then
3321      $BASH $TOOLSDIR/convert_cpp_cmd2defines "Warning - this file is automatically generated - do NOT edit" -UALLOW_ADJOINT_RUN -UALLOW_TANGENTLINEAR_RUN > AD_CONFIG.h      $BASH $TOOLSDIR/convert_cpp_cmd2defines "Default version" -bAD_CONFIG_H -UALLOW_ADJOINT_RUN -UALLOW_TANGENTLINEAR_RUN > AD_CONFIG.h
3322  fi  fi
3323    
3324  #  Write the "state" for future records  #  Write the "state" for future records

Legend:
Removed from v.1.237  
changed lines
  Added in v.1.241

  ViewVC Help
Powered by ViewVC 1.1.22