| 2378 |
echo "" >> srclinks.tmp |
echo "" >> srclinks.tmp |
| 2379 |
echo "# These files are linked from $d" >> srclinks.tmp |
echo "# These files are linked from $d" >> srclinks.tmp |
| 2380 |
echo "$deplist :" >> srclinks.tmp |
echo "$deplist :" >> srclinks.tmp |
| 2381 |
printf "\t\$(LN) %s/\$@ \$@\n" $d >> srclinks.tmp |
# We need to make sure that the link isn't already there. |
| 2382 |
|
# This may happen when make thinks that a header file has to be "remade" |
| 2383 |
|
# because a module it depends on has changed. In this case we do nothing. |
| 2384 |
|
printf "\tif [ ! -L \$@ ]; then \$(LN) %s/\$@ \$@; fi\n" $d >> srclinks.tmp |
| 2385 |
fi |
fi |
| 2386 |
fi |
fi |
| 2387 |
done |
done |
| 2662 |
|
|
| 2663 |
EOF |
EOF |
| 2664 |
|
|
| 2665 |
|
echo " Add the source list for common block to module conversion " |
| 2666 |
|
echo >> $MAKEFILE |
| 2667 |
|
printf "CB2M_F90_SRC_NAMES = " >> $MAKEFILE |
| 2668 |
|
for i in `cat ${MODS}/cb2mFiles` ; do |
| 2669 |
|
echo " \\" >> $MAKEFILE |
| 2670 |
|
printf " $i" >> $MAKEFILE |
| 2671 |
|
done |
| 2672 |
|
echo >> $MAKEFILE |
| 2673 |
|
|
| 2674 |
echo " Add the source list for AD code generation" |
echo " Add the source list for AD code generation" |
| 2675 |
echo >> $MAKEFILE |
echo >> $MAKEFILE |
| 2676 |
printf "AD_FILES = " >> $MAKEFILE |
printf "AD_FILES = " >> $MAKEFILE |
| 2677 |
|
for i in `cat ${MODS}/cb2mFiles` ; do |
| 2678 |
|
echo " \\" >> $MAKEFILE |
| 2679 |
|
printf " ${i}_mod.f$FS90" >> $MAKEFILE |
| 2680 |
|
done |
| 2681 |
AD_FILES=`cat adSrcFiles.tmp` |
AD_FILES=`cat adSrcFiles.tmp` |
| 2682 |
for i in $AD_FILES ; do |
for i in $AD_FILES ; do |
| 2683 |
basename=${i%%.f} |
basename=${i%%.f} |
| 2692 |
echo >> $MAKEFILE |
echo >> $MAKEFILE |
| 2693 |
rm -f adSrcFiles.tmp |
rm -f adSrcFiles.tmp |
| 2694 |
|
|
|
cat >>$MAKEFILE <<EOF |
|
|
|
|
| 2695 |
|
|
| 2696 |
# 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 |
|
| 2697 |
|
|
| 2698 |
.PHONY: adAll |
.PHONY: adAll |
| 2699 |
adAll: \$(EXE_AD) ncheckLev.conf |
adAll: \$(EXE_AD) ncheckLev.conf |
| 2709 |
-rm -f makedepend.out |
-rm -f makedepend.out |
| 2710 |
|
|
| 2711 |
OPENAD_SUPPORT_F90_SRC_FILES = \ |
OPENAD_SUPPORT_F90_SRC_FILES = \ |
| 2712 |
w2f__types.f90 \ |
w2f__types.F90 \ |
| 2713 |
active_module.f90 \ |
OAD_active.F90 \ |
| 2714 |
OAD_cp.f90 \ |
OAD_cp.F90 \ |
| 2715 |
OAD_rev.f90 \ |
OAD_rev.F90 \ |
| 2716 |
OAD_tape.f90 |
OAD_tape.F90 |
| 2717 |
|
|
| 2718 |
OPENAD_SUPPORT_C_SRC_FILES = \ |
OPENAD_SUPPORT_C_SRC_FILES = \ |
| 2719 |
iaddr.c \ |
iaddr.c \ |
| 2720 |
timeRatio.c |
timeRatio.c |
| 2721 |
|
|
| 2722 |
f95_test_mods.f90: \$(OPENAD_SUPPORT_F90_SRC_FILES) |
f95_test_mods.f90: \$(OPENAD_SUPPORT_F90_SRC_FILES:F90=$FS90) |
| 2723 |
cat \$^ > \$@ |
cat \$^ > \$@ |
| 2724 |
|
|
| 2725 |
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 |
| 2729 |
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 |
| 2730 |
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 |
| 2731 |
|
|
| 2732 |
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) |
| 2733 |
|
|
| 2734 |
\$(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) |
| 2735 |
@echo Creating \$@ ... |
@echo Creating \$@ ... |
| 2745 |
|
|
| 2746 |
# create the header files |
# create the header files |
| 2747 |
%_mod.h : %.h ${MODS}/cb2mGetHeaders.csh ${MODS}/cb2mGetHeaders.awk |
%_mod.h : %.h ${MODS}/cb2mGetHeaders.csh ${MODS}/cb2mGetHeaders.awk |
| 2748 |
${MODS}/cb2mGetHeaders.csh $< ${MODS}/cb2mGetHeaders.awk |
${MODS}/cb2mGetHeaders.csh $< ${MODS}/cb2mGetHeaders.awk \$(CB2M_F90_SRC_NAMES) |
| 2749 |
|
|
| 2750 |
# change everybody else to use the new module files: |
# change everybody else to use the new module files: |
| 2751 |
%_cb2m.FF90 : %.F ${MODS}/cb2mUseModules.bash |
%_cb2m.FF90 : %.F ${MODS}/cb2mUseModules.bash |
| 2752 |
${MODS}/cb2mUseModules.bash $< |
${MODS}/cb2mUseModules.bash $< ${MPI} |
| 2753 |
|
|
| 2754 |
# makefile debug rule |
# makefile debug rule |
| 2755 |
small_f: \$(CB2M_F90_PP_SRC_FILES) |
small_f: \$(CB2M_F90_PP_SRC_FILES) |