Merge pull request #22 from wirc-sjsu/develop-w21
[WRF-Fire-merge.git] / arch / noopt_exceptions_f
blob60389385d499d5183ca33fb3a425dc4914c1c5cc
1 # A little more adventurous.  Allow full opt on 
2 # mediation_integrate.o \
3 # shift_domain_em.o \
4 # solve_em.o  <-- gets a little kick from SOLVE_EM_SPECIAL too, if defined
5 # mediation_feedback_domain.o : mediation_feedback_domain.F
6 # mediation_force_domain.o : mediation_force_domain.F
7 # mediation_interp_domain.o : mediation_interp_domain.F
9 # compile these without high optimization to speed compile
10 track_driver.o : track_driver.F
11 convert_nmm.o : convert_nmm.F
12 init_modules_em.o : init_modules_em.F
13 input_wrf.o : input_wrf.F
14 module_io.o : module_io.F
15 module_comm_dm.o : module_comm_dm.F
16 module_comm_dm_0.o : module_comm_dm_0.F
17 module_comm_dm_1.o : module_comm_dm_1.F
18 module_comm_dm_2.o : module_comm_dm_2.F
19 module_comm_dm_3.o : module_comm_dm_3.F
20 module_comm_nesting_dm.o : module_comm_nesting_dm.F
21 module_configure.o : module_configure.F
22 module_domain.o : module_domain.F
23 module_domain_type.o : module_domain_type.F
24 module_alloc_space_0.o : module_alloc_space_0.F
25 module_alloc_space_1.o : module_alloc_space_1.F
26 module_alloc_space_2.o : module_alloc_space_2.F
27 module_alloc_space_3.o : module_alloc_space_3.F
28 module_alloc_space_4.o : module_alloc_space_4.F
29 module_alloc_space_5.o : module_alloc_space_5.F
30 module_alloc_space_6.o : module_alloc_space_6.F
31 module_alloc_space_7.o : module_alloc_space_7.F
32 module_alloc_space_8.o : module_alloc_space_8.F
33 module_alloc_space_9.o : module_alloc_space_9.F
34 module_tiles.o : module_tiles.F
35 module_initialize.o : module_initialize.F
36 module_physics_init.o : module_physics_init.F 
37 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
38 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
39 module_initialize_scm_xy.o : module_initialize_scm_xy.F
40 module_integrate.o : module_integrate.F
41 module_io_mm5.o : module_io_mm5.F
42 module_io_wrf.o : module_io_wrf.F
43 module_si_io.o : module_si_io.F
44 module_wps_io_arw.o : module_wps_io_arw.F
45 module_state_description.o : module_state_description.F 
46 output_wrf.o : output_wrf.F
47 solve_interface.o : solve_interface.F
48 start_domain.o : start_domain.F
49 wrf_bdyin.o : wrf_bdyin.F
50 wrf_bdyout.o : wrf_bdyout.F
51 wrf_ext_read_field.o : wrf_ext_read_field.F
52 wrf_ext_write_field.o : wrf_ext_write_field.F
53 wrf_fddaobs_in.o : wrf_fddaobs_in.F
54 wrf_histin.o : wrf_histin.F
55 wrf_histout.o : wrf_histout.F
56 wrf_inputin.o : wrf_inputin.F
57 wrf_inputout.o : wrf_inputout.F
58 wrf_restartin.o : wrf_restartin.F
59 wrf_restartout.o : wrf_restartout.F
60 wrf_tsin.o : wrf_tsin.F
61 nl_get_0_routines.o : nl_get_0_routines.F
62 nl_get_1_routines.o : nl_get_1_routines.F
63 nl_set_0_routines.o : nl_set_0_routines.F
64 nl_set_1_routines.o : nl_set_1_routines.F
66 track_driver.o \
67 convert_nmm.o \
68 init_modules_em.o \
69 module_initialize.o \
70 module_initialize_squall2d_x.o \
71 module_initialize_squall2d_y.o \
72 module_initialize_scm_xy.o \
73 module_integrate.o \
74 module_io_mm5.o \
75 module_io_wrf.o \
76 module_si_io.o \
77 module_wps_io_arw.o \
78 module_tiles.o \
79 output_wrf.o \
80 solve_interface.o \
81 start_domain.o \
82 wrf_fddaobs_in.o \
83 wrf_tsin.o :
84         $(RM) $@
85         $(SED_FTN) $*.F > $*.b 
86         $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $(OMPCPP) $*.b  > $*.f90
87         $(RM) $*.b
88         @ if echo $(ARCHFLAGS) | $(FGREP) 'DVAR4D'; then \
89           echo COMPILING $*.F for 4DVAR ; \
90           $(WRF_SRC_ROOT_DIR)/var/build/da_name_space.pl $*.f90 > $*.f90.tmp ; \
91           mv $*.f90.tmp $*.f90 ; \
92         fi
93         if $(FGREP) '!$$OMP' $*.f90 ; then \
94           if [ -n "$(OMP)" ] ; then echo COMPILING $*.F WITH OMP ; fi ; \
95           $(FC) -c $(PROMOTION) $(FCNOOPT) $(FCBASEOPTS) $(MODULE_DIRS) $(FCSUFFIX) $(OMP) $*.f90 ; \
96         else \
97           if [ -n "$(OMP)" ] ; then echo COMPILING $*.F WITHOUT OMP ; fi ; \
98           $(FC) -c $(PROMOTION) $(FCNOOPT) $(FCBASEOPTS) $(MODULE_DIRS) $(FCSUFFIX) $*.f90 ; \
99         fi
101 #solve_em.o :
102 #       $(RM) $@
103 #       $(SED_FTN) $*.F > $*.b 
104 #       $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b  > $*.f90
105 #       $(RM) $*.b
106 #       $(FC) -o $@ -c $(FCFLAGS) $(MODULE_DIRS) $(PROMOTION) $(FCSUFFIX) $(SOLVE_EM_SPECIAL) $(OMP) $*.f90
108 module_sf_ruclsm.o : module_sf_ruclsm.F
110 module_sf_ruclsm.o :
111         $(RM) $@
112         $(SED_FTN) $*.F > $*.b 
113         $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $(OMPCPP) $*.b  > $*.f90
114         $(RM) $*.b
115         if $(FGREP) '!$$OMP' $*.f90 ; then \
116           echo COMPILING $*.F WITH OMP ; \
117           if [ -n "$(OMP)" ] ; then echo COMPILING $*.F WITH OMP ; fi ; \
118           $(FC) -c $(PROMOTION) $(FCREDUCEDOPT) $(FCBASEOPTS) $(MODULE_DIRS) $(FCSUFFIX) $(OMP) $*.f90 ; \
119         else \
120           if [ -n "$(OMP)" ] ; then echo COMPILING $*.F WITHOUT OMP ; fi ; \
121           $(FC) -c $(PROMOTION) $(FCREDUCEDOPT) $(FCBASEOPTS) $(MODULE_DIRS) $(FCSUFFIX) $*.f90 ; \
122         fi
124 # compile without OMP
125 input_wrf.o \
126 module_domain.o \
127 module_domain_type.o \
128 module_physics_init.o \
129 module_io.o \
130 wrf_bdyin.o \
131 wrf_bdyout.o \
132 wrf_ext_read_field.o \
133 wrf_ext_write_field.o \
134 wrf_histin.o \
135 wrf_histout.o \
136 wrf_inputin.o \
137 wrf_inputout.o \
138 wrf_restartin.o \
139 wrf_restartout.o \
140 module_state_description.o \
141 module_alloc_space.o \
142 module_alloc_space_0.o \
143 module_alloc_space_1.o \
144 module_alloc_space_2.o \
145 module_alloc_space_3.o \
146 module_alloc_space_4.o \
147 module_alloc_space_5.o \
148 module_alloc_space_6.o \
149 module_alloc_space_7.o \
150 module_alloc_space_8.o \
151 module_alloc_space_9.o \
152 module_comm_dm.o \
153 module_comm_dm_0.o \
154 module_comm_dm_1.o \
155 module_comm_dm_2.o \
156 module_comm_dm_3.o \
157 module_comm_nesting_dm.o \
158 module_configure.o :
159         $(RM) $@
160         $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $(OMPCPP) $*.F  > $*.bb
161         $(SED_FTN) $*.bb | $(CPP) $(TRADFLAG) > $*.f90
162         @ if echo $(ARCHFLAGS) | $(FGREP) 'DVAR4D'; then \
163           echo COMPILING $*.F for 4DVAR ; \
164           $(WRF_SRC_ROOT_DIR)/var/build/da_name_space.pl $*.f90 > $*.f90.tmp ; \
165           mv $*.f90.tmp $*.f90 ; \
166         fi
167         $(RM) $*.b $*.bb
168         $(FC) -c $(PROMOTION) $(FCSUFFIX) $(FCNOOPT) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90