2 ###########################################################
3 #ARCH (WALNUT) PC Linux x86_64 (IA64 and Opteron), PGI compiler 5.2 or higher (Single-threaded, no nesting) (optimized)
4 # Note that for 5.1.x comment out -Mpia=fast
11 RWORDSIZE = $(NATIVE_RWORDSIZE)
12 PROMOTION = -r$(RWORDSIZE) -i4
13 CFLAGS = -DLANDREAD_STUB
14 FCOPTIM = -O2 -fastsse #-Mipa=fast
16 #FCBASEOPTS = -w -byteswapio -Ktrap=fp -Mfree $(FCDEBUG)
17 FCBASEOPTS = -w -byteswapio -Mfree $(FCDEBUG)
18 FCFLAGS = $(FCOPTIM) $(FCBASEOPTS)
19 ARCHFLAGS = $(COREDEFS) -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4 \
20 CONFIGURE_NETCDF_FLAG -DGRIB1 CONFIGURE_GRIB2_FLAG \
21 -DLIMIT_ARGS -DLANDREAD_STUB
22 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
24 ESMF_IO_LIB = ESMFIOLIB
25 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
26 INCLUDE_MODULES = -module ../main -I../external/io_netcdf -I../external/io_int -I../external/esmf_time_f90 \
27 -I../frame -I../share -I../phys -I../inc -I../chem
30 LIB = CONFIGURE_NETCDF_LIB_PATH \
31 -L../external/io_grib1 -lio_grib1 \
33 -L../external/io_grib_share -lio_grib_share \
34 ../frame/module_internal_header_util.o ../frame/pack_utils.o -L../external/esmf_time_f90 -lesmf_time
35 LDFLAGS = CONFIGURE_LDFLAGS
36 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
37 CPP = /lib/cpp -C -P -traditional
38 POUND_DEF = -traditional $(COREDEFS) -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS)
39 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) $(ENVCOMPDEFS) $(POUND_DEF)
43 NETCDFPATH = CONFIGURE_NETCDF_PATH
46 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 wrfio_int module_dm.F esmf_time
49 ( /bin/cp module_dm_warning module_dm.F ; cat module_dm_stubs.F >> module_dm.F )
52 ( cd ../external/io_netcdf ; \
53 make NETCDFPATH=CONFIGURE_NETCDF_PATH RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCFLAGS) -w" TRADFLAG="-traditional" )
56 ( cd ../external/io_grib_share ; \
57 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" archive)
60 ( cd ../external/io_grib1 ; \
61 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" archive)
64 ( cd ../external/io_grib2 ; \
65 make CC="$(SCC)" CFLAGS="$(CFLAGS) CONFIGURE_GRIB2_INC" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" FIXED="-Mfixed" archive)
68 ( cd ../external/io_int ; \
69 make CC="$(CC)" RANLIB="$(RANLIB)" CPP="$(CPP)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS) -w" \
70 TRADFLAG="-traditional" all )
73 ( cd ../external/esmf_time_f90 ; \
74 make FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" CPP="$(CPP) -I../../inc -I. $(POUND_DEF)" )
76 # compile these without high optimization to speed compile
77 solve_interface.o : solve_interface.F
78 shift_domain_em.o : shift_domain_em.F
79 module_io_mm5.o : module_io_mm5.F
80 module_si_io.o : module_si_io.F
81 module_io_wrf.o : module_io_wrf.F
82 module_domain.o : module_domain.F
83 module_start.o : module_start.F
84 module_initialize.o : module_initialize.F
85 module_initialize_b_wave.o : module_initialize_b_wave.F
86 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
87 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
88 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
89 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
90 module_initialize_real.o : module_initialize_real.F
91 module_dm.o : module_dm.F
92 start_domain.o : start_domain.F
93 mediation_integrate.o : mediation_integrate.F
94 module_configure.o : module_configure.F
98 module_io_mm5.o module_si_io.o module_io_wrf.o module_domain.o \
99 module_start.o module_initialize.o module_initialize_b_wave.o \
100 module_initialize_hill2d_x.o module_initialize_quarter_ss.o \
101 module_initialize_squall2d_x.o module_initialize_squall2d_y.o \
102 mediation_integrate.o \
104 module_initialize_real.o module_dm.o start_domain.o :
106 $(SED_FTN) $*.F > $*.b
107 $(CPP) -I../inc $(CPPFLAGS) $*.b > $*.f90
109 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90
111 ###########################################################
112 #ARCH (WALNUT) PC Linux x86_64 (IA64 and Opteron), PGI compiler 5.2 or higher (Single-threaded, no nesting) (debug)
113 # Note that for 5.1.x comment out -Mpia=fast
120 RWORDSIZE = $(NATIVE_RWORDSIZE)
121 PROMOTION = -r$(RWORDSIZE) -i4
122 CFLAGS = -DLANDREAD_STUB
123 FCOPTIM = #-fastsse #-Mipa=fast
125 #FCBASEOPTS = -w -byteswapio -Ktrap=fp -Mfree $(FCDEBUG)
126 FCBASEOPTS = -w -byteswapio -Mfree $(FCDEBUG)
127 FCFLAGS = $(FCOPTIM) $(FCBASEOPTS)
128 ARCHFLAGS = $(COREDEFS) -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4 \
129 CONFIGURE_NETCDF_FLAG -DGRIB1 CONFIGURE_GRIB2_FLAG \
130 -DLIMIT_ARGS -DLANDREAD_STUB
131 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
133 ESMF_IO_LIB = ESMFIOLIB
134 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
135 INCLUDE_MODULES = -module ../main -I../external/io_netcdf -I../external/io_int -I../external/esmf_time_f90 \
136 -I../frame -I../share -I../phys -I../inc -I../chem
139 LIB = CONFIGURE_NETCDF_LIB_PATH \
140 -L../external/io_grib1 -lio_grib1 \
141 CONFIGURE_GRIB2_LIB \
142 -L../external/io_grib_share -lio_grib_share \
143 ../frame/module_internal_header_util.o ../frame/pack_utils.o -L../external/esmf_time_f90 -lesmf_time
144 LDFLAGS = CONFIGURE_LDFLAGS
145 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
146 CPP = /lib/cpp -C -P -traditional
147 POUND_DEF = -traditional $(COREDEFS) -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS)
148 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) $(ENVCOMPDEFS) $(POUND_DEF)
152 NETCDFPATH = CONFIGURE_NETCDF_PATH
155 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 wrfio_int module_dm.F esmf_time
158 ( /bin/cp module_dm_warning module_dm.F ; cat module_dm_stubs.F >> module_dm.F )
161 ( cd ../external/io_netcdf ; \
162 make NETCDFPATH=CONFIGURE_NETCDF_PATH RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCFLAGS) -w" TRADFLAG="-traditional" )
165 ( cd ../external/io_grib_share ; \
166 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" archive)
169 ( cd ../external/io_grib1 ; \
170 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" archive)
173 ( cd ../external/io_grib2 ; \
174 make CC="$(SCC)" CFLAGS="$(CFLAGS) CONFIGURE_GRIB2_INC" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" FIXED="-Mfixed" archive)
177 ( cd ../external/io_int ; \
178 make CC="$(CC)" RANLIB="$(RANLIB)" CPP="$(CPP)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS) -w" \
179 TRADFLAG="-traditional" all )
182 ( cd ../external/esmf_time_f90 ; \
183 make FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" CPP="$(CPP) -I../../inc -I. $(POUND_DEF)" )
185 # compile these without high optimization to speed compile
186 solve_interface.o : solve_interface.F
187 shift_domain_em.o : shift_domain_em.F
188 module_io_mm5.o : module_io_mm5.F
189 module_si_io.o : module_si_io.F
190 module_io_wrf.o : module_io_wrf.F
191 module_domain.o : module_domain.F
192 module_start.o : module_start.F
193 module_initialize.o : module_initialize.F
194 module_initialize_b_wave.o : module_initialize_b_wave.F
195 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
196 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
197 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
198 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
199 module_initialize_real.o : module_initialize_real.F
200 module_dm.o : module_dm.F
201 start_domain.o : start_domain.F
202 mediation_integrate.o : mediation_integrate.F
203 module_configure.o : module_configure.F
207 module_io_mm5.o module_si_io.o module_io_wrf.o module_domain.o \
208 module_start.o module_initialize.o module_initialize_b_wave.o \
209 module_initialize_hill2d_x.o module_initialize_quarter_ss.o \
210 module_initialize_squall2d_x.o module_initialize_squall2d_y.o \
211 mediation_integrate.o \
213 module_initialize_real.o module_dm.o start_domain.o :
215 $(SED_FTN) $*.F > $*.b
216 $(CPP) -I../inc $(CPPFLAGS) $*.b > $*.f90
218 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90
220 ###########################################################
221 #ARCH (WF) AMD x86_64 Intel xeon i686 ia32 Xeon Linux, ifort compiler (single-threaded, no nesting) debug
225 FC = ifort -g -debug extended -debug-parameters all -traceback -fpe0
229 RWORDSIZE = $(NATIVE_RWORDSIZE)
230 RSIZEBITS = `expr $(RWORDSIZE) \* 8`
231 PROMOTION = -real_size $(RSIZEBITS)
233 FCBASEOPTS = -w -FR -cm -I. -Vaxlib -convert big_endian -mp
235 FCFLAGS = $(FCOPTIM) $(FCBASEOPTS) $(OMP)
237 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
239 ESMF_IO_LIB = ESMFIOLIB
240 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
241 INCLUDE_MODULES = -module ../main -I../external/io_netcdf -I../external/io_int -I../external/esmf_time_f90 \
242 -I../external -I../frame -I../share -I../phys -I../inc -I../chem
243 ARCHFLAGS = $(COREDEFS) -DLIMIT_ARGS -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) \
244 -DLWORDSIZE=4 CONFIGURE_NETCDF_FLAG -DGRIB1 CONFIGURE_GRIB2_FLAG
246 LDFLAGS = $(FCFLAGS) $(OMP) CONFIGURE_LDFLAGS
247 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
248 CPP = /lib/cpp -traditional
249 POUND_DEF = $(OMPCPP) $(COREDEFS) -DNONSTANDARD_SYSTEM \
250 -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS)
251 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) $(ENVCOMPDEFS) $(POUND_DEF)
252 PERL = CONFIGURE_PERL_PATH
254 LIB = CONFIGURE_NETCDF_LIB_PATH ../frame/module_internal_header_util.o ../frame/pack_utils.o \
255 -L../external/esmf_time_f90 -lesmf_time \
256 -L../external/io_grib1 -lio_grib1 \
257 CONFIGURE_GRIB2_LIB \
258 -L../external/io_grib_share -lio_grib_share
262 NETCDFPATH = CONFIGURE_NETCDF_PATH
265 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 wrfio_int module_dm.F esmf_time
268 ( /bin/cp module_dm_warning module_dm.F ; cat module_dm_stubs.F >> module_dm.F )
271 ( cd ../external/io_netcdf ; \
272 make NETCDFPATH=CONFIGURE_NETCDF_PATH RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -FR -I. -w" )
275 ( cd ../external/io_grib_share ; \
276 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" \
277 FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCFLAGS) -w" archive)
280 ( cd ../external/io_grib1 ; \
281 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCFLAGS) -w" archive)
284 ( cd ../external/io_grib2 ; \
285 make CC="$(SCC)" CFLAGS="$(CFLAGS) CONFIGURE_GRIB2_INC" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCFLAGS) -w" FIXED="-fixed" archive)
288 ( cd ../external/io_int ; \
289 make CC="$(CC)" RANLIB="$(RANLIB)" CPP="$(CPP)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS) -w" all )
292 ( cd ../external/esmf_time_f90 ; \
293 make FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP) -I../../inc -I. $(POUND_DEF)" )
295 # compile these without high optimization to speed compile
296 solve_interface.o : solve_interface.F
297 shift_domain_em.o : shift_domain_em.F
298 module_io_mm5.o : module_io_mm5.F
299 module_si_io.o : module_si_io.F
300 module_io_wrf.o : module_io_wrf.F
301 module_domain.o : module_domain.F
302 module_start.o : module_start.F
303 module_initialize.o : module_initialize.F
304 module_initialize_b_wave.o : module_initialize_b_wave.F
305 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
306 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
307 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
308 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
309 module_initialize_real.o : module_initialize_real.F
310 start_domain.o : start_domain.F
311 wrf_bdyin.o : wrf_bdyin.F
312 wrf_bdyout.o : wrf_bdyout.F
313 wrf_histin.o : wrf_histin.F
314 wrf_histout.o : wrf_histout.F
315 wrf_inputin.o : wrf_inputin.F
316 wrf_inputout.o : wrf_inputout.F
317 wrf_restartin.o : wrf_restartin.F
318 wrf_restartout.o : wrf_restartout.F
320 wrf_bdyin.o wrf_bdyout.o \
321 wrf_histin.o wrf_histout.o \
322 wrf_inputin.o wrf_inputout.o \
323 wrf_restartin.o wrf_restartout.o \
326 module_io_mm5.o module_si_io.o module_io_wrf.o module_domain.o \
327 module_start.o module_initialize.o module_initialize_b_wave.o \
328 module_initialize_hill2d_x.o module_initialize_quarter_ss.o \
329 module_initialize_squall2d_x.o module_initialize_squall2d_y.o \
330 module_initialize_real.o module_dm.o start_domain.o :
332 $(SED_FTN) $*.F > $*.b
333 $(CPP) -I../inc $(CPPFLAGS) $*.b > $*.f90
335 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) -O0 $*.f90
337 module_dm.o : module_dm.F
338 module_configure.o : module_configure.F
343 $(SED_FTN) $*.F > $*.b
344 $(CPP) -I../inc $(CPPFLAGS) $*.b > $*.f90
346 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) -g -O0 $*.f90
350 ###########################################################
351 #ARCH (WF) AMD x86_64 Intel xeon i686 ia32 Xeon Linux, ifort compiler (single-threaded, no nesting) -O2
359 RWORDSIZE = $(NATIVE_RWORDSIZE)
360 RSIZEBITS = `expr $(RWORDSIZE) \* 8`
361 PROMOTION = -real_size $(RSIZEBITS)
363 FCBASEOPTS = -w -FR -cm -I. -Vaxlib -convert big_endian -fp-model precise -switch fe_use_rtl_copy_arg_inout -mP2OPT_vec_xform_level=103
364 FCOPTIM = -O3 -unroll0 -xP -fno-alias -ip
365 FCFLAGS = $(FCOPTIM) $(FCBASEOPTS) $(OMP)
367 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
369 ESMF_IO_LIB = ESMFIOLIB
370 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
371 INCLUDE_MODULES = -module ../main -I../external/io_netcdf -I../external/io_int -I../external/esmf_time_f90 \
372 -I../external -I../frame -I../share -I../phys -I../inc -I../chem
373 ARCHFLAGS = $(COREDEFS) -DLIMIT_ARGS -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) \
374 -DLWORDSIZE=4 CONFIGURE_NETCDF_FLAG -DGRIB1 CONFIGURE_GRIB2_FLAG
376 LDFLAGS = $(FCFLAGS) $(OMP) CONFIGURE_LDFLAGS
377 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
378 CPP = /lib/cpp -traditional
379 POUND_DEF = $(OMPCPP) $(COREDEFS) -DNONSTANDARD_SYSTEM \
380 -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS)
381 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) $(ENVCOMPDEFS) $(POUND_DEF)
382 PERL = CONFIGURE_PERL_PATH
384 LIB = CONFIGURE_NETCDF_LIB_PATH ../frame/module_internal_header_util.o ../frame/pack_utils.o \
385 -L../external/esmf_time_f90 -lesmf_time \
386 -L../external/io_grib1 -lio_grib1 \
387 CONFIGURE_GRIB2_LIB \
388 -L../external/io_grib_share -lio_grib_share
392 NETCDFPATH = CONFIGURE_NETCDF_PATH
395 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 wrfio_int module_dm.F esmf_time
398 ( /bin/cp module_dm_warning module_dm.F ; cat module_dm_stubs.F >> module_dm.F )
401 ( cd ../external/io_netcdf ; \
402 make NETCDFPATH=CONFIGURE_NETCDF_PATH RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -FR -I. -w" )
405 ( cd ../external/io_grib_share ; \
406 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" \
407 FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCFLAGS) -w" archive)
410 ( cd ../external/io_grib1 ; \
411 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCFLAGS) -w" archive)
414 ( cd ../external/io_grib2 ; \
415 make CC="$(SCC)" CFLAGS="$(CFLAGS) CONFIGURE_GRIB2_INC" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCFLAGS) -w" FIXED="-fixed" archive)
418 ( cd ../external/io_int ; \
419 make CC="$(CC)" RANLIB="$(RANLIB)" CPP="$(CPP)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS) -w" all )
422 ( cd ../external/esmf_time_f90 ; \
423 make FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP) -I../../inc -I. $(POUND_DEF)" )
425 # compile these without high optimization to speed compile
426 solve_interface.o : solve_interface.F
427 shift_domain_em.o : shift_domain_em.F
428 module_io_mm5.o : module_io_mm5.F
429 module_si_io.o : module_si_io.F
430 module_io_wrf.o : module_io_wrf.F
431 module_domain.o : module_domain.F
432 module_start.o : module_start.F
433 module_initialize.o : module_initialize.F
434 module_initialize_b_wave.o : module_initialize_b_wave.F
435 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
436 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
437 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
438 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
439 module_initialize_real.o : module_initialize_real.F
440 start_domain.o : start_domain.F
441 wrf_bdyin.o : wrf_bdyin.F
442 wrf_bdyout.o : wrf_bdyout.F
443 wrf_histin.o : wrf_histin.F
444 wrf_histout.o : wrf_histout.F
445 wrf_inputin.o : wrf_inputin.F
446 wrf_inputout.o : wrf_inputout.F
447 wrf_restartin.o : wrf_restartin.F
448 wrf_restartout.o : wrf_restartout.F
450 wrf_bdyin.o wrf_bdyout.o \
451 wrf_histin.o wrf_histout.o \
452 wrf_inputin.o wrf_inputout.o \
453 wrf_restartin.o wrf_restartout.o \
456 module_io_mm5.o module_si_io.o module_io_wrf.o module_domain.o \
457 module_start.o module_initialize.o module_initialize_b_wave.o \
458 module_initialize_hill2d_x.o module_initialize_quarter_ss.o \
459 module_initialize_squall2d_x.o module_initialize_squall2d_y.o \
460 module_initialize_real.o module_dm.o start_domain.o :
462 $(SED_FTN) $*.F > $*.b
463 $(CPP) -I../inc $(CPPFLAGS) $*.b > $*.f90
465 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) -O0 $*.f90
469 module_dm.o : module_dm.F
470 module_configure.o : module_configure.F
475 $(SED_FTN) $*.F > $*.b
476 $(CPP) -I../inc $(CPPFLAGS) $*.b > $*.f90
478 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) -g -O0 $*.f90
480 ###########################################################
481 #ARCH (WF) AMD x86_64 Intel xeon i686 ia32 Xeon Linux, ifort compiler (single threaded, allows nesting using RSL without MPI) -O2
483 # Note: if you use ifort 8.0, please remove option -xW (for vectorization). This option
484 # has been identified to produce wrong results occationally.
485 # Notes: for experimental implementation of moving nests, add -DMOVE_NESTS to ARCHFLAGS
486 # for experimental implementation of vortex tracking nests, add -DMOVE_NESTS -DVORTEX_CENTER to ARCHFLAGS
497 RWORDSIZE = $(NATIVE_RWORDSIZE)
498 RSIZEBITS = `expr $(RWORDSIZE) \* 8`
499 PROMOTION = -real_size $(RSIZEBITS)
500 FCOPTIM = -O3 -unroll0 -xW -fno-alias -ip
502 FCBASEOPTS = -FR -cm -w -I. $(FCDEBUG) -convert big_endian -fp-model precise -switch fe_use_rtl_copy_arg_inout -mP2OPT_vec_xform_level=103
503 FCFLAGS = $(FCOPTIM) $(FCBASEOPTS) $(OMP)
504 ARCHFLAGS = $(COREDEFS) -DGRIB1 CONFIGURE_GRIB2_FLAG -DINTIO -DWRF_RSL_IO -DRSL -DDM_PARALLEL \
505 -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4 CONFIGURE_NETCDF_FLAG \
506 -DLIMIT_ARGS -DSTUBMPI -DLIMIT_ARGS
507 CFLAGS = -w -DDM_PARALLEL -DWRF_RSL_IO \
508 -DMAXDOM_MAKE=$(MAX_DOMAINS) -DMAXPROC_MAKE=$(MAX_PROC) -I../external/RSL/RSL $(ARCHFLAGS)
509 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
511 ESMF_IO_LIB = ESMFIOLIB
512 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
513 INCLUDE_MODULES = -module ../main -I../external/io_netcdf -I../external/io_int -I../external/esmf_time_f90 \
514 -I../external -I../frame -I../share -I../phys -I../inc -I../chem
517 LIB = CONFIGURE_NETCDF_LIB_PATH -L../external/RSL/RSL -lrsl \
518 -L../external/io_int -lwrfio_int \
519 -L../external/io_grib1 -lio_grib1 \
520 CONFIGURE_GRIB2_LIB \
521 -L../external/io_grib_share -lio_grib_share \
522 ../frame/module_internal_header_util.o ../frame/pack_utils.o -L../external/esmf_time_f90 -lesmf_time
523 LDFLAGS = $(FCOPTIM) $(OMP) -convert big_endian CONFIGURE_LDFLAGS
524 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
525 CPP = /lib/cpp -traditional
526 POUND_DEF = -DNO_RRTM_PHYSICS $(OMPCPP) $(COREDEFS) -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS) -DGRIB1 CONFIGURE_GRIB2_FLAG
527 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) -I../external/RSL/RSL -C -P `cat ../inc/dm_comm_cpp_flags` $(ENVCOMPDEFS) $(POUND_DEF)
531 NETCDFPATH = CONFIGURE_NETCDF_PATH
534 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 ../external/RSL/RSL/librsl.a wrfio_int gen_comms.c module_dm.F esmf_time
536 gen_comms.c : ../external/RSL/gen_comms.c
537 ( /bin/cp ../tools/gen_comms_warning ../tools/gen_comms.c ; \
538 cat ../external/RSL/gen_comms.c >> ../tools/gen_comms.c )
540 module_dm.F : ../external/RSL/module_dm.F
541 ( /bin/cp module_dm_warning module_dm.F ; cat ../external/RSL/module_dm.F >> module_dm.F )
544 ( cd ../external/io_netcdf ; \
545 make NETCDFPATH=CONFIGURE_NETCDF_PATH RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCFLAGS) -w" TRADFLAG="-traditional" )
548 ( cd ../external/io_grib_share ; \
549 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" \
550 FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCFLAGS) -w" archive)
553 ( cd ../external/io_grib1 ; \
554 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" \
555 CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCFLAGS) -w" archive)
557 ( cd ../external/io_grib2 ; \
558 make CC="$(SCC)" CFLAGS="$(CFLAGS) CONFIGURE_GRIB2_INC" RM="$(RM)" RANLIB="$(RANLIB)" \
559 CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCFLAGS) -w" FIXED="-fixed" archive)
562 ( cd ../external/io_int ; \
563 make CC="$(CC)" RANLIB="$(RANLIB)" CPP="$(CPP)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" all )
566 ( cd ../external/esmf_time_f90 ; \
567 make FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" CPP="$(CPP) -I../../inc -I. $(POUND_DEF)" )
569 ../external/RSL/RSL/librsl.a :
570 ( cd ../external/RSL/RSL ; \
571 make CC="$(CC)" FC="$(FC) $(PROMOTION)" CFLAGS="-DSTUBS $(CFLAGS)" MAX_DOMAINS=$(MAX_DOMAINS) MAX_PROC=$(MAX_PROC) LEARN_BCAST=-DLEARN_BCAST stub )
573 # compile these without high optimization to speed compile
574 #solve_em.o : solve_em.F
575 solve_interface.o : solve_interface.F
576 shift_domain_em.o : shift_domain_em.F
577 module_io_mm5.o : module_io_mm5.F
578 module_si_io.o : module_si_io.F
579 module_io_wrf.o : module_io_wrf.F
580 module_domain.o : module_domain.F
581 module_start.o : module_start.F
582 module_initialize.o : module_initialize.F
583 module_initialize_b_wave.o : module_initialize_b_wave.F
584 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
585 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
586 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
587 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
588 module_initialize_real.o : module_initialize_real.F
589 start_domain.o : start_domain.F
590 mediation_integrate.o : mediation_integrate.F
594 module_io_mm5.o module_si_io.o module_io_wrf.o module_domain.o \
595 module_start.o module_initialize.o module_initialize_b_wave.o \
596 module_initialize_hill2d_x.o module_initialize_quarter_ss.o \
597 module_initialize_squall2d_x.o module_initialize_squall2d_y.o \
598 mediation_integrate.o \
599 module_initialize_real.o start_domain.o :
601 $(SED_FTN) $*.F > $*.b
602 $(CPP) -I../inc $(CPPFLAGS) $*.b > $*.f90
604 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90
606 solve_em.o: solve_em.F
609 $(SED_FTN) $*.F > $*.b
610 $(CPP) -I../inc $(CPPFLAGS) $*.b > $*.f90
612 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) -O $*.f90
614 module_dm.o : module_dm.F
615 module_configure.o : module_configure.F
620 $(SED_FTN) $*.F > $*.b
621 $(CPP) -I../inc $(CPPFLAGS) $*.b > $*.f90
623 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) -g -O0 $*.f90
625 ###########################################################
626 #ARCH (WF) AMD x86_64 Intel xeon i686 ia32 Xeon Linux, ifort compiler (OpenMP)
628 # Note: if you use ifort 8.0, please remove option -xW (for vectorization). This option
629 # has been identified to produce wrong results occationally.
631 OMP = -openmp -fpp -auto
638 RWORDSIZE = $(NATIVE_RWORDSIZE)
639 RSIZEBITS = `expr $(RWORDSIZE) \* 8`
640 PROMOTION = -real_size $(RSIZEBITS)
642 FCOPTIM = -O2 #-fno-alias -ip #-O2 -no-ipo # -xW
644 FCBASEOPTS = -FR -cm -w -I. $(FCDEBUG) -convert big_endian -fp-model precise #-switch fe_use_rtl_copy_arg_inout -mP2OPT_vec_xform_level=103
645 FCFLAGS = $(FCOPTIM) $(FCBASEOPTS) $(OMP)
646 ARCHFLAGS = $(COREDEFS) -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4 \
647 CONFIGURE_NETCDF_FLAG -DGRIB1 CONFIGURE_GRIB2_FLAG \
649 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
651 ESMF_IO_LIB = ESMFIOLIB
652 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
653 INCLUDE_MODULES = -I ../main -I../external/io_netcdf -I../external/io_int -I../external/esmf_time_f90 \
654 -I../frame -I../share -I../phys -I../inc -I../chem
657 LIB = CONFIGURE_NETCDF_LIB_PATH \
658 -L../external/io_grib1 -lio_grib1 \
659 CONFIGURE_GRIB2_LIB \
660 -L../external/io_grib_share -lio_grib_share \
661 ../frame/module_internal_header_util.o ../frame/pack_utils.o -L../external/esmf_time_f90 -lesmf_time
662 LDFLAGS = $(FCFLAGS) $(FCFLAGS) $(OMP) CONFIGURE_LDFLAGS
663 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
664 CPP = /lib/cpp -traditional
665 POUND_DEF = $(OMPCPP) $(COREDEFS) -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS) -DGRIB1 CONFIGURE_GRIB2_FLAG
666 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) $(ENVCOMPDEFS) $(POUND_DEF)
670 NETCDFPATH = CONFIGURE_NETCDF_PATH
673 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 wrfio_int module_dm.F esmf_time
676 ( /bin/cp module_dm_warning module_dm.F ; cat module_dm_stubs.F >> module_dm.F )
679 ( cd ../external/io_netcdf ; \
680 make NETCDFPATH=CONFIGURE_NETCDF_PATH RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCFLAGS) -w" TRADFLAG="-traditional" )
683 ( cd ../external/io_grib_share ; \
684 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" \
685 FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCFLAGS) -w" archive)
688 ( cd ../external/io_grib1 ; \
689 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCFLAGS) -w" archive)
692 ( cd ../external/io_grib2 ; \
693 make CC="$(SCC)" CFLAGS="$(CFLAGS) CONFIGURE_GRIB2_INC" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCFLAGS) -w" FIXED="-fixed" archive)
696 ( cd ../external/io_int ; \
697 make CC="$(CC)" RANLIB="$(RANLIB)" CPP="$(CPP)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS) -w" \
698 TRADFLAG="-traditional" all )
701 ( cd ../external/esmf_time_f90 ; \
702 make FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" CPP="$(CPP) -I../../inc -I. $(POUND_DEF)" )
704 # compile these without high optimization to speed compile
705 #solve_em.o : solve_em.F
706 solve_interface.o : solve_interface.F
707 shift_domain_em.o : shift_domain_em.F
708 module_io_mm5.o : module_io_mm5.F
709 module_si_io.o : module_si_io.F
710 module_io_wrf.o : module_io_wrf.F
711 module_domain.o : module_domain.F
712 module_start.o : module_start.F
713 module_initialize.o : module_initialize.F
714 module_initialize_b_wave.o : module_initialize_b_wave.F
715 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
716 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
717 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
718 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
719 module_initialize_real.o : module_initialize_real.F
720 start_domain.o : start_domain.F
721 mediation_integrate.o : mediation_integrate.F
725 module_io_mm5.o module_si_io.o module_io_wrf.o module_domain.o \
726 module_start.o module_initialize.o module_initialize_b_wave.o \
727 module_initialize_hill2d_x.o module_initialize_quarter_ss.o \
728 module_initialize_squall2d_x.o module_initialize_squall2d_y.o \
729 mediation_integrate.o \
730 module_initialize_real.o start_domain.o :
732 $(SED_FTN) $*.F > $*.b
733 $(CPP) -I../inc $(CPPFLAGS) $*.b > $*.f90
735 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90
737 module_dm.o : module_dm.F
738 module_configure.o : module_configure.F
743 $(SED_FTN) $*.F > $*.b
744 $(CPP) -I../inc $(CPPFLAGS) $*.b > $*.f90
746 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) -g -O0 $*.f90
748 ###########################################################
749 #ARCH (WF) AMD x86_64 Intel xeon i686 ia32 Xeon Linux, ifort compiler SM-Parallel (OpenMP, allows nesting using RSL without MPI)
751 # Note: if you use ifort 8.0, please remove option -xW (for vectorization). This option
752 # has been identified to produce wrong results occationally.
753 # Notes: for experimental implementation of moving nests, add -DMOVE_NESTS to ARCHFLAGS
754 # for experimental implementation of vortex tracking nests, add -DMOVE_NESTS -DVORTEX_CENTER to ARCHFLAGS
757 OMP = -openmp -fpp -auto
766 RWORDSIZE = $(NATIVE_RWORDSIZE)
767 RSIZEBITS = `expr $(RWORDSIZE) \* 8`
768 PROMOTION = -real_size $(RSIZEBITS)
769 FCOPTIM = -O3 -unroll0 -xP -fno-alias -ip
771 FCBASEOPTS = -FR -cm -w -I. $(FCDEBUG) -convert big_endian -fp-model precise -switch fe_use_rtl_copy_arg_inout -mP2OPT_vec_xform_level=103
772 FCFLAGS = $(FCOPTIM) $(FCBASEOPTS) $(OMP)
773 ARCHFLAGS = $(COREDEFS) -DGRIB1 CONFIGURE_GRIB2_FLAG -DINTIO -DWRF_RSL_IO -DRSL -DDM_PARALLEL \
774 -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4 CONFIGURE_NETCDF_FLAG \
775 -DLIMIT_ARGS -DSTUBMPI
776 CFLAGS = -w -DDM_PARALLEL -DWRF_RSL_IO \
777 -DMAXDOM_MAKE=$(MAX_DOMAINS) -DMAXPROC_MAKE=$(MAX_PROC) -I../external/RSL/RSL $(ARCHFLAGS)
778 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
780 ESMF_IO_LIB = ESMFIOLIB
781 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
782 INCLUDE_MODULES = -module ../main -I../external/io_netcdf -I../external/io_int -I../external/esmf_time_f90 \
783 -I../external -I../frame -I../share -I../phys -I../inc -I../chem
786 LIB = CONFIGURE_NETCDF_LIB_PATH -L../external/RSL/RSL -lrsl \
787 -L../external/io_int -lwrfio_int -L../external/io_grib1 -lio_grib1 \
788 CONFIGURE_GRIB2_LIB \
789 -L../external/io_grib_share -lio_grib_share \
790 ../frame/module_internal_header_util.o ../frame/pack_utils.o -L../external/esmf_time_f90 -lesmf_time $(OMP)
791 LDFLAGS = $(FCOPTIM) -convert big_endian CONFIGURE_LDFLAGS
792 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
793 CPP = /lib/cpp -traditional
794 POUND_DEF = -DNO_RRTM_PHYSICS $(OMPCPP) $(COREDEFS) -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS) -DGRIB1 CONFIGURE_GRIB2_FLAG
795 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) -I../external/RSL/RSL -C -P `cat ../inc/dm_comm_cpp_flags` $(ENVCOMPDEFS) $(POUND_DEF)
799 NETCDFPATH = CONFIGURE_NETCDF_PATH
802 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 ../external/RSL/RSL/librsl.a wrfio_int gen_comms.c module_dm.F esmf_time
804 gen_comms.c : ../external/RSL/gen_comms.c
805 ( /bin/cp ../tools/gen_comms_warning ../tools/gen_comms.c ; \
806 cat ../external/RSL/gen_comms.c >> ../tools/gen_comms.c )
808 module_dm.F : ../external/RSL/module_dm.F
809 ( /bin/cp module_dm_warning module_dm.F ; cat ../external/RSL/module_dm.F >> module_dm.F )
812 ( cd ../external/io_netcdf ; \
813 make NETCDFPATH=CONFIGURE_NETCDF_PATH RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCFLAGS) -w" TRADFLAG="-traditional" )
816 ( cd ../external/io_grib_share ; \
817 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" \
818 FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCFLAGS) -w" archive)
821 ( cd ../external/io_grib1 ; \
822 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCFLAGS) -w" archive)
825 ( cd ../external/io_grib2 ; \
826 make CC="$(SCC)" CFLAGS="$(CFLAGS) CONFIGURE_GRIB2_INC" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCFLAGS) -w" FIXED="-fixed" archive)
829 ( cd ../external/io_int ; \
830 make CC="$(CC)" RANLIB="$(RANLIB)" CPP="$(CPP)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" all )
833 ( cd ../external/esmf_time_f90 ; \
834 make FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" CPP="$(CPP) -I../../inc -I. $(POUND_DEF)" )
836 ../external/RSL/RSL/librsl.a :
837 ( cd ../external/RSL/RSL ; \
838 make CC="$(CC)" FC="$(FC) $(PROMOTION)" CFLAGS="-DSTUBS $(CFLAGS)" MAX_DOMAINS=$(MAX_DOMAINS) MAX_PROC=$(MAX_PROC) LEARN_BCAST=-DLEARN_BCAST stub )
840 # compile these without high optimization to speed compile
841 #solve_em.o : solve_em.F
842 solve_interface.o : solve_interface.F
843 shift_domain_em.o : shift_domain_em.F
844 module_io_mm5.o : module_io_mm5.F
845 module_si_io.o : module_si_io.F
846 module_io_wrf.o : module_io_wrf.F
847 module_domain.o : module_domain.F
848 module_start.o : module_start.F
849 module_initialize.o : module_initialize.F
850 module_initialize_b_wave.o : module_initialize_b_wave.F
851 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
852 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
853 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
854 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
855 module_initialize_real.o : module_initialize_real.F
856 start_domain.o : start_domain.F
857 mediation_integrate.o : mediation_integrate.F
861 module_io_mm5.o module_si_io.o module_io_wrf.o module_domain.o \
862 module_start.o module_initialize.o module_initialize_b_wave.o \
863 module_initialize_hill2d_x.o module_initialize_quarter_ss.o \
864 module_initialize_squall2d_x.o module_initialize_squall2d_y.o \
865 mediation_integrate.o \
866 module_initialize_real.o start_domain.o :
868 $(SED_FTN) $*.F > $*.b
869 $(CPP) -I../inc $(CPPFLAGS) $*.b > $*.f90
871 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90
873 module_dm.o : module_dm.F
874 module_configure.o : module_configure.F
879 $(SED_FTN) $*.F > $*.b
880 $(CPP) -I../inc $(CPPFLAGS) $*.b > $*.f90
882 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) -g -O0 $*.f90
884 ###########################################################
885 #ARCH (WF) AMD x86_64 Intel xeon i686 ia32 Xeon Linux, ifort+gcc compiler DM-Parallel (RSL, MPICH, allows nesting) -O2
887 # Note: if you use ifort 8.0, please remove option -xW (for vectorization). This option
888 # has been identified to produce wrong results occationally.
889 # Notes: for experimental implementation of moving nests, add -DMOVE_NESTS to ARCHFLAGS
890 # for experimental implementation of vortex tracking nests, add -DMOVE_NESTS -DVORTEX_CENTER to ARCHFLAGS
895 FC = mpif90 -f90=ifort
896 LD = mpif90 -f90=ifort
900 RWORDSIZE = $(NATIVE_RWORDSIZE)
901 RSIZEBITS = `expr $(RWORDSIZE) \* 8`
902 PROMOTION = -real_size $(RSIZEBITS)
903 FCOPTIM = -O3 -unroll0 -xP -fno-alias -ip
905 FCBASEOPTS = -FR -cm -w -I. $(FCDEBUG) -convert big_endian -fp-model precise -switch fe_use_rtl_copy_arg_inout -mP2OPT_vec_xform_level=103
906 FCFLAGS = $(FCOPTIM) $(FCBASEOPTS)
907 ARCHFLAGS = $(COREDEFS) -DGRIB1 CONFIGURE_GRIB2_FLAG -DINTIO -DWRF_RSL_IO -DRSL -DDM_PARALLEL \
908 -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4 CONFIGURE_NETCDF_FLAG \
911 CFLAGS = -w -DDM_PARALLEL -DWRF_RSL_IO $(ARCHFLAGS) \
912 -DMAXDOM_MAKE=$(MAX_DOMAINS) -DMAXPROC_MAKE=$(MAX_PROC) -I../external/RSL/RSL
913 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
915 ESMF_IO_LIB = ESMFIOLIB
916 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
917 INCLUDE_MODULES = -module ../main -I../external/io_netcdf -I../external/io_int -I../external/esmf_time_f90 \
918 -I../external -I../frame -I../share -I../phys -I../inc -I../chem
921 LIB = CONFIGURE_NETCDF_LIB_PATH -L../external/RSL/RSL -lrsl \
922 -L../external/io_int -lwrfio_int \
923 -L../external/io_grib1 -lio_grib1 \
924 CONFIGURE_GRIB2_LIB \
925 -L../external/io_grib_share -lio_grib_share \
926 ../frame/module_internal_header_util.o ../frame/pack_utils.o -L../external/esmf_time_f90 -lesmf_time
927 LDFLAGS = $(FCOPTIM) -convert big_endian CONFIGURE_LDFLAGS
928 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
929 CPP = /lib/cpp -traditional
930 POUND_DEF = -DNO_RRTM_PHYSICS $(COREDEFS) -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS) -DGRIB1 CONFIGURE_GRIB2_FLAG
931 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) -I../external/RSL/RSL -C -P `cat ../inc/dm_comm_cpp_flags` $(ENVCOMPDEFS) $(POUND_DEF)
935 NETCDFPATH = CONFIGURE_NETCDF_PATH
938 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 ../external/RSL/RSL/librsl.a wrfio_int gen_comms.c module_dm.F esmf_time
940 gen_comms.c : ../external/RSL/gen_comms.c
941 ( /bin/cp ../tools/gen_comms_warning ../tools/gen_comms.c ; \
942 cat ../external/RSL/gen_comms.c >> ../tools/gen_comms.c )
944 module_dm.F : ../external/RSL/module_dm.F
945 ( /bin/cp module_dm_warning module_dm.F ; cat ../external/RSL/module_dm.F >> module_dm.F )
948 ( cd ../external/io_netcdf ; \
949 make NETCDFPATH=CONFIGURE_NETCDF_PATH RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCFLAGS) -w" TRADFLAG="-traditional" )
952 ( cd ../external/io_grib_share ; \
953 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" \
954 FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCFLAGS) -w" archive)
957 ( cd ../external/io_grib1 ; \
958 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCFLAGS) -w" archive)
961 ( cd ../external/io_grib2 ; \
962 make CC="$(SCC)" CFLAGS="$(CFLAGS) CONFIGURE_GRIB2_INC" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCFLAGS) -w" FIXED="-fixed" archive)
965 ( cd ../external/io_int ; \
966 make CC="$(CC)" RANLIB="$(RANLIB)" CPP="$(CPP)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" all )
969 ( cd ../external/esmf_time_f90 ; \
970 make FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" CPP="$(CPP) -I../../inc -I. $(POUND_DEF)" )
972 ../external/RSL/RSL/librsl.a :
973 ( cd ../external/RSL/RSL ; make CC="$(CC)" CFLAGS="$(CFLAGS)" FC="$(FC) $(PROMOTION)" MAX_DOMAINS=$(MAX_DOMAINS) MAX_PROC=$(MAX_PROC) LEARN_BCAST=-DLEARN_BCAST linux )
975 # compile these without high optimization to speed compile
976 solve_interface.o : solve_interface.F
977 shift_domain_em.o : shift_domain_em.F
978 module_io_mm5.o : module_io_mm5.F
979 module_si_io.o : module_si_io.F
980 module_io_wrf.o : module_io_wrf.F
981 module_domain.o : module_domain.F
982 module_start.o : module_start.F
983 module_initialize.o : module_initialize.F
984 module_initialize_b_wave.o : module_initialize_b_wave.F
985 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
986 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
987 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
988 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
989 module_initialize_real.o : module_initialize_real.F
990 start_domain.o : start_domain.F
991 mediation_integrate.o : mediation_integrate.F
995 module_io_mm5.o module_si_io.o module_io_wrf.o module_domain.o \
996 module_start.o module_initialize.o module_initialize_b_wave.o \
997 module_initialize_hill2d_x.o module_initialize_quarter_ss.o \
998 module_initialize_squall2d_x.o module_initialize_squall2d_y.o \
999 mediation_integrate.o \
1000 module_initialize_real.o start_domain.o :
1002 $(SED_FTN) $*.F > $*.b
1003 $(CPP) -I../inc $(CPPFLAGS) $*.b > $*.f90
1005 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90
1007 solve_em.o: solve_em.F
1010 $(SED_FTN) $*.F > $*.b
1011 $(CPP) -I../inc $(CPPFLAGS) $*.b > $*.f90
1013 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) -O $*.f90
1015 module_dm.o : module_dm.F
1016 module_configure.o : module_configure.F
1018 module_configure.o \
1021 $(SED_FTN) $*.F > $*.b
1022 $(CPP) -I../inc $(CPPFLAGS) $*.b > $*.f90
1024 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) -g -O0 $*.f90
1026 ###########################################################
1027 #ARCH Darwin Intel, g95 compiler (Single-threaded, no nesting, debug)
1033 RWORDSIZE = $(NATIVE_RWORDSIZE)
1035 # g95 does not like -r4. if you want promotion to -r8 add it to PROMOTION below
1036 #PROMOTION = -r$(RWORDSIZE) -i4
1038 CFLAGS = -w -DF2CSTYLE -DMACOS
1039 FCOPTIM = -O0 # -fast
1041 FCBASEOPTS = -Wno=101,139,155,158 -fendian=big -ffree-form -ffree-line-length-huge $(FCDEBUG) # -Mlfs
1042 FCFLAGS = $(FCOPTIM) $(FCBASEOPTS)
1043 ARCHFLAGS = $(COREDEFS) -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4 \
1044 CONFIGURE_NETCDF_FLAG -DGRIB1 CONFIGURE_GRIB2_FLAG \
1045 -DLIMIT_ARGS -DG95 -DMACOS
1046 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
1048 ESMF_IO_LIB = ESMFIOLIB
1049 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
1050 INCLUDE_MODULES = -fmod=../main -I../main -I../external/io_netcdf -I../external/io_int -I../external/esmf_time_f90 \
1051 -I../frame -I../share -I../phys -I../chem -I../inc
1054 LIB = CONFIGURE_NETCDF_LIB_PATH \
1055 -L../external/io_grib1 -lio_grib1 \
1056 CONFIGURE_GRIB2_LIB \
1057 -L../external/io_grib_share -lio_grib_share \
1058 ../frame/module_internal_header_util.o ../frame/pack_utils.o -L../external/esmf_time_f90 -lesmf_time
1059 LDFLAGS = $(FCFLAGS) CONFIGURE_LDFLAGS
1060 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
1061 CPP = cpp -C -P -traditional
1062 POUND_DEF = $(COREDEFS) -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS)
1063 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) $(ENVCOMPDEFS) $(POUND_DEF)
1067 NETCDFPATH = CONFIGURE_NETCDF_PATH
1070 #### Override default sed command and script for Fortran source files ####
1071 #### This sed script does not pass __FILE__ and __LINE__ to wrf_error_fatal() ####
1072 #### because the Fortran compiler complains about long source lines. ####
1073 SED_FTN = sed -f ../arch/no_file_line.sed
1075 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 wrfio_int module_dm.F esmf_time
1078 ( /bin/cp module_dm_warning module_dm.F ; cat module_dm_stubs.F >> module_dm.F )
1081 ( cd ../external/io_netcdf ; \
1082 make NETCDFPATH=CONFIGURE_NETCDF_PATH RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCFLAGS) -w" TRADFLAG="-traditional" )
1085 ( cd ../external/io_grib_share ; \
1086 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" archive)
1089 ( cd ../external/io_grib1 ; \
1090 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" archive )
1093 ( cd ../external/io_grib2 ; \
1094 make CC="$(SCC)" CFLAGS="$(CFLAGS) CONFIGURE_GRIB2_INC" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" FIXED="-ffixed-form" archive)
1097 ( cd ../external/io_int ; \
1098 make CC="$(CC)" RANLIB="$(RANLIB)" CPP="$(CPP)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS) -w" \
1099 TRADFLAG="-traditional" all )
1102 ( cd ../external/esmf_time_f90 ; \
1103 make FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" CPP="$(CPP) -I../../inc -I. $(POUND_DEF)" )
1105 # compile these without high optimization to speed compile
1106 solve_interface.o : solve_interface.F
1107 shift_domain_em.o : shift_domain_em.F
1108 module_io_mm5.o : module_io_mm5.F
1109 module_si_io.o : module_si_io.F
1110 module_io_wrf.o : module_io_wrf.F
1111 module_domain.o : module_domain.F
1112 module_start.o : module_start.F
1113 module_initialize.o : module_initialize.F
1114 module_initialize_b_wave.o : module_initialize_b_wave.F
1115 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
1116 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
1117 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
1118 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
1119 module_initialize_real.o : module_initialize_real.F
1120 module_dm.o : module_dm.F
1121 start_domain.o : start_domain.F
1122 mediation_integrate.o : mediation_integrate.F
1123 module_configure.o : module_configure.F
1127 module_io_mm5.o module_si_io.o module_io_wrf.o module_domain.o \
1128 module_start.o module_initialize.o module_initialize_b_wave.o \
1129 module_initialize_hill2d_x.o module_initialize_quarter_ss.o \
1130 module_initialize_squall2d_x.o module_initialize_squall2d_y.o \
1131 mediation_integrate.o \
1132 module_configure.o \
1133 module_initialize_real.o module_dm.o start_domain.o :
1135 $(SED_FTN) $*.F > $*.b
1136 $(CPP) -I../inc $(CPPFLAGS) $*.b > $*.f90
1138 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90
1140 ###########################################################
1141 #ARCH (WALNUT) PC Linux x86_64, PGI compiler SM-Parallel (OpenMP, no nesting)
1149 RWORDSIZE = $(NATIVE_RWORDSIZE)
1151 PROMOTION = -r$(RWORDSIZE) -i4
1153 FCOPTIM = -O2 # -fast
1155 #FCBASEOPTS = -w -byteswapio -Ktrap=fp -Mfree $(FCDEBUG)
1156 FCBASEOPTS = -w -byteswapio -Mfree $(FCDEBUG) # -Mlfs
1157 FCFLAGS = $(FCOPTIM) $(FCBASEOPTS) $(OMP)
1158 ARCHFLAGS = $(COREDEFS) -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4 \
1159 CONFIGURE_NETCDF_FLAG -DGRIB1 CONFIGURE_GRIB2_FLAG \
1161 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
1163 ESMF_IO_LIB = ESMFIOLIB
1164 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
1165 INCLUDE_MODULES = -module ../main -I../external/io_netcdf -I../external/io_int -I../external/esmf_time_f90 \
1166 -I../frame -I../share -I../phys -I../chem -I../inc
1169 LIB = CONFIGURE_NETCDF_LIB_PATH \
1170 -L../external/io_grib1 -lio_grib1 \
1171 CONFIGURE_GRIB2_LIB \
1172 -L../external/io_grib_share -lio_grib_share \
1173 ../frame/module_internal_header_util.o ../frame/pack_utils.o -L../external/esmf_time_f90 -lesmf_time
1174 LDFLAGS = $(FCFLAGS) $(OMP) CONFIGURE_LDFLAGS
1175 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
1176 CPP = /lib/cpp -C -P -traditional
1177 POUND_DEF = $(OMPCPP) -traditional $(COREDEFS) -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS)
1178 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) $(ENVCOMPDEFS) $(POUND_DEF)
1182 NETCDFPATH = CONFIGURE_NETCDF_PATH
1185 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 wrfio_int module_dm.F esmf_time
1188 ( /bin/cp module_dm_warning module_dm.F ; cat module_dm_stubs.F >> module_dm.F )
1191 ( cd ../external/io_netcdf ; \
1192 make NETCDFPATH=CONFIGURE_NETCDF_PATH RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCFLAGS) -w" TRADFLAG="-traditional" )
1195 ( cd ../external/io_grib_share ; \
1196 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" archive)
1199 ( cd ../external/io_grib1 ; \
1200 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" archive )
1203 ( cd ../external/io_grib2 ; \
1204 make CC="$(SCC)" CFLAGS="$(CFLAGS) CONFIGURE_GRIB2_INC" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" FIXED="-Mfixed" archive )
1207 ( cd ../external/io_int ; \
1208 make CC="$(CC)" RANLIB="$(RANLIB)" CPP="$(CPP)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS) -w" \
1209 TRADFLAG="-traditional" all )
1212 ( cd ../external/esmf_time_f90 ; \
1213 make FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" CPP="$(CPP) -I../../inc -I. $(POUND_DEF)" )
1215 # compile these without high optimization to speed compile
1216 solve_interface.o : solve_interface.F
1217 shift_domain_em.o : shift_domain_em.F
1218 module_io_mm5.o : module_io_mm5.F
1219 module_si_io.o : module_si_io.F
1220 module_io_wrf.o : module_io_wrf.F
1221 module_domain.o : module_domain.F
1222 module_start.o : module_start.F
1223 module_initialize.o : module_initialize.F
1224 module_initialize_b_wave.o : module_initialize_b_wave.F
1225 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
1226 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
1227 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
1228 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
1229 module_initialize_real.o : module_initialize_real.F
1230 module_dm.o : module_dm.F
1231 start_domain.o : start_domain.F
1232 mediation_integrate.o : mediation_integrate.F
1233 module_configure.o : module_configure.F
1237 module_io_mm5.o module_si_io.o module_io_wrf.o module_domain.o \
1238 module_start.o module_initialize.o module_initialize_b_wave.o \
1239 module_initialize_hill2d_x.o module_initialize_quarter_ss.o \
1240 module_initialize_squall2d_x.o module_initialize_squall2d_y.o \
1241 module_configure.o \
1242 mediation_integrate.o \
1243 module_initialize_real.o module_dm.o start_domain.o :
1245 $(SED_FTN) $*.F > $*.b
1246 $(CPP) -I../inc $(CPPFLAGS) $*.b > $*.f90
1248 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90
1249 #PGI if [ ! -e $@ ] ; then \
1250 #PGI sleep 10 ; $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90 ; \
1252 #PGI if [ ! -e $@ ] ; then \
1253 #PGI sleep 30 ; $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90 ; \
1255 #PGI if [ ! -e $@ ] ; then \
1256 #PGI sleep 300 ; $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90 ; \
1259 ###########################################################
1260 #ARCH (WALNUT) PC Linux x86_64, PGI compiler SM-Parallel (OpenMP, allows nesting using RSL without MPI)
1262 # Notes: for experimental implementation of moving nests, add -DMOVE_NESTS to ARCHFLAGS
1263 # for experimental implementation of vortex tracking nests, add -DMOVE_NESTS -DVORTEX_CENTER to ARCHFLAGS
1274 RWORDSIZE = $(NATIVE_RWORDSIZE)
1275 FCOPTIM = -O2 # -fast
1277 #FCBASEOPTS = -w -byteswapio -Ktrap=fp -Mfree $(FCDEBUG)
1278 FCBASEOPTS = -w -byteswapio -Mfree $(FCDEBUG) # -Mlfs
1279 FCFLAGS = $(FCOPTIM) $(FCBASEOPTS) $(OMP)
1280 ARCHFLAGS = $(COREDEFS) -DGRIB1 CONFIGURE_GRIB2_FLAG -DINTIO -DWRF_RSL_IO -DRSL -DDM_PARALLEL \
1281 -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4 CONFIGURE_NETCDF_FLAG \
1282 -DLIMIT_ARGS -DSTUBMPI
1283 PROMOTION = -r$(RWORDSIZE) -i4
1284 CFLAGS = -DDM_PARALLEL -DWRF_RSL_IO \
1285 -DMAXDOM_MAKE=$(MAX_DOMAINS) -DMAXPROC_MAKE=$(MAX_PROC) -I../external/RSL/RSL $(ARCHFLAGS)
1286 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
1288 ESMF_IO_LIB = ESMFIOLIB
1289 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
1290 INCLUDE_MODULES = -module ../main -I../external/io_netcdf -I../external/io_int -I../external/esmf_time_f90 \
1291 -I../external -I../frame -I../share -I../phys -I../inc -I../chem
1294 LIB = CONFIGURE_NETCDF_LIB_PATH -L../external/RSL/RSL -lrsl \
1295 -L../external/io_grib1 -lio_grib1 \
1296 CONFIGURE_GRIB2_LIB \
1297 -L../external/io_grib_share -lio_grib_share \
1298 -L../external/io_int -lwrfio_int \
1299 ../frame/module_internal_header_util.o ../frame/pack_utils.o -L../external/esmf_time_f90 -lesmf_time
1300 LDFLAGS = $(FCFLAGS) $(OMP) CONFIGURE_LDFLAGS
1301 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
1302 CPP = /lib/cpp -C -P -traditional
1303 POUND_DEF = -DNO_RRTM_PHYSICS $(OMPCPP) -traditional $(COREDEFS) -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS)
1304 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) -I../external/RSL/RSL -C -P `cat ../inc/dm_comm_cpp_flags` $(ENVCOMPDEFS) $(POUND_DEF)
1308 NETCDFPATH = CONFIGURE_NETCDF_PATH
1311 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 ../external/RSL/RSL/librsl.a wrfio_int gen_comms.c module_dm.F esmf_time
1313 gen_comms.c : ../external/RSL/gen_comms.c
1314 ( /bin/cp ../tools/gen_comms_warning ../tools/gen_comms.c ; \
1315 cat ../external/RSL/gen_comms.c >> ../tools/gen_comms.c )
1317 module_dm.F : ../external/RSL/module_dm.F
1318 ( /bin/cp module_dm_warning module_dm.F ; cat ../external/RSL/module_dm.F >> module_dm.F )
1321 ( cd ../external/io_netcdf ; \
1322 make NETCDFPATH=CONFIGURE_NETCDF_PATH RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCFLAGS) -w" TRADFLAG="-traditional" )
1325 ( cd ../external/io_int ; \
1326 make CC="$(CC)" RANLIB="$(RANLIB)" CPP="$(CPP)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" all )
1329 ( cd ../external/io_grib_share ; \
1330 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" archive)
1333 ( cd ../external/io_grib1 ; \
1334 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" archive )
1337 ( cd ../external/io_grib2 ; \
1338 make CC="$(SCC)" CFLAGS="$(CFLAGS) CONFIGURE_GRIB2_INC" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" FIXED="-Mfixed" archive )
1341 ( cd ../external/esmf_time_f90 ; \
1342 make FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" CPP="$(CPP) -I../../inc -I. $(POUND_DEF)" )
1344 ../external/RSL/RSL/librsl.a :
1345 ( cd ../external/RSL/RSL ; make CC="$(CC)" CFLAGS='-DSTUBS' FC="$(FC) $(PROMOTION)" FFLAGS='-byteswapio' MAX_DOMAINS=$(MAX_DOMAINS) MAX_PROC=$(MAX_PROC) LEARN_BCAST=-DLEARN_BCAST stub )
1347 # compile these without high optimization to speed compile
1348 solve_interface.o : solve_interface.F
1349 shift_domain_em.o : shift_domain_em.F
1350 module_io_mm5.o : module_io_mm5.F
1351 module_si_io.o : module_si_io.F
1352 module_io_wrf.o : module_io_wrf.F
1353 module_domain.o : module_domain.F
1354 module_start.o : module_start.F
1355 module_initialize.o : module_initialize.F
1356 module_initialize_b_wave.o : module_initialize_b_wave.F
1357 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
1358 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
1359 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
1360 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
1361 module_initialize_real.o : module_initialize_real.F
1362 module_dm.o : module_dm.F
1363 start_domain.o : start_domain.F
1364 mediation_integrate.o : mediation_integrate.F
1365 module_configure.o : module_configure.F
1369 module_io_mm5.o module_si_io.o module_io_wrf.o module_domain.o \
1370 module_start.o module_initialize.o module_initialize_b_wave.o \
1371 module_initialize_hill2d_x.o module_initialize_quarter_ss.o \
1372 module_initialize_squall2d_x.o module_initialize_squall2d_y.o \
1373 module_configure.o \
1374 mediation_integrate.o \
1375 module_initialize_real.o module_dm.o start_domain.o :
1377 $(SED_FTN) $*.F > $*.b
1378 $(CPP) -I../inc $(CPPFLAGS) $*.b > $*.f90
1380 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90
1381 #PGI if [ ! -e $@ ] ; then \
1382 #PGI sleep 10 ; $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90 ; \
1384 #PGI if [ ! -e $@ ] ; then \
1385 #PGI sleep 30 ; $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90 ; \
1387 #PGI if [ ! -e $@ ] ; then \
1388 #PGI sleep 300 ; $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90 ; \
1391 ###########################################################
1392 #ARCH (WALNUT) PC Linux x86_64, PGI compiler DM-Parallel (RSL, MPICH, Allows nesting)
1394 # Notes: for experimental implementation of moving nests, add -DMOVE_NESTS to ARCHFLAGS
1395 # for experimental implementation of vortex tracking nests, add -DMOVE_NESTS -DVORTEX_CENTER to ARCHFLAGS
1399 FC = mpif90 -f90=pgf90
1400 LD = mpif90 -f90=pgf90
1404 RWORDSIZE = $(NATIVE_RWORDSIZE)
1405 PROMOTION = -r$(RWORDSIZE) -i4
1406 CFLAGS = -DDM_PARALLEL -DWRF_RSL_IO \
1407 -DMAXDOM_MAKE=$(MAX_DOMAINS) -DMAXPROC_MAKE=$(MAX_PROC) -I../external/RSL/RSL
1408 FCOPTIM = -O2 # -fast
1410 #FCBASEOPTS = -w -byteswapio -Ktrap=fp -Mfree $(FCDEBUG)
1411 FCBASEOPTS = -w -byteswapio -Mfree $(FCDEBUG) # -Mlfs
1412 FCFLAGS = $(FCOPTIM) $(FCBASEOPTS)
1413 ARCHFLAGS = $(COREDEFS) -DGRIB1 CONFIGURE_GRIB2_FLAG -DINTIO -DWRF_RSL_IO -DRSL -DDM_PARALLEL \
1414 -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4 CONFIGURE_NETCDF_FLAG \
1416 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
1418 ESMF_IO_LIB = ESMFIOLIB
1419 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
1420 INCLUDE_MODULES = -module ../main -I../external/io_netcdf -I../external/io_int -I../external/esmf_time_f90 \
1421 -I../external -I../frame -I../share -I../phys -I../chem -I../inc
1424 LIB = CONFIGURE_NETCDF_LIB_PATH -L../external/RSL/RSL -lrsl \
1425 -L../external/io_grib1 -lio_grib1 \
1426 CONFIGURE_GRIB2_LIB \
1427 -L../external/io_grib_share -lio_grib_share \
1428 -L../external/io_int -lwrfio_int \
1429 ../frame/module_internal_header_util.o ../frame/pack_utils.o -L../external/esmf_time_f90 -lesmf_time
1430 LDFLAGS = -byteswapio $(FCFLAGS) CONFIGURE_LDFLAGS
1431 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
1432 CPP = /lib/cpp -C -P -traditional
1433 POUND_DEF = -DNO_RRTM_PHYSICS -traditional $(COREDEFS) -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS)
1434 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) -I../external/RSL/RSL -C -P `cat ../inc/dm_comm_cpp_flags` $(ENVCOMPDEFS) $(POUND_DEF)
1438 NETCDFPATH = CONFIGURE_NETCDF_PATH
1441 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 ../external/RSL/RSL/librsl.a wrfio_int gen_comms.c module_dm.F esmf_time
1443 gen_comms.c : ../external/RSL/gen_comms.c
1444 ( /bin/cp ../tools/gen_comms_warning ../tools/gen_comms.c ; \
1445 cat ../external/RSL/gen_comms.c >> ../tools/gen_comms.c )
1447 module_dm.F : ../external/RSL/module_dm.F
1448 ( /bin/cp module_dm_warning module_dm.F ; cat ../external/RSL/module_dm.F >> module_dm.F )
1451 ( cd ../external/io_netcdf ; \
1452 make NETCDFPATH=CONFIGURE_NETCDF_PATH RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCFLAGS) -w" TRADFLAG="-traditional" )
1455 ( cd ../external/io_grib_share ; \
1456 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" archive)
1459 ( cd ../external/io_grib1 ; \
1460 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" archive)
1463 ( cd ../external/io_grib2 ; \
1464 make CC="$(SCC)" CFLAGS="$(CFLAGS) CONFIGURE_GRIB2_INC" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" FIXED="-Mfixed" archive)
1467 ( cd ../external/io_int ; \
1468 make CC="$(CC)" RANLIB="$(RANLIB)" CPP="$(CPP)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" all )
1471 ( cd ../external/esmf_time_f90 ; \
1472 make FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" CPP="$(CPP) -I../../inc -I. $(POUND_DEF)" )
1474 ../external/RSL/RSL/librsl.a :
1475 ( cd ../external/RSL/RSL ; make CC="$(CC)" FC="$(FC) $(PROMOTION) -byteswapio" MAX_DOMAINS=$(MAX_DOMAINS) MAX_PROC=$(MAX_PROC) LEARN_BCAST=-DLEARN_BCAST linux )
1477 # compile these without high optimization to speed compile
1478 solve_interface.o : solve_interface.F
1479 shift_domain_em.o : shift_domain_em.F
1480 module_io_mm5.o : module_io_mm5.F
1481 module_si_io.o : module_si_io.F
1482 module_io_wrf.o : module_io_wrf.F
1483 module_domain.o : module_domain.F
1484 module_start.o : module_start.F
1485 module_initialize.o : module_initialize.F
1486 module_initialize_b_wave.o : module_initialize_b_wave.F
1487 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
1488 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
1489 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
1490 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
1491 module_initialize_real.o : module_initialize_real.F
1492 module_dm.o : module_dm.F
1493 start_domain.o : start_domain.F
1494 mediation_integrate.o : mediation_integrate.F
1495 module_configure.o : module_configure.F
1499 module_io_mm5.o module_si_io.o module_io_wrf.o module_domain.o \
1500 module_start.o module_initialize.o module_initialize_b_wave.o \
1501 module_initialize_hill2d_x.o module_initialize_quarter_ss.o \
1502 module_initialize_squall2d_x.o module_initialize_squall2d_y.o \
1503 module_configure.o \
1504 mediation_integrate.o \
1505 module_initialize_real.o module_dm.o start_domain.o :
1507 $(SED_FTN) $*.F > $*.b
1508 $(CPP) -I../inc $(CPPFLAGS) $*.b > $*.f90
1510 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90
1511 #PGI if [ ! -e $@ ] ; then \
1512 #PGI sleep 10 ; $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90 ; \
1514 #PGI if [ ! -e $@ ] ; then \
1515 #PGI sleep 30 ; $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90 ; \
1517 #PGI if [ ! -e $@ ] ; then \
1518 #PGI sleep 300 ; $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90 ; \
1521 ###########################################################
1522 #ARCH (WALNUT) PC Linux x86_64, PGI compiler DM-Parallel (RSL_LITE, MPICH, Allows nesting)
1524 # Notes: for experimental implementation of moving nests, add -DMOVE_NESTS to ARCHFLAGS
1525 # for experimental implementation of vortex tracking nests, add -DMOVE_NESTS -DVORTEX_CENTER to ARCHFLAGS
1529 FC = mpif90 -f90=pgf90
1530 LD = mpif90 -f90=pgf90
1534 RWORDSIZE = $(NATIVE_RWORDSIZE)
1535 PROMOTION = -r$(RWORDSIZE) -i4
1536 CFLAGS = -DDM_PARALLEL \
1537 -DMAXDOM_MAKE=$(MAX_DOMAINS) -DMAXPROC_MAKE=$(MAX_PROC) -I../external/RSL_LITE
1539 FCOPTIM = -O2 # -fast
1541 #FCBASEOPTS = -w -byteswapio -Ktrap=fp -Mfree $(FCDEBUG)
1542 FCBASEOPTS = -w -byteswapio -Mfree $(FCDEBUG) # -Mlfs
1543 #Options for Debian Sarge systems
1544 #FCBASEOPTS = -w -byteswapio -Mfree -Mipa=fast,inline,safe $(FCDEBUG) # -Mlfs
1545 FCFLAGS = $(FCOPTIM) $(FCBASEOPTS)
1546 ARCHFLAGS = $(COREDEFS) -DGRIB1 CONFIGURE_GRIB2_FLAG -DINTIO -DDM_PARALLEL \
1547 -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4 CONFIGURE_NETCDF_FLAG \
1548 -DLIMIT_ARGS -DNMM_NEST=$(WRF_NMM_NEST)
1549 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
1551 ESMF_IO_LIB = ESMFIOLIB
1552 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
1553 INCLUDE_MODULES = -module ../main -I../external/io_netcdf -I../external/io_int -I../external/esmf_time_f90 \
1554 -I../external -I../frame -I../share -I../phys -I../chem -I../inc
1557 LIB = CONFIGURE_NETCDF_LIB_PATH -L../external/RSL_LITE -lrsl_lite \
1558 -L../external/io_grib1 -lio_grib1 \
1559 CONFIGURE_GRIB2_LIB \
1560 -L../external/io_grib_share -lio_grib_share \
1561 -L../external/io_int -lwrfio_int \
1562 ../frame/module_internal_header_util.o ../frame/pack_utils.o -L../external/esmf_time_f90 -lesmf_time
1563 LDFLAGS = -byteswapio $(FCFLAGS) CONFIGURE_LDFLAGS
1564 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
1565 CPP = /lib/cpp -C -P -traditional
1566 POUND_DEF = -DNO_RRTM_PHYSICS -traditional $(COREDEFS) -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS)
1567 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) -I../external/RSL_LITE -C -P `cat ../inc/dm_comm_cpp_flags` $(ENVCOMPDEFS) $(POUND_DEF)
1571 NETCDFPATH = CONFIGURE_NETCDF_PATH
1574 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 ../external/RSL_LITE/librsl_lite.a wrfio_int gen_comms.c module_dm.F esmf_time
1576 gen_comms.c : ../external/RSL_LITE/gen_comms.c
1577 ( /bin/cp ../tools/gen_comms_warning ../tools/gen_comms.c ; \
1578 cat ../external/RSL_LITE/gen_comms.c >> ../tools/gen_comms.c )
1580 module_dm.F : ../external/RSL_LITE/module_dm.F
1581 ( /bin/cp module_dm_warning module_dm.F ; cat ../external/RSL_LITE/module_dm.F >> module_dm.F )
1584 ( cd ../external/io_netcdf ; \
1585 make NETCDFPATH=CONFIGURE_NETCDF_PATH RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCFLAGS) -w" TRADFLAG="-traditional" )
1588 ( cd ../external/io_grib_share ; \
1589 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" archive)
1592 ( cd ../external/io_grib1 ; \
1593 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" archive)
1596 ( cd ../external/io_grib2 ; \
1597 make CC="$(SCC)" CFLAGS="$(CFLAGS) CONFIGURE_GRIB2_INC" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" FIXED="-Mfixed" archive)
1600 ( cd ../external/io_int ; \
1601 make CC="$(CC)" RANLIB="$(RANLIB)" CPP="$(CPP)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" all )
1604 ( cd ../external/esmf_time_f90 ; \
1605 make FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" CPP="$(CPP) -I../../inc -I. $(POUND_DEF)" )
1607 ../external/RSL_LITE/librsl_lite.a :
1608 ( cd ../external/RSL_LITE ; make CC="$(CC)" FC="$(FC) $(FCFLAGS) $(PROMOTION) -byteswapio" MAX_DOMAINS=$(MAX_DOMAINS) MAX_PROC=$(MAX_PROC) LEARN_BCAST=-DLEARN_BCAST )
1610 # compile these without high optimization to speed compile
1611 solve_interface.o : solve_interface.F
1612 shift_domain_em.o : shift_domain_em.F
1613 module_io_mm5.o : module_io_mm5.F
1614 module_si_io.o : module_si_io.F
1615 module_io_wrf.o : module_io_wrf.F
1616 module_domain.o : module_domain.F
1617 module_start.o : module_start.F
1618 module_initialize.o : module_initialize.F
1619 module_initialize_b_wave.o : module_initialize_b_wave.F
1620 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
1621 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
1622 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
1623 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
1624 module_initialize_real.o : module_initialize_real.F
1625 module_dm.o : module_dm.F
1626 start_domain.o : start_domain.F
1627 mediation_integrate.o : mediation_integrate.F
1628 module_configure.o : module_configure.F
1632 module_io_mm5.o module_si_io.o module_io_wrf.o module_domain.o \
1633 module_start.o module_initialize.o module_initialize_b_wave.o \
1634 module_initialize_hill2d_x.o module_initialize_quarter_ss.o \
1635 module_initialize_squall2d_x.o module_initialize_squall2d_y.o \
1636 module_configure.o \
1637 mediation_integrate.o \
1638 module_initialize_real.o module_dm.o start_domain.o :
1640 $(SED_FTN) $*.F > $*.b
1641 $(CPP) -I../inc $(CPPFLAGS) $*.b > $*.f90
1643 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90
1644 #PGI if [ ! -e $@ ] ; then \
1645 #PGI sleep 10 ; $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90 ; \
1647 #PGI if [ ! -e $@ ] ; then \
1648 #PGI sleep 30 ; $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90 ; \
1650 #PGI if [ ! -e $@ ] ; then \
1651 #PGI sleep 300 ; $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90 ; \
1655 ##################################################################