source: trunk/WRF.COMMON/WRFV2/Makefile @ 3026

Last change on this file since 3026 was 11, checked in by aslmd, 14 years ago

spiga@svn-planeto:ajoute le modele meso-echelle martien

File size: 18.1 KB
Line 
1#       Top level Makefile for wrf system
2
3LN      =       ln -s
4MAKE    =       make -i -r
5MV      =       /bin/mv
6RM      =       /bin/rm -f
7
8deflt :
9                @ echo Please compile the code using ./compile
10
11include ./configure.wrf
12
13EM_MODULE_DIR = -I../dyn_em
14EM_MODULES =  $(EM_MODULE_DIR)
15
16
17#### 3.d.   add macros to specify the modules for this core
18
19#EXP_MODULE_DIR = -I../dyn_exp
20#EXP_MODULES =  $(EXP_MODULE_DIR)
21
22
23NMM_MODULE_DIR = -I../dyn_nmm
24NMM_MODULES =  $(NMM_MODULE_DIR)
25
26ALL_MODULES =                           \
27               $(EM_MODULE_DIR)         \
28               $(NMM_MODULES)           \
29               $(EXP_MODULES)           \
30               $(INCLUDE_MODULES)
31
32configcheck:
33        @if [ "$(A2DCASE)" -a "$(DMPARALLEL)" ] ; then \
34         echo "------------------------------------------------------------------------------" ; \
35         echo "WRF CONFIGURATION ERROR                                                       " ; \
36         echo "The $(A2DCASE) case cannot be used on distributed memory parallel systems." ; \
37         echo "Only 3D WRF cases will run on these systems." ; \
38         echo "Please chose a different case or rerun configure and chose a different option."  ; \
39         echo "------------------------------------------------------------------------------" ; \
40         exit 2 ; \
41        fi
42
43framework_only : configcheck
44        $(MAKE) MODULE_DIRS="$(ALL_MODULES)" ext
45        $(MAKE) MODULE_DIRS="$(ALL_MODULES)" toolsdir
46        /bin/rm -f main/libwrflib.a
47        $(MAKE) MODULE_DIRS="$(ALL_MODULES)" framework
48        $(MAKE) MODULE_DIRS="$(ALL_MODULES)" shared
49
50wrf : framework_only
51        $(MAKE) MODULE_DIRS="$(ALL_MODULES)" physics
52        if [ $(WRF_CHEM) -eq 1 ]    ; then $(MAKE) MODULE_DIRS="$(ALL_MODULES)" chemics ; fi
53        if [ $(WRF_EM_CORE) -eq 1 ]    ; then $(MAKE) MODULE_DIRS="$(ALL_MODULES)" em_core ; fi
54        if [ $(WRF_NMM_CORE) -eq 1 ]   ; then $(MAKE) MODULE_DIRS="$(ALL_MODULES)" nmm_core ; fi
55        if [ $(WRF_EXP_CORE) -eq 1 ]   ; then $(MAKE) MODULE_DIRS="$(ALL_MODULES)" exp_core ; fi
56        ( cd main ; $(MAKE) MODULE_DIRS="$(ALL_MODULES)" SOLVER=em em_wrf )
57        ( cd run ; /bin/rm -f wrf.exe ; ln -s ../main/wrf.exe . )
58        if [ $(ESMF_COUPLING) -eq 1 ] ; then \
59          ( cd main ; $(MAKE) MODULE_DIRS="$(ALL_MODULES)" SOLVER=em em_wrf_ESMFApp ) ; \
60        fi
61
62### 3.a.  rules to build the framework and then the experimental core
63
64exp_wrf : configcheck
65        $(MAKE) MODULE_DIRS="$(ALL_MODULES)" ext
66        $(MAKE) MODULE_DIRS="$(ALL_MODULES)" toolsdir
67        $(MAKE) MODULE_DIRS="$(ALL_MODULES)" framework
68        $(MAKE) MODULE_DIRS="$(ALL_MODULES)" shared
69        ( cd main ; $(MAKE) MODULE_DIRS="$(ALL_MODULES)" SOLVER=exp exp_wrf )
70
71
72nmm_wrf : wrf
73
74
75#  Eulerian mass coordinate initializations
76
77em_quarter_ss : wrf
78        @ echo '--------------------------------------'
79        ( cd main ; $(MAKE) MODULE_DIRS="$(ALL_MODULES)" SOLVER=em IDEAL_CASE=quarter_ss em_ideal )
80        ( cd test/em_quarter_ss ; /bin/rm -f wrf.exe ; ln -s ../../main/wrf.exe . )
81        ( cd test/em_quarter_ss ; /bin/rm -f ideal.exe ; ln -s ../../main/ideal.exe . )
82        ( cd test/em_quarter_ss ; /bin/rm -f README.namelist ; ln -s ../../run/README.namelist . )
83        ( cd test/em_quarter_ss ; /bin/rm -f gribmap.txt ; ln -s ../../run/gribmap.txt . )
84        ( cd test/em_quarter_ss ; /bin/rm -f grib2map.tbl ; ln -s ../../run/grib2map.tbl . )
85        ( cd run ; /bin/rm -f ideal.exe ; ln -s ../main/ideal.exe . )
86        ( cd run ; if test -f namelist.input ; then \
87                /bin/cp -f namelist.input namelist.input.backup ; fi ; \
88                /bin/rm -f namelist.input ; ln -s ../test/em_quarter_ss/namelist.input . )
89        ( cd run ; /bin/rm -f input_sounding ; ln -s ../test/em_quarter_ss/input_sounding . )
90
91em_squall2d_x : wrf
92        @ echo '--------------------------------------'
93        ( cd main ; $(MAKE) MODULE_DIRS="$(ALL_MODULES)" SOLVER=em IDEAL_CASE=squall2d_x em_ideal )
94        ( cd test/em_squall2d_x ; /bin/rm -f wrf.exe ; ln -s ../../main/wrf.exe . )
95        ( cd test/em_squall2d_x ; /bin/rm -f ideal.exe ; ln -s ../../main/ideal.exe . )
96        ( cd test/em_squall2d_x ; /bin/rm -f README.namelist ; ln -s ../../run/README.namelist . )
97        ( cd test/em_squall2d_x ; /bin/rm -f gribmap.txt ; ln -s ../../run/gribmap.txt . )
98        ( cd test/em_squall2d_x ; /bin/rm -f grib2map.tbl ; ln -s ../../run/grib2map.tbl . )
99        ( cd run ; /bin/rm -f ideal.exe ; ln -s ../main/ideal.exe . )
100        ( cd run ; if test -f namelist.input ; then \
101                /bin/cp -f namelist.input namelist.input.backup ; fi ; \
102                /bin/rm -f namelist.input ; ln -s ../test/em_squall2d_x/namelist.input . )
103        ( cd run ; /bin/rm -f input_sounding ; ln -s ../test/em_squall2d_x/input_sounding . )
104
105em_squall2d_y : wrf
106        @ echo '--------------------------------------'
107        ( cd main ; $(MAKE) MODULE_DIRS="$(ALL_MODULES)" SOLVER=em IDEAL_CASE=squall2d_y em_ideal )
108        ( cd test/em_squall2d_y ; /bin/rm -f wrf.exe ; ln -s ../../main/wrf.exe . )
109        ( cd test/em_squall2d_y ; /bin/rm -f ideal.exe ; ln -s ../../main/ideal.exe . )
110        ( cd test/em_squall2d_y ; /bin/rm -f README.namelist ; ln -s ../../run/README.namelist . )
111        ( cd test/em_squall2d_y ; /bin/rm -f gribmap.txt ; ln -s ../../run/gribmap.txt . )
112        ( cd test/em_squall2d_y ; /bin/rm -f grib2map.tbl ; ln -s ../../run/grib2map.tbl . )
113        ( cd run ; /bin/rm -f ideal.exe ; ln -s ../main/ideal.exe . )
114        ( cd run ; if test -f namelist.input ; then \
115                /bin/cp -f namelist.input namelist.input.backup ; fi ; \
116                /bin/rm -f namelist.input ; ln -s ../test/em_squall2d_y/namelist.input . )
117        ( cd run ; /bin/rm -f input_sounding ; ln -s ../test/em_squall2d_y/input_sounding . )
118
119em_b_wave : wrf
120        @ echo '--------------------------------------'
121        ( cd main ; $(MAKE) MODULE_DIRS="$(ALL_MODULES)" SOLVER=em IDEAL_CASE=b_wave em_ideal )
122        ( cd test/em_b_wave ; /bin/rm -f wrf.exe ; ln -s ../../main/wrf.exe . )
123        ( cd test/em_b_wave ; /bin/rm -f ideal.exe ; ln -s ../../main/ideal.exe . )
124        ( cd test/em_b_wave ; /bin/rm -f README.namelist ; ln -s ../../run/README.namelist . )
125        ( cd test/em_b_wave ; /bin/rm -f gribmap.txt ; ln -s ../../run/gribmap.txt . )
126        ( cd test/em_b_wave ; /bin/rm -f grib2map.tbl ; ln -s ../../run/grib2map.tbl . )
127        ( cd run ; /bin/rm -f ideal.exe ; ln -s ../main/ideal.exe . )
128        ( cd run ; if test -f namelist.input ; then \
129                /bin/cp -f namelist.input namelist.input.backup ; fi ; \
130                /bin/rm -f namelist.input ; ln -s ../test/em_b_wave/namelist.input . )
131        ( cd run ; /bin/rm -f input_jet ; ln -s ../test/em_b_wave/input_jet . )
132
133convert_em : framework_only
134        if [ $(WRF_CONVERT) -eq 1 ] ; then \
135            ( cd main ; $(MAKE) MODULE_DIRS="$(ALL_MODULES)" convert_em ) ; \
136        fi
137
138#TBH:  For now, link wrf.exe, wrf_ESMFApp.exe, and wrf_SST_ESMF.exe into
139#TBH:  test/em_esmf_exp when ESMF_COUPLING is set.  Either wrf.exe or
140#TBH:  wrf_ESMFApp.exe can be used for stand-alone testing in this case. 
141#TBH:  wrf_SST_ESMF.exe is a coupled application.  Note that single make
142#TBH:  target $(SOLVER)_wrf_ESMFApp builds both wrf_ESMFApp.exe and
143#TBH:  wrf_SST_ESMF.exe. 
144#TBH:  Is this a clear violation of the DRY principle?  Oh yeah, you bet. 
145em_real : wrf
146        @ echo '--------------------------------------'
147        ( cd main ; $(MAKE) MODULE_DIRS="$(ALL_MODULES)" SOLVER=em IDEAL_CASE=real em_real )
148        ( cd test/em_real ; /bin/rm -f wrf.exe ; ln -s ../../main/wrf.exe . )
149        if [ $(ESMF_COUPLING) -eq 1 ] ; then \
150          ( cd main ; $(MAKE) MODULE_DIRS="$(ALL_MODULES)" SOLVER=em IDEAL_CASE=real em_wrf_ESMFApp ) ; \
151          ( cd test/em_esmf_exp ; /bin/rm -f wrf.exe ; ln -s ../../main/wrf.exe . ) ; \
152          ( cd test/em_esmf_exp ; /bin/rm -f wrf_ESMFApp.exe ; ln -s ../../main/wrf_ESMFApp.exe . ) ; \
153          ( cd test/em_esmf_exp ; /bin/rm -f wrf_SST_ESMF.exe ; ln -s ../../main/wrf_SST_ESMF.exe . ) ; \
154          ( cd test/em_esmf_exp ; /bin/rm -f real.exe ; ln -s ../../main/real.exe . ) ; \
155          ( cd test/em_esmf_exp ; /bin/rm -f README.namelist ; ln -s ../../run/README.namelist . ) ; \
156          ( cd test/em_esmf_exp ; /bin/rm -f ETAMPNEW_DATA RRTM_DATA ; \
157               ln -sf ../../run/ETAMPNEW_DATA . ;                      \
158               ln -sf ../../run/RRTM_DATA . ;                          \
159               ln -sf ../../run/CAM_ABS_DATA . ;                       \
160               ln -sf ../../run/CAM_AEROPT_DATA . ;                    \
161               ln -sf ../../run/ozone.formatted . ;                    \
162               ln -sf ../../run/ozone_lat.formatted . ;                \
163               ln -sf ../../run/ozone_plev.formatted . ;               \
164               if [ $(RWORDSIZE) -eq 8 ] ; then                        \
165                  ln -sf ../../run/ETAMPNEW_DATA_DBL ETAMPNEW_DATA ;   \
166                  ln -sf ../../run/RRTM_DATA_DBL RRTM_DATA ;           \
167               fi ) ; \
168          ( cd test/em_esmf_exp ; /bin/rm -f GENPARM.TBL ; ln -s ../../run/GENPARM.TBL . ) ; \
169          ( cd test/em_esmf_exp ; /bin/rm -f LANDUSE.TBL ; ln -s ../../run/LANDUSE.TBL . ) ; \
170          ( cd test/em_esmf_exp ; /bin/rm -f SOILPARM.TBL ; ln -s ../../run/SOILPARM.TBL . ) ; \
171          ( cd test/em_esmf_exp ; /bin/rm -f urban_param.tbl ; ln -s ../../run/urban_param.tbl . ) ; \
172          ( cd test/em_esmf_exp ; /bin/rm -f VEGPARM.TBL ; ln -s ../../run/VEGPARM.TBL . ) ; \
173          ( cd test/em_esmf_exp ; /bin/rm -f tr49t67 ; ln -s ../../run/tr49t67 . ) ; \
174          ( cd test/em_esmf_exp ; /bin/rm -f tr49t85 ; ln -s ../../run/tr49t85 . ) ; \
175          ( cd test/em_esmf_exp ; /bin/rm -f tr67t85 ; ln -s ../../run/tr67t85 . ) ; \
176          ( cd test/em_esmf_exp ; /bin/rm -f gribmap.txt ; ln -s ../../run/gribmap.txt . ) ; \
177          ( cd test/em_esmf_exp ; /bin/rm -f grib2map.tbl ; ln -s ../../run/grib2map.tbl . ) ; \
178        fi
179        ( cd test/em_real ; /bin/rm -f real.exe ; ln -s ../../main/real.exe . )
180        ( cd test/em_real ; /bin/rm -f ndown.exe ; ln -s ../../main/ndown.exe . )
181        ( cd test/em_real ; /bin/rm -f nup.exe ; ln -s ../../main/nup.exe . )
182        ( cd test/em_real ; /bin/rm -f README.namelist ; ln -s ../../run/README.namelist . )
183        ( cd test/em_real ; /bin/rm -f ETAMPNEW_DATA RRTM_DATA ;    \
184             ln -sf ../../run/ETAMPNEW_DATA . ;                     \
185             ln -sf ../../run/RRTM_DATA . ;                         \
186             ln -sf ../../run/CAM_ABS_DATA . ;                         \
187             ln -sf ../../run/CAM_AEROPT_DATA . ;                         \
188             ln -sf ../../run/ozone.formatted . ;                         \
189             ln -sf ../../run/ozone_lat.formatted . ;                         \
190             ln -sf ../../run/ozone_plev.formatted . ;                         \
191             if [ $(RWORDSIZE) -eq 8 ] ; then                       \
192                ln -sf ../../run/ETAMPNEW_DATA_DBL ETAMPNEW_DATA ;  \
193                ln -sf ../../run/RRTM_DATA_DBL RRTM_DATA ;          \
194             fi )
195        ( cd test/em_real ; /bin/rm -f GENPARM.TBL ; ln -s ../../run/GENPARM.TBL . )
196        ( cd test/em_real ; /bin/rm -f LANDUSE.TBL ; ln -s ../../run/LANDUSE.TBL . )
197        ( cd test/em_real ; /bin/rm -f SOILPARM.TBL ; ln -s ../../run/SOILPARM.TBL . )
198        ( cd test/em_real ; /bin/rm -f urban_param.tbl ; ln -s ../../run/urban_param.tbl . )
199        ( cd test/em_real ; /bin/rm -f VEGPARM.TBL ; ln -s ../../run/VEGPARM.TBL . )
200        ( cd test/em_real ; /bin/rm -f tr49t67 ; ln -s ../../run/tr49t67 . )
201        ( cd test/em_real ; /bin/rm -f tr49t85 ; ln -s ../../run/tr49t85 . )
202        ( cd test/em_real ; /bin/rm -f tr67t85 ; ln -s ../../run/tr67t85 . )
203        ( cd test/em_real ; /bin/rm -f gribmap.txt ; ln -s ../../run/gribmap.txt . )
204        ( cd test/em_real ; /bin/rm -f grib2map.tbl ; ln -s ../../run/grib2map.tbl . )
205        ( cd run ; /bin/rm -f real.exe ; ln -s ../main/real.exe . )
206        ( cd run ; /bin/rm -f ndown.exe ; ln -s ../main/ndown.exe . )
207        ( cd run ; /bin/rm -f nup.exe ; ln -s ../main/nup.exe . )
208        ( cd run ; if test -f namelist.input ; then \
209                /bin/cp -f namelist.input namelist.input.backup ; fi ; \
210                /bin/rm -f namelist.input ; ln -s ../test/em_real/namelist.input . )
211
212
213em_hill2d_x : wrf
214        @ echo '--------------------------------------'
215        ( cd main ; $(MAKE) MODULE_DIRS="$(ALL_MODULES)" SOLVER=em IDEAL_CASE=hill2d_x em_ideal )
216        ( cd test/em_hill2d_x ; /bin/rm -f wrf.exe ; ln -s ../../main/wrf.exe . )
217        ( cd test/em_hill2d_x ; /bin/rm -f ideal.exe ; ln -s ../../main/ideal.exe . )
218        ( cd test/em_hill2d_x ; /bin/rm -f README.namelist ; ln -s ../../run/README.namelist . )
219        ( cd test/em_hill2d_x ; /bin/rm -f gribmap.txt ; ln -s ../../run/gribmap.txt . )
220        ( cd test/em_hill2d_x ; /bin/rm -f grib2map.tbl ; ln -s ../../run/grib2map.tbl . )
221        ( cd run ; /bin/rm -f ideal.exe ; ln -s ../main/ideal.exe . )
222        ( cd run ; if test -f namelist.input ; then \
223                /bin/cp -f namelist.input namelist.input.backup ; fi ; \
224                /bin/rm -f namelist.input ; ln -s ../test/em_hill2d_x/namelist.input . )
225        ( cd run ; /bin/rm -f input_sounding ; ln -s ../test/em_hill2d_x/input_sounding . )
226
227em_grav2d_x : wrf
228        @ echo '--------------------------------------'
229        ( cd main ; $(MAKE) MODULE_DIRS="$(ALL_MODULES)" SOLVER=em IDEAL_CASE=grav2d_x em_ideal )
230        ( cd test/em_grav2d_x ; /bin/rm -f wrf.exe ; ln -s ../../main/wrf.exe . )
231        ( cd test/em_grav2d_x ; /bin/rm -f ideal.exe ; ln -s ../../main/ideal.exe . )
232        ( cd test/em_grav2d_x ; /bin/rm -f README.namelist ; ln -s ../../run/README.namelist . )
233        ( cd test/em_grav2d_x ; /bin/rm -f gribmap.txt ; ln -s ../../run/gribmap.txt . )
234        ( cd test/em_grav2d_x ; /bin/rm -f grib2map.tbl ; ln -s ../../run/grib2map.tbl . )
235        ( cd run ; /bin/rm -f ideal.exe ; ln -s ../main/ideal.exe . )
236        ( cd run ; if test -f namelist.input ; then \
237                /bin/cp -f namelist.input namelist.input.backup ; fi ; \
238                /bin/rm -f namelist.input ; ln -s ../test/em_grav2d_x/namelist.input . )
239        ( cd run ; /bin/rm -f input_sounding ; ln -s ../test/em_grav2d_x/input_sounding . )
240
241#### anthropogenic emissions converter
242
243emi_conv : wrf
244        @ echo '--------------------------------------'
245        ( cd chem ; $(MAKE) MODULE_DIRS="$(ALL_MODULES)" SOLVER=em IDEAL_CASE=real convert_emiss )
246        ( cd test/em_real ; /bin/rm -f convert_emiss.exe ; ln -s ../../chem/convert_emiss.exe . )
247        ( cd test/em_real ; /bin/rm -f README.namelist ; ln -s ../../run/README.namelist . )
248        ( cd run ; if test -f namelist.input ; then \
249                /bin/cp -f namelist.input namelist.input.backup ; fi ; \
250                /bin/rm -f namelist.input ; ln -s ../test/em_real/namelist.input . )
251
252#### biogenic emissions converter
253
254bio_conv : wrf
255        @ echo '--------------------------------------'
256        ( cd chem ; $(MAKE) MODULE_DIRS="$(ALL_MODULES)" SOLVER=em IDEAL_CASE=real convert_bioemiss )
257        ( cd test/em_real ; /bin/rm -f convert_bioemiss.exe ; ln -s ../../chem/convert_bioemiss.exe . )
258        ( cd test/em_real ; /bin/rm -f README.namelist ; ln -s ../../run/README.namelist . )
259        ( cd run ; if test -f namelist.input ; then \
260                /bin/cp -f namelist.input namelist.input.backup ; fi ; \
261                /bin/rm -f namelist.input ; ln -s ../test/em_real/namelist.input . )
262
263#### nmm converter
264
265nmm_real : nmm_wrf
266        @ echo '--------------------------------------'
267        ( cd main ; $(MAKE) MODULE_DIRS="$(ALL_MODULES)" SOLVER=nmm IDEAL_CASE=real real_nmm )
268        ( cd test/nmm_real ; /bin/rm -f wrf.exe ; ln -s ../../main/wrf.exe . )
269        ( cd test/nmm_real ; /bin/rm -f real_nmm.exe ; ln -s ../../main/real_nmm.exe . )
270        ( cd test/nmm_real ; /bin/rm -f README.namelist ; ln -s ../../run/README.namelist . )
271        ( cd test/nmm_real ; /bin/rm -f ETAMPNEW_DATA RRTM_DATA ;    \
272             ln -sf ../../run/ETAMPNEW_DATA . ;                     \
273             ln -sf ../../run/RRTM_DATA . ;                         \
274             if [ $(RWORDSIZE) -eq 8 ] ; then                       \
275                ln -sf ../../run/ETAMPNEW_DATA_DBL ETAMPNEW_DATA ;  \
276                ln -sf ../../run/RRTM_DATA_DBL RRTM_DATA ;          \
277             fi )
278        ( cd test/nmm_real ; /bin/rm -f GENPARM.TBL ; ln -s ../../run/GENPARM.TBL . )
279        ( cd test/nmm_real ; /bin/rm -f LANDUSE.TBL ; ln -s ../../run/LANDUSE.TBL . )
280        ( cd test/nmm_real ; /bin/rm -f SOILPARM.TBL ; ln -s ../../run/SOILPARM.TBL . )
281        ( cd test/nmm_real ; /bin/rm -f VEGPARM.TBL ; ln -s ../../run/VEGPARM.TBL . )
282        ( cd test/nmm_real ; /bin/rm -f tr49t67 ; ln -s ../../run/tr49t67 . )
283        ( cd test/nmm_real ; /bin/rm -f tr49t85 ; ln -s ../../run/tr49t85 . )
284        ( cd test/nmm_real ; /bin/rm -f tr67t85 ; ln -s ../../run/tr67t85 . )
285        ( cd test/nmm_real ; /bin/rm -f gribmap.txt ; ln -s ../../run/gribmap.txt . )
286        ( cd test/nmm_real ; /bin/rm -f grib2map.txt ; ln -s ../../run/grib2map.txt . )
287        ( cd run ; /bin/rm -f real_nmm.exe ; ln -s ../main/real_nmm.exe . )
288        ( cd run ; if test -f namelist.input ; then \
289                /bin/cp -f namelist.input namelist.input.backup ; fi ; \
290                /bin/rm -f namelist.input ; ln -s ../test/nmm_real/namelist.input . )
291
292
293
294# semi-Lagrangian initializations
295
296
297ext :
298        @ echo '--------------------------------------'
299        ( cd frame ; $(MAKE) externals )
300
301framework :
302        @ echo '--------------------------------------'
303        ( cd frame ; $(MAKE) framework; \
304        cd ../external/io_netcdf ; make NETCDFPATH="$(NETCDFPATH)" FC="$(SFC) $(FCBASEOPTS)" RANLIB="$(RANLIB)" CPP="$(CPP)" LDFLAGS="$(LDFLAGS)" ESMF_IO_LIB_EXT="$(ESMF_IO_LIB_EXT)" ESMF_MOD_DEPENDENCE="../$(ESMF_MOD_DEPENDENCE)" diffwrf; \
305        cd ../io_int ; $(MAKE) SFC="$(SFC) $(FCBASEOPTS)" FC="$(SFC) $(FCBASEOPTS)" RANLIB="$(RANLIB)" CPP="$(CPP)" ESMF_IO_LIB_EXT="$(ESMF_IO_LIB_EXT)" ESMF_MOD_DEPENDENCE="../$(ESMF_MOD_DEPENDENCE)" diffwrf ; cd ../../frame )
306
307shared :
308        @ echo '--------------------------------------'
309        ( cd share ; $(MAKE) )
310
311chemics :
312        @ echo '--------------------------------------'
313        ( cd chem ; $(MAKE) )
314
315physics :
316        @ echo '--------------------------------------'
317        ( cd phys ; $(MAKE) )
318
319em_core :
320        @ echo '--------------------------------------'
321        ( cd dyn_em ; $(MAKE) )
322
323# rule used by configure to test if this will compile with MPI 2 calls MPI_Comm_f2c and _c2f
324mpi2_test :
325        @ cd tools ; /bin/rm -f mpi2_test ; $(CC) -c mpi2_test.c ; cd ..
326
327# rule used by configure to test if fseeko and fseeko64 are supported (for share/landread.c to work right)
328fseek_test :
329        @ cd tools ; /bin/rm -f fseeko_test ; $(SCC) -DTEST_FSEEKO -o fseeko_test fseek_test.c ; cd ..
330        @ cd tools ; /bin/rm -f fseeko64_test ; $(SCC) -DTEST_FSEEKO64 -o fseeko64_test fseek_test.c ; cd ..
331
332### 3.b.  sub-rule to build the expimental core
333
334# uncomment the two lines after exp_core for EXP
335exp_core :
336        @ echo '--------------------------------------'
337        ( cd dyn_exp ; $(MAKE) )
338
339# uncomment the two lines after nmm_core for NMM
340nmm_core :
341        @ echo '--------------------------------------'
342        ( cd dyn_nmm ; $(MAKE) )
343
344toolsdir :
345        @ echo '--------------------------------------'
346        ( cd tools ; $(MAKE) CC="$(CC_TOOLS)" )
347
348# Use this target to build stand-alone tests of esmf_time_f90. 
349# Only touches external/esmf_time_f90/. 
350esmf_time_f90_only :
351        @ echo '--------------------------------------'
352        ( cd external/esmf_time_f90 ; $(MAKE) FC="$(FC) $(FCFLAGS)" CPP="$(CPP) -DTIME_F90_ONLY" tests )
353
354clean :
355                @ echo 'Use the clean script'
356
357# DO NOT DELETE
Note: See TracBrowser for help on using the repository browser.