1 ##########################################################
2 #ARCH SGI 32 bit machine IRIX
9 RWORDSIZE = CONFIGURE_RWORDSIZE
11 FCBASEOPTS = -freeform -I. -w
12 FCFLAGS = $(FCBASEOPTS)
13 PROMOTION = -r$(RWORDSIZE) -i4
15 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
17 ESMF_IO_LIB = ESMFIOLIB
18 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
19 INCLUDE_MODULES = -I$(WRF_SRC_ROOT_DIR)/external/io_netcdf -I$(WRF_SRC_ROOT_DIR)/external/io_int -I$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 \
20 -I$(WRF_SRC_ROOT_DIR)/frame -I$(WRF_SRC_ROOT_DIR)/share -I$(WRF_SRC_ROOT_DIR)/phys -I$(WRF_SRC_ROOT_DIR)/chem -I$(WRF_SRC_ROOT_DIR)/inc
21 ARCHFLAGS = $(COREDEFS) -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4 CONFIGURE_NETCDF_FLAG -DGRIB1 CONFIGURE_GRIB2_FLAG -DLIMIT_ARGS $(DA_ARCHFLAGS)
22 LDFLAGS = CONFIGURE_LDFLAGS
23 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
25 POUND_DEF = -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS)
26 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) $(COREDEFS) $(ENVCOMPDEFS) $(POUND_DEF)
27 PERL = CONFIGURE_PERL_PATH
29 LIB = $(WRF_SRC_ROOT_DIR)/frame/module_internal_header_util.o $(WRF_SRC_ROOT_DIR)/frame/pack_utils.o -L$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 -lesmf_time \
30 -L$(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 -lfftpack \
31 -L$(WRF_SRC_ROOT_DIR)/external/io_grib1 -lio_grib1 \
33 -L$(WRF_SRC_ROOT_DIR)/external/io_grib_share -lio_grib_share
37 NETCDFPATH = CONFIGURE_NETCDF_PATH
40 #### Override default sed command and script for Fortran source files ####
41 #### This sed script does not pass __FILE__ and __LINE__ to wrf_error_fatal() ####
42 #### because the SGI Fortran compiler complains about long source lines. ####
43 SED_FTN = sed -f $(WRF_SRC_ROOT_DIR)/arch/no_file_line.sed
45 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 wrfio_int module_dm.F esmf_time fftpack
48 ( /bin/cp module_dm_warning module_dm.F ; cat module_dm_stubs.F >> module_dm.F )
51 ( cd $(WRF_SRC_ROOT_DIR)/external/io_netcdf ; \
52 make NETCDFPATH=CONFIGURE_NETCDF_PATH FC="$(FC) $(PROMOTION) -freeform -I." RANLIB="$(RANLIB)" CPP="$(CPP)" )
55 ( cd $(WRF_SRC_ROOT_DIR)/external/io_int ; \
56 make CC="$(CC)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" all )
59 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib_share ; \
60 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS) -w" archive)
63 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib1 ; \
64 make CC="$(SCC)" CFLAGS="$(CFLAGS)" FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS) -w" RANLIB="$(RANLIB)" CPP="$(CPP)" archive)
67 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib2 ; \
68 make CC="$(SCC)" CFLAGS="$(CFLAGS) CONFIGURE_GRIB2_INC" FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS) -w" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" archive)
71 ( cd $(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 ; \
72 make FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS) -w" RANLIB="$(RANLIB)" CPP="$(CPP) -I$(WRF_SRC_ROOT_DIR)/inc -I. $(POUND_DEF)" )
75 ( cd $(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 ; \
76 make FC="$(SFC)" FFLAGS="$(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" )
78 # compile these without high optimization to speed compile
79 solve_interface.o : solve_interface.F
80 shift_domain_em.o : shift_domain_em.F
81 module_configure.o : module_configure.F
82 module_io_mm5.o : module_io_mm5.F
83 module_si_io.o : module_si_io.F
84 module_io_wrf.o : module_io_wrf.F
85 module_domain.o : module_domain.F
86 module_start.o : module_start.F
87 module_initialize.o : module_initialize.F
88 module_initialize_b_wave.o : module_initialize_b_wave.F
89 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
90 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
91 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
92 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
93 module_initialize_real.o : module_initialize_real.F
94 module_dm.o : module_dm.F
95 module_comm_dm.o : module_comm_dm.F
96 start_domain.o : start_domain.F
101 module_io_mm5.o module_si_io.o module_io_wrf.o module_domain.o \
102 module_start.o module_initialize.o module_initialize_b_wave.o \
103 module_initialize_hill2d_x.o module_initialize_quarter_ss.o \
104 module_initialize_squall2d_x.o module_initialize_squall2d_y.o \
105 module_initialize_real.o module_dm.o module_comm_dm.o start_domain.o :
107 $(SED_FTN) $*.F > $*.b
108 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b > $*.f90
110 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90
113 ###########################################################
114 #ARCH SGI 32 bit machine, sycamore IRIX
120 RWORDSIZE = CONFIGURE_RWORDSIZE
122 FCBASEOPTS = -freeform -I. -w
123 FCFLAGS = -freeform -I. -w
124 PROMOTION = -r$(RWORDSIZE) -i4
126 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
128 ESMF_IO_LIB = ESMFIOLIB
129 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
130 INCLUDE_MODULES = -I$(WRF_SRC_ROOT_DIR)/external/io_netcdf -I$(WRF_SRC_ROOT_DIR)/external/io_int -I$(WRF_SRC_ROOT_DIR)/frame -I$(WRF_SRC_ROOT_DIR)/share -I$(WRF_SRC_ROOT_DIR)/phys -I$(WRF_SRC_ROOT_DIR)/chem \
131 -I$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 -I$(WRF_SRC_ROOT_DIR)/inc
132 ARCHFLAGS = $(COREDEFS) -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4 CONFIGURE_NETCDF_FLAG \
134 -DGRIB1 CONFIGURE_GRIB2_FLAG -DINTIO -DLIMIT_ARGS
135 LDFLAGS = CONFIGURE_LDFLAGS
136 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
138 POUND_DEF = -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS)
139 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) $(COREDEFS) $(ENVCOMPDEFS) $(POUND_DEF)
140 PERL = CONFIGURE_PERL_PATH
142 LIB = $(WRF_SRC_ROOT_DIR)/frame/module_internal_header_util.o $(WRF_SRC_ROOT_DIR)/frame/pack_utils.o -L$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 -lesmf_time \
143 -L$(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 -lfftpack \
144 -L$(WRF_SRC_ROOT_DIR)/external/io_grib1 -lio_grib1 \
145 CONFIGURE_GRIB2_LIB \
146 -L$(WRF_SRC_ROOT_DIR)/external/io_grib_share -lio_grib_share
150 NETCDFPATH = CONFIGURE_NETCDF_PATH
153 #### Override default sed command and script for Fortran source files ####
154 #### This sed script does not pass __FILE__ and __LINE__ to wrf_error_fatal() ####
155 #### because the SGI Fortran compiler complains about long source lines. ####
156 SED_FTN = sed -f $(WRF_SRC_ROOT_DIR)/arch/no_file_line.sed
158 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 wrfio_int module_dm.F esmf_time fftpack
161 ( /bin/cp module_dm_warning module_dm.F ; cat module_dm_stubs.F >> module_dm.F )
164 ( cd $(WRF_SRC_ROOT_DIR)/external/io_netcdf ; make NETCDFPATH=CONFIGURE_NETCDF_PATH FC="$(FC) $(PROMOTION) $(FCFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" )
167 ( cd $(WRF_SRC_ROOT_DIR)/external/io_int ; \
168 make CC="$(CC)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" all )
171 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib_share ; \
172 make CC="$(CC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS)" archive)
175 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib1 ; \
176 make CC="$(SCC)" CFLAGS="$(CFLAGS)" FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" archive)
179 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib2 ; \
180 make CC="$(SCC)" CFLAGS="$(CFLAGS) CONFIGURE_GRIB2_INC" FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" archive)
183 ( cd $(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 ; \
184 make FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP) -I$(WRF_SRC_ROOT_DIR)/inc -I. $(POUND_DEF)" )
187 ( cd $(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 ; \
188 make FC="$(SFC)" FFLAGS="$(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" )
190 # compile these without high optimization to speed compile
191 solve_interface.o : solve_interface.F
192 shift_domain_em.o : shift_domain_em.F
193 module_configure.o : module_configure.F
194 module_io_mm5.o : module_io_mm5.F
195 module_si_io.o : module_si_io.F
196 module_io_wrf.o : module_io_wrf.F
197 module_domain.o : module_domain.F
198 module_start.o : module_start.F
199 module_initialize.o : module_initialize.F
200 module_initialize_b_wave.o : module_initialize_b_wave.F
201 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
202 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
203 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
204 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
205 module_initialize_real.o : module_initialize_real.F
206 module_dm.o : module_dm.F
207 module_comm_dm.o : module_comm_dm.F
208 start_domain.o : start_domain.F
213 module_io_mm5.o module_si_io.o module_io_wrf.o module_domain.o \
214 module_start.o module_initialize.o module_initialize_b_wave.o \
215 module_initialize_hill2d_x.o module_initialize_quarter_ss.o \
216 module_initialize_squall2d_x.o module_initialize_squall2d_y.o \
217 module_initialize_real.o module_dm.o module_comm_dm.o start_domain.o :
219 $(SED_FTN) $*.F > $*.b
220 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b > $*.f90
222 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90
224 ###########################################################
225 #ARCH SGI 64 bit machine IRIX64 (single-threaded, no nesting)
232 CFLAGS = -64 -DLANDREAD_STUB -DNCARIBM_NOC99
234 RWORDSIZE = CONFIGURE_RWORDSIZE
236 FCBASEOPTS = -freeform -I. -64 -cpp -OPT:Olimit=5269 $(FCDEBUG) -w
237 FCFLAGS = $(FCOPTIM) $(FCBASEOPTS)
238 PROMOTION = -r$(RWORDSIZE) -i4
239 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
241 ESMF_IO_LIB = ESMFIOLIB
242 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
243 INCLUDE_MODULES = -I$(WRF_SRC_ROOT_DIR)/external/io_netcdf -I$(WRF_SRC_ROOT_DIR)/external/io_int -I$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 \
244 -I$(WRF_SRC_ROOT_DIR)/frame -I$(WRF_SRC_ROOT_DIR)/share -I$(WRF_SRC_ROOT_DIR)/phys -I$(WRF_SRC_ROOT_DIR)/chem -I$(WRF_SRC_ROOT_DIR)/inc
245 ARCHFLAGS = $(COREDEFS) -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4 \
247 CONFIGURE_NETCDF_FLAG -DGRIB1 CONFIGURE_GRIB2_FLAG \
248 -DINTIO -DLIMIT_ARGS -DLANDREAD_STUB
249 PERL = CONFIGURE_PERL_PATH
251 LIB = CONFIGURE_NETCDF_LIB_PATH \
252 -L$(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 -lfftpack \
253 -L$(WRF_SRC_ROOT_DIR)/external/io_int -lwrfio_int \
254 -L$(WRF_SRC_ROOT_DIR)/external/io_grib1 -lio_grib1 \
255 CONFIGURE_GRIB2_LIB \
256 -L$(WRF_SRC_ROOT_DIR)/external/io_grib_share -lio_grib_share \
257 $(WRF_SRC_ROOT_DIR)/frame/module_internal_header_util.o $(WRF_SRC_ROOT_DIR)/frame/pack_utils.o -L$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 -lesmf_time
258 LDFLAGS = $(FCOPTIM) -64 -OPT:Olimit=5269 CONFIGURE_LDFLAGS
259 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
261 POUND_DEF = -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS)
262 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) $(COREDEFS) $(ENVCOMPDEFS) $(POUND_DEF)
266 NETCDFPATH = CONFIGURE_NETCDF_PATH
269 #### Override default sed command and script for Fortran source files ####
270 #### This sed script does not pass __FILE__ and __LINE__ to wrf_error_fatal() ####
271 #### because the SGI Fortran compiler complains about long source lines. ####
272 SED_FTN = sed -f $(WRF_SRC_ROOT_DIR)/arch/no_file_line.sed
274 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 wrfio_int module_dm.F esmf_time fftpack
277 ( /bin/cp module_dm_warning module_dm.F ; cat module_dm_stubs.F >> module_dm.F )
280 ( cd $(WRF_SRC_ROOT_DIR)/external/io_netcdf ; make NETCDFPATH=CONFIGURE_NETCDF_PATH FC="$(FC) $(PROMOTION) $(FCFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" )
283 ( cd $(WRF_SRC_ROOT_DIR)/external/io_int ; \
284 make CC="$(CC)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" all )
287 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib_share ; \
288 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS) -w" archive)
291 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib1 ; \
292 make CC="$(SCC)" CFLAGS="$(CFLAGS)" FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS) -w" RANLIB="$(RANLIB)" CPP="$(CPP)" archive)
295 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib2 ; \
296 make CC="$(SCC)" CFLAGS="$(CFLAGS) CONFIGURE_GRIB2_INC" FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS) -w" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" archive)
299 ( cd $(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 ; \
300 make FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP) -I$(WRF_SRC_ROOT_DIR)/inc -I. $(POUND_DEF)" )
303 ( cd $(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 ; \
304 make FC="$(SFC)" FFLAGS="$(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" )
306 # compile these without high optimization to speed compile
307 solve_interface.o : solve_interface.F
308 shift_domain_em.o : shift_domain_em.F
309 module_io_mm5.o : module_io_mm5.F
310 module_si_io.o : module_si_io.F
311 module_io_wrf.o : module_io_wrf.F
312 module_domain.o : module_domain.F
313 module_start.o : module_start.F
314 module_initialize.o : module_initialize.F
315 module_initialize_b_wave.o : module_initialize_b_wave.F
316 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
317 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
318 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
319 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
320 module_initialize_real.o : module_initialize_real.F
321 module_dm.o : module_dm.F
322 module_comm_dm.o : module_comm_dm.F
323 start_domain.o : start_domain.F
327 module_io_mm5.o module_si_io.o module_io_wrf.o module_domain.o \
328 module_start.o module_initialize.o module_initialize_b_wave.o \
329 module_initialize_hill2d_x.o module_initialize_quarter_ss.o \
330 module_initialize_squall2d_x.o module_initialize_squall2d_y.o \
331 module_initialize_real.o module_dm.o module_comm_dm.o start_domain.o :
333 $(SED_FTN) $*.F > $*.b
334 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b > $*.f90
336 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90
338 module_configure.o : module_configure.F
340 $(SED_FTN) $*.F > $*.b
341 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b > $*.f90
343 $(FC) -c $(PROMOTION) -freeform -I. -64 -cpp -OPT:Olimit=5269 -w $(MODULE_DIRS) $*.f90
345 ###########################################################
348 FC = f90 -n32 -mips4 -w
350 LD = f90 -n32 -mips4 -w
353 RWORDSIZE = CONFIGURE_RWORDSIZE
354 PROMOTION = -r$(RWORDSIZE) -i4
357 FCBASEOPTS = -freeform -I. -w
358 FCFLAGS = -freeform -I. -O3 -OPT:roundoff=3:IEEE_arithmetic=3 -OPT:fold_arith_limit=2001
359 ARCHFLAGS = $(COREDEFS) -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4 CONFIGURE_NETCDF_FLAG \
361 -DGRIB1 CONFIGURE_GRIB2_FLAG -DINTIO -DLIMIT_ARGS
362 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
364 ESMF_IO_LIB = ESMFIOLIB
365 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
366 INCLUDE_MODULES = -I$(WRF_SRC_ROOT_DIR)/external/io_netcdf -I$(WRF_SRC_ROOT_DIR)/external/io_int -I$(WRF_SRC_ROOT_DIR)/frame -I$(WRF_SRC_ROOT_DIR)/share \
367 -I$(WRF_SRC_ROOT_DIR)/phys -I$(WRF_SRC_ROOT_DIR)/chem -I$(WRF_SRC_ROOT_DIR)/inc -I$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90
368 PERL = CONFIGURE_PERL_PATH
370 LIB = CONFIGURE_NETCDF_LIB_PATH \
371 -L$(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 -lfftpack \
372 -L$(WRF_SRC_ROOT_DIR)/external/io_grib1 -lio_grib1 \
373 CONFIGURE_GRIB2_LIB \
374 -L$(WRF_SRC_ROOT_DIR)/external/io_grib_share -lio_grib_share \
375 $(WRF_SRC_ROOT_DIR)/frame/module_internal_header_util.o $(WRF_SRC_ROOT_DIR)/frame/pack_utils.o -L$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 -lesmf_time
378 LDFLAGS = CONFIGURE_LDFLAGS
379 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
381 POUND_DEF = -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS)
382 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) -C -P $(COREDEFS) $(ENVCOMPDEFS) $(POUND_DEF)
384 NETCDFPATH = CONFIGURE_NETCDF_PATH
387 #### Override default sed command and script for Fortran source files ####
388 #### This sed script does not pass __FILE__ and __LINE__ to wrf_error_fatal() ####
389 #### because the SGI Fortran compiler complains about long source lines. ####
390 SED_FTN = sed -f $(WRF_SRC_ROOT_DIR)/arch/no_file_line.sed
392 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 wrfio_int module_dm.F esmf_time fftpack
395 ( /bin/cp module_dm_warning module_dm.F ; cat module_dm_stubs.F >> module_dm.F )
398 ( cd $(WRF_SRC_ROOT_DIR)/external/io_netcdf ; make NETCDFPATH=CONFIGURE_NETCDF_PATH RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCFLAGS)" )
401 ( cd $(WRF_SRC_ROOT_DIR)/external/io_int ; \
402 make CC="$(CC)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" all )
405 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib_share ; \
406 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS)" archive)
409 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib1 ; \
410 make CC="$(SCC)" CFLAGS="$(CFLAGS)" FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" archive)
413 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib2 ; \
414 make CC="$(SCC)" CFLAGS="$(CFLAGS) CONFIGURE_GRIB2_INC" FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" archive)
417 ( cd $(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 ; \
418 make FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP) -I$(WRF_SRC_ROOT_DIR)/inc -I. $(POUND_DEF)" )
421 ( cd $(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 ; \
422 make FC="$(SFC)" FFLAGS="$(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" )
424 # compile these without high optimization to speed compile
425 solve_interface.o : solve_interface.F
426 shift_domain_em.o : shift_domain_em.F
427 module_configure.o : module_configure.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 module_dm.o : module_dm.F
441 module_comm_dm.o : module_comm_dm.F
442 start_domain.o : start_domain.F
447 module_io_mm5.o module_si_io.o module_io_wrf.o module_domain.o \
448 module_start.o module_initialize.o module_initialize_b_wave.o \
449 module_initialize_hill2d_x.o module_initialize_quarter_ss.o \
450 module_initialize_squall2d_x.o module_initialize_squall2d_y.o \
451 module_initialize_real.o module_dm.o module_comm_dm.o start_domain.o :
453 $(SED_FTN) $*.F > $*.b
454 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b > $*.f90
456 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90
458 ###########################################################
459 #ARCH SGI 64 bit machine IRIX64 (OpenMP, no nesting)
468 RWORDSIZE = CONFIGURE_RWORDSIZE
469 PROMOTION = -r$(RWORDSIZE) -i4
470 CFLAGS = -64 -DLANDREAD_STUB -DNCARIBM_NOC99
473 FCBASEOPTS = -freeform -I. -64 -cpp -OPT:Olimit=5269 $(FCDEBUG) -w
474 FCFLAGS = $(FCOPTIM) $(FCBASEOPTS) $(OMP)
475 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
477 ESMF_IO_LIB = ESMFIOLIB
478 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
479 INCLUDE_MODULES = -I$(WRF_SRC_ROOT_DIR)/external/io_netcdf -I$(WRF_SRC_ROOT_DIR)/external/io_int -I$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 \
480 -I$(WRF_SRC_ROOT_DIR)/frame -I$(WRF_SRC_ROOT_DIR)/share -I$(WRF_SRC_ROOT_DIR)/phys -I$(WRF_SRC_ROOT_DIR)/chem -I$(WRF_SRC_ROOT_DIR)/inc
481 ARCHFLAGS = $(COREDEFS) -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4 \
483 CONFIGURE_NETCDF_FLAG -DGRIB1 CONFIGURE_GRIB2_FLAG \
484 -DINTIO -DLIMIT_ARGS -DLANDREAD_STUB
485 PERL = CONFIGURE_PERL_PATH
487 LIB = CONFIGURE_NETCDF_LIB_PATH $(OMP) \
488 -L$(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 -lfftpack \
489 -L$(WRF_SRC_ROOT_DIR)/external/io_int -lwrfio_int \
490 -L$(WRF_SRC_ROOT_DIR)/external/io_grib1 -lio_grib1 \
491 CONFIGURE_GRIB2_LIB \
492 -L$(WRF_SRC_ROOT_DIR)/external/io_grib_share -lio_grib_share \
493 $(WRF_SRC_ROOT_DIR)/frame/module_internal_header_util.o $(WRF_SRC_ROOT_DIR)/frame/pack_utils.o -L$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 -lesmf_time
494 LDFLAGS = $(FCOPTIM) -64 -OPT:Olimit=5269 CONFIGURE_LDFLAGS
495 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
497 POUND_DEF = -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS)
498 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) $(OMPCPP) $(COREDEFS) $(ENVCOMPDEFS) $(POUND_DEF)
502 NETCDFPATH = CONFIGURE_NETCDF_PATH
505 #### Override default sed command and script for Fortran source files ####
506 #### This sed script does not pass __FILE__ and __LINE__ to wrf_error_fatal() ####
507 #### because the SGI Fortran compiler complains about long source lines. ####
508 SED_FTN = sed -f $(WRF_SRC_ROOT_DIR)/arch/no_file_line.sed
510 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 wrfio_int module_dm.F esmf_time fftpack
513 ( /bin/cp module_dm_warning module_dm.F ; cat module_dm_stubs.F >> module_dm.F )
516 ( cd $(WRF_SRC_ROOT_DIR)/external/io_netcdf ; make NETCDFPATH=CONFIGURE_NETCDF_PATH RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCFLAGS)" )
519 ( cd $(WRF_SRC_ROOT_DIR)/external/io_int ; \
520 make CC="$(CC)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" all )
523 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib_share ; \
524 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS) -w" archive)
527 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib1 ; \
528 make CC="$(SCC)" CFLAGS="$(CFLAGS)" FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS) -w" RANLIB="$(RANLIB)" CPP="$(CPP)" archive )
531 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib2 ; \
532 make CC="$(SCC)" CFLAGS="$(CFLAGS) CONFIGURE_GRIB2_INC" FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS) -w" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" archive )
535 ( cd $(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 ; \
536 make FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP) -I$(WRF_SRC_ROOT_DIR)/inc -I. $(POUND_DEF)" )
539 ( cd $(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 ; \
540 make FC="$(SFC)" FFLAGS="$(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" )
542 # compile these without high optimization to speed compile
543 solve_interface.o : solve_interface.F
544 shift_domain_em.o : shift_domain_em.F
545 module_configure.o : module_configure.F
546 module_io_mm5.o : module_io_mm5.F
547 module_si_io.o : module_si_io.F
548 module_io_wrf.o : module_io_wrf.F
549 module_domain.o : module_domain.F
550 module_start.o : module_start.F
551 module_initialize.o : module_initialize.F
552 module_initialize_b_wave.o : module_initialize_b_wave.F
553 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
554 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
555 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
556 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
557 module_initialize_real.o : module_initialize_real.F
558 module_dm.o : module_dm.F
559 module_comm_dm.o : module_comm_dm.F
560 start_domain.o : start_domain.F
565 module_io_mm5.o module_si_io.o module_io_wrf.o module_domain.o \
566 module_start.o module_initialize.o module_initialize_b_wave.o \
567 module_initialize_hill2d_x.o module_initialize_quarter_ss.o \
568 module_initialize_squall2d_x.o module_initialize_squall2d_y.o \
569 module_initialize_real.o module_dm.o module_comm_dm.o start_domain.o :
571 $(SED_FTN) $*.F > $*.b
572 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b > $*.f90
574 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90
576 ###########################################################
577 #ARCH Sun SunOS (single-threaded, no nesting)
584 RWORDSIZE = CONFIGURE_RWORDSIZE
585 RSIZEBITS = `expr $(RWORDSIZE) \* 8`
586 PROMOTION = -xtypemap=real:$(RSIZEBITS),integer:32
587 CFLAGS = -DNCARIBM_NOC99
588 FCOPTIM = -O2 # -O4 -xlibmopt
590 FCBASEOPTS = -fnonstd -free -xpp=cpp $(FCDEBUG) -w
591 FCFLAGS = $(FCOPTIM) $(FCBASEOPTS)
592 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
594 ESMF_IO_LIB = ESMFIOLIB
595 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
596 INCLUDE_MODULES = -I$(WRF_SRC_ROOT_DIR)/external/io_netcdf -I$(WRF_SRC_ROOT_DIR)/external/io_int -I$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 \
597 -I$(WRF_SRC_ROOT_DIR)/frame -I$(WRF_SRC_ROOT_DIR)/share -I$(WRF_SRC_ROOT_DIR)/phys -I$(WRF_SRC_ROOT_DIR)/inc -I$(WRF_SRC_ROOT_DIR)/chem \
598 -M$(WRF_SRC_ROOT_DIR)/external/io_netcdf -M$(WRF_SRC_ROOT_DIR)/external/io_int -M$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 \
599 -M$(WRF_SRC_ROOT_DIR)/frame -M$(WRF_SRC_ROOT_DIR)/share -M$(WRF_SRC_ROOT_DIR)/phys -M$(WRF_SRC_ROOT_DIR)/inc -M$(WRF_SRC_ROOT_DIR)/chem \
600 -M$(WRF_SRC_ROOT_DIR)/dyn_em
601 ARCHFLAGS = $(COREDEFS) -DINTIO -DGRIB1 CONFIGURE_GRIB2_FLAG -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4 \
603 CONFIGURE_NETCDF_FLAG \
605 PERL = CONFIGURE_PERL_PATH
607 LIB = CONFIGURE_NETCDF_LIB_PATH \
608 -L$(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 -lfftpack \
609 -L$(WRF_SRC_ROOT_DIR)/external/io_int -lwrfio_int \
610 -L$(WRF_SRC_ROOT_DIR)/external/io_grib1 -lio_grib1 \
611 CONFIGURE_GRIB2_LIB \
612 -L$(WRF_SRC_ROOT_DIR)/external/io_grib_share -lio_grib_share \
613 $(WRF_SRC_ROOT_DIR)/frame/module_internal_header_util.o $(WRF_SRC_ROOT_DIR)/frame/pack_utils.o -L$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 -lesmf_time
614 LDFLAGS = $(FCOPTIM) CONFIGURE_LDFLAGS
615 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
616 #CPP = /opt/SUNWspro/bin/fpp
617 CPP = /usr/ccs/lib/cpp -C -P
618 POUND_DEF = -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS)
619 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) $(COREDEFS) $(ENVCOMPDEFS) $(POUND_DEF)
623 NETCDFPATH = CONFIGURE_NETCDF_PATH
626 #### Override default sed command and script for Fortran source files ####
627 #### This sed script does not pass __FILE__ and __LINE__ to wrf_error_fatal() ####
628 #### because the Sun Fortran compiler complains about long source lines, ####
629 #### usually due to cpp translating __FILE__ to a full pathname. ####
630 SED_FTN = sed -f $(WRF_SRC_ROOT_DIR)/arch/no_file_line.sed
632 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 wrfio_int module_dm.F esmf_time fftpack
635 ( /bin/cp module_dm_warning module_dm.F ; cat module_dm_stubs.F >> module_dm.F )
638 ( cd $(WRF_SRC_ROOT_DIR)/external/io_netcdf ; make NETCDFPATH=CONFIGURE_NETCDF_PATH RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCBASEOPTS) " )
641 ( cd $(WRF_SRC_ROOT_DIR)/external/io_int ; \
642 make CC="$(CC)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(FC) $(PROMOTION) $(FCBASEOPTS)" RANLIB="$(RANLIB)" CPP="$(CPP)" all )
645 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib_share ; \
646 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCBASEOPTS) -qarch=auto -qzerosize" archive)
649 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib1 ; \
650 make CC="$(SCC)" CFLAGS="$(CFLAGS)" FC="$(FC) $(PROMOTION) $(FCBASEOPTS)" RANLIB="$(RANLIB)" CPP="$(CPP)" archive )
653 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib2 ; \
654 make CC="$(SCC)" CFLAGS="$(CFLAGS) CONFIGURE_GRIB2_INC" FC="$(SFC) $(PROMOTION) $(FCBASEOPTS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" archive )
657 ( cd $(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 ; \
658 make FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP) -I$(WRF_SRC_ROOT_DIR)/inc -I. $(POUND_DEF)" )
661 ( cd $(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 ; \
662 make FC="$(SFC)" FFLAGS="$(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" )
664 solve_interface.o : solve_interface.F
666 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.F > $*.f90
667 $(FC) -c $(FCBASEOPTS) -I. $(PROMOTION) $(MODULE_DIRS) $*.f90
669 # compile these without high optimization to speed compile
670 shift_domain_em.o : shift_domain_em.F
671 module_io_mm5.o : module_io_mm5.F
672 module_si_io.o : module_si_io.F
673 module_io_wrf.o : module_io_wrf.F
674 module_domain.o : module_domain.F
675 module_start.o : module_start.F
676 module_initialize.o : module_initialize.F
677 module_initialize_b_wave.o : module_initialize_b_wave.F
678 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
679 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
680 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
681 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
682 module_initialize_real.o : module_initialize_real.F
683 mediation_interp_domain.o : mediation_interp_domain.F
684 mediation_force_domain.o : mediation_force_domain.F
685 module_dm.o : module_dm.F
686 module_comm_dm.o : module_comm_dm.F
687 start_domain.o : start_domain.F
688 wrf_bdyin.o : wrf_bdyin.F
689 wrf_bdyout.o : wrf_bdyout.F
690 wrf_histin.o : wrf_histin.F
691 wrf_histout.o : wrf_histout.F
692 wrf_inputin.o : wrf_inputin.F
693 wrf_inputout.o : wrf_inputout.F
694 wrf_restartin.o : wrf_restartin.F
695 wrf_restartout.o : wrf_restartout.F
696 module_configure.o : module_configure.F
700 wrf_bdyin.o wrf_bdyout.o \
701 wrf_histin.o wrf_histout.o \
702 wrf_inputin.o wrf_inputout.o \
703 wrf_restartin.o wrf_restartout.o \
704 module_io_mm5.o module_si_io.o module_io_wrf.o module_domain.o \
705 module_start.o module_initialize.o module_initialize_b_wave.o \
706 module_initialize_hill2d_x.o module_initialize_quarter_ss.o \
707 module_initialize_squall2d_x.o module_initialize_squall2d_y.o \
708 module_initialize_real.o mediation_interp_domain.o \
709 mediation_force_domain.o module_dm.o module_comm_dm.o start_domain.o :
711 $(SED_FTN) $*.F > $*.b
712 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b > $*.f90
714 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90
716 ###########################################################
717 #ARCH Sun SunOS SM (OpenMP, no nesting)
719 OMP = -mp=openmp -explicitpar -stackvar
726 RWORDSIZE = CONFIGURE_RWORDSIZE
727 RSIZEBITS = `expr $(RWORDSIZE) \* 8`
728 PROMOTION = -xtypemap=real:$(RSIZEBITS),integer:32
729 CFLAGS = -DNCARIBM_NOC99
730 FCOPTIM = -O3 -xlibmopt
732 FCBASEOPTS = -fnonstd -free -xpp=cpp $(FCDEBUG) $(OMP) -w
733 FCFLAGS = $(FCOPTIM) $(FCBASEOPTS)
734 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
736 ESMF_IO_LIB = ESMFIOLIB
737 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
738 INCLUDE_MODULES = -I$(WRF_SRC_ROOT_DIR)/external/io_netcdf -I$(WRF_SRC_ROOT_DIR)/external/io_int -I$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 \
739 -I$(WRF_SRC_ROOT_DIR)/frame -I$(WRF_SRC_ROOT_DIR)/share -I$(WRF_SRC_ROOT_DIR)/phys -I$(WRF_SRC_ROOT_DIR)/inc -I$(WRF_SRC_ROOT_DIR)/chem \
740 -M$(WRF_SRC_ROOT_DIR)/external/io_netcdf -M$(WRF_SRC_ROOT_DIR)/external/io_int -M$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 \
741 -M$(WRF_SRC_ROOT_DIR)/frame -M$(WRF_SRC_ROOT_DIR)/share -M$(WRF_SRC_ROOT_DIR)/phys -M$(WRF_SRC_ROOT_DIR)/inc -M$(WRF_SRC_ROOT_DIR)/chem \
742 -M$(WRF_SRC_ROOT_DIR)/dyn_em
743 ARCHFLAGS = $(COREDEFS) -DGRIB1 CONFIGURE_GRIB2_FLAG -DINTIO -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4 \
745 CONFIGURE_NETCDF_FLAG \
747 PERL = CONFIGURE_PERL_PATH
749 LIB = CONFIGURE_NETCDF_LIB_PATH \
750 -L$(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 -lfftpack \
751 -L$(WRF_SRC_ROOT_DIR)/external/io_int -lwrfio_int \
752 -L$(WRF_SRC_ROOT_DIR)/external/io_grib1 -lio_grib1 \
753 CONFIGURE_GRIB2_LIB \
754 -L$(WRF_SRC_ROOT_DIR)/external/io_grib_share -lio_grib_share \
755 $(WRF_SRC_ROOT_DIR)/frame/module_internal_header_util.o $(WRF_SRC_ROOT_DIR)/frame/pack_utils.o -L$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 -lesmf_time
756 LDFLAGS = $(FCOPTIM) $(OMP) CONFIGURE_LDFLAGS
757 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
758 #CPP = /opt/SUNWspro/bin/fpp
759 CPP = /usr/ccs/lib/cpp -C -P
760 POUND_DEF = -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS)
761 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) $(OMPCPP) $(COREDEFS) $(ENVCOMPDEFS) $(POUND_DEF)
765 NETCDFPATH = CONFIGURE_NETCDF_PATH
768 #### Override default sed command and script for Fortran source files ####
769 #### This sed script does not pass __FILE__ and __LINE__ to wrf_error_fatal() ####
770 #### because the Sun Fortran compiler complains about long source lines, ####
771 #### usually due to cpp translating __FILE__ to a full pathname. ####
772 SED_FTN = sed -f $(WRF_SRC_ROOT_DIR)/arch/no_file_line.sed
774 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 wrfio_int module_dm.F esmf_time fftpack
777 ( /bin/cp module_dm_warning module_dm.F ; cat module_dm_stubs.F >> module_dm.F )
780 ( cd $(WRF_SRC_ROOT_DIR)/external/io_netcdf ; make NETCDFPATH=CONFIGURE_NETCDF_PATH RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCBASEOPTS) " )
783 ( cd $(WRF_SRC_ROOT_DIR)/external/io_int ; \
784 make CC="$(CC)" RANLIB="$(RANLIB)" CPP="$(CPP)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(FC) $(PROMOTION) $(FCBASEOPTS)" all )
787 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib_share ; \
788 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCBASEOPTS)" archive)
791 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib1 ; \
792 make CC="$(SCC)" CFLAGS="$(CFLAGS)" FC="$(FC) $(PROMOTION) $(FCBASEOPTS)" RANLIB="$(RANLIB)" CPP="$(CPP)" archive )
795 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib2 ; \
796 make CC="$(SCC)" CFLAGS="$(CFLAGS) CONFIGURE_GRIB2_INC" FC="$(SFC) $(PROMOTION) $(FCBASEOPTS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" archive )
799 ( cd $(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 ; \
800 make FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP) -I$(WRF_SRC_ROOT_DIR)/inc -I. $(POUND_DEF)" )
803 ( cd $(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 ; \
804 make FC="$(SFC)" FFLAGS="$(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" )
806 solve_interface.o : solve_interface.F
808 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.F > $*.f90
809 $(FC) -c $(FCBASEOPTS) -I. $(PROMOTION) $(MODULE_DIRS) $*.f90
811 # compile these without high optimization to speed compile
812 shift_domain_em.o : shift_domain_em.F
813 module_io_mm5.o : module_io_mm5.F
814 module_si_io.o : module_si_io.F
815 module_io_wrf.o : module_io_wrf.F
816 module_domain.o : module_domain.F
817 module_start.o : module_start.F
818 module_initialize.o : module_initialize.F
819 module_initialize_b_wave.o : module_initialize_b_wave.F
820 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
821 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
822 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
823 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
824 module_initialize_real.o : module_initialize_real.F
825 module_dm.o : module_dm.F
826 module_comm_dm.o : module_comm_dm.F
827 start_domain.o : start_domain.F
828 module_configure.o : module_configure.F
831 module_io_mm5.o module_si_io.o module_io_wrf.o module_domain.o \
832 module_start.o module_initialize.o module_initialize_b_wave.o \
833 module_initialize_hill2d_x.o module_initialize_quarter_ss.o \
834 module_initialize_squall2d_x.o module_initialize_squall2d_y.o \
836 module_initialize_real.o module_dm.o module_comm_dm.o start_domain.o :
838 $(SED_FTN) $*.F > $*.b
839 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b > $*.f90
841 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90
843 ###########################################################
844 #ARCH Compaq OSF1 alpha (single-threaded, no nesting)
853 RWORDSIZE = CONFIGURE_RWORDSIZE
854 RSIZEBITS = `expr $(RWORDSIZE) \* 8`
855 ARCHFLAGS = $(COREDEFS) CONFIGURE_NETCDF_FLAG -DGRIB1 CONFIGURE_GRIB2_FLAG -DINTIO \
857 -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4 \
858 -DLIMIT_ARGS -DFLOATSAFE
859 PROMOTION = -real_size $(RSIZEBITS) -integer_size `expr 4 \* 8`
860 CFLAGS = $(ARCHFLAGS)
864 FCBASEOPTS = -w -convert big_endian -automatic -cpp -free -I. -arch host $(FCDEBUG)
865 FCBASEOPTS_ESMF = -w -convert big_endian -automatic -cpp -free -I. -arch host $(FCDEBUG_ESMF)
866 FCFLAGS = $(FCOPTIM) $(FCBASEOPTS) $(OMP)
867 FCFLAGS_ESMF = $(FCOPTIM) $(FCBASEOPTS_ESMF) $(OMP)
868 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
870 ESMF_IO_LIB = ESMFIOLIB
871 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
872 INCLUDE_MODULES = -I$(WRF_SRC_ROOT_DIR)/external/io_netcdf -I$(WRF_SRC_ROOT_DIR)/external/io_int -I$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 \
873 -I$(WRF_SRC_ROOT_DIR)/frame -I$(WRF_SRC_ROOT_DIR)/share -I$(WRF_SRC_ROOT_DIR)/phys -I$(WRF_SRC_ROOT_DIR)/chem -I$(WRF_SRC_ROOT_DIR)/inc
874 PERL = CONFIGURE_PERL_PATH
876 LIB = CONFIGURE_NETCDF_LIB_PATH -L$(WRF_SRC_ROOT_DIR)/external/io_int -lwrfio_int \
877 -L$(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 -lfftpack \
878 $(WRF_SRC_ROOT_DIR)/frame/module_internal_header_util.o $(WRF_SRC_ROOT_DIR)/frame/pack_utils.o -L$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 -lesmf_time \
879 -L$(WRF_SRC_ROOT_DIR)/external/io_grib1 -lio_grib1 \
880 CONFIGURE_GRIB2_LIB \
881 -L$(WRF_SRC_ROOT_DIR)/external/io_grib_share -lio_grib_share
882 LDFLAGS = $(FCOPTIM) $(OMP) -automatic -convert big_endian $(OMP) CONFIGURE_LDFLAGS
883 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
884 CPP = /usr/bin/cpp -C -P
885 POUND_DEF = -DDEC_ALPHA -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS)
886 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) $(OMPCPP) $(COREDEFS) $(ENVCOMPDEFS) $(POUND_DEF)
890 NETCDFPATH = CONFIGURE_NETCDF_PATH
893 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 wrfio_int module_dm.F esmf_time fftpack
896 ( /bin/cp module_dm_warning module_dm.F ; cat module_dm_stubs.F >> module_dm.F )
899 ( cd $(WRF_SRC_ROOT_DIR)/external/io_netcdf ; \
900 make NETCDFPATH=CONFIGURE_NETCDF_PATH RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCDEBUG) -convert big_endian -automatic -cpp -free -w" )
903 ( cd $(WRF_SRC_ROOT_DIR)/external/io_int ; \
904 make CC="$(CC)" RANLIB="$(RANLIB)" CPP="$(CPP)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(FC) $(PROMOTION) $(FCDEBUG) -convert big_endian -automatic -cpp -free -w" all )
907 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib_share ; \
908 make IO_GRIB_SHARE_DIR="$(WRF_SRC_ROOT_DIR)/external/io_grib_share/" CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) -convert big_endian -automatic -cpp -free -w " archive)
911 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib1 ; \
912 make IO_GRIB_SHARE_DIR="$(WRF_SRC_ROOT_DIR)/external/io_grib_share/" CC="$(SCC)" CFLAGS="$(CFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) -convert big_endian -automatic -cpp -free -w " archive)
915 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib2 ; \
916 make IO_GRIB_SHARE_DIR="$(WRF_SRC_ROOT_DIR)/external/io_grib_share/" CC="$(SCC)" CFLAGS="$(CFLAGS) CONFIGURE_GRIB2_INC" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) -convert big_endian -automatic -cpp -free -w " archive)
919 ( cd $(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 ; \
920 make FC="$(FC) $(PROMOTION) $(FCFLAGS_ESMF)" RANLIB="$(RANLIB)" CPP="$(CPP) -I$(WRF_SRC_ROOT_DIR)/inc -I. $(POUND_DEF)" )
923 ( cd $(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 ; \
924 make FC="$(SFC)" FFLAGS="$(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" )
926 nest_init_utils.o : nest_init_utils.F
927 module_optional_si_input.o : module_optional_si_input.F
929 nest_init_utils.o module_optional_si_input.o :
931 $(SED_FTN) $*.F > $*.b
932 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b > $*.f90
934 $(FC) -c $(PROMOTION) -w -convert big_endian -automatic -cpp -free -I. -arch host $(MODULE_DIRS) $*.f90
936 # compile these without high optimization to speed compile
937 module_io_mm5.o : module_io_mm5.F
938 module_si_io.o : module_si_io.F
939 module_io_wrf.o : module_io_wrf.F
940 module_domain.o : module_domain.F
941 module_start.o : module_start.F
942 module_initialize.o : module_initialize.F
943 module_initialize_b_wave.o : module_initialize_b_wave.F
944 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
945 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
946 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
947 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
948 module_initialize_real.o : module_initialize_real.F
949 start_domain.o : start_domain.F
950 module_configure.o : module_configure.F
951 mediation_interp_domain.o : mediation_interp_domain.F
952 mediation_force_domain.o : mediation_force_domain.F
953 mediation_feedback_domain.o : mediation_feedback_domain.F
955 module_io_mm5.o module_si_io.o module_io_wrf.o module_domain.o \
956 module_start.o module_initialize.o module_initialize_b_wave.o \
957 module_initialize_hill2d_x.o module_initialize_quarter_ss.o \
958 module_initialize_squall2d_x.o module_initialize_squall2d_y.o \
960 mediation_interp_domain.o \
961 mediation_force_domain.o \
962 mediation_feedback_domain.o \
963 module_initialize_real.o start_domain.o :
965 $(SED_FTN) $*.F > $*.b
966 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b > $*.f90
968 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) -O0 $*.f90
970 mediation_integrate.o : mediation_integrate.F
971 module_dm.o : module_dm.F
972 module_comm_dm.o : module_comm_dm.F
973 mediation_wrfmain.o : mediation_wrfmain.F
974 solve_em.o : solve_em.F
976 mediation_integrate.o module_dm.o module_comm_dm.o mediation_wrfmain.o solve_em.o :
978 $(SED_FTN) $*.F > $*.b
979 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b > $*.f90
981 $(FC) -c $(PROMOTION) $(FCBASEOPTS_ESMF) $(MODULE_DIRS) -O0 $*.f90
983 ###########################################################
984 #ARCH Compaq OSF1 alpha SM (OpenMP, no nesting)
993 RWORDSIZE = CONFIGURE_RWORDSIZE
994 RSIZEBITS = `expr $(RWORDSIZE) \* 8`
995 ARCHFLAGS = $(COREDEFS) CONFIGURE_NETCDF_FLAG -DGRIB1 CONFIGURE_GRIB2_FLAG -DINTIO \
997 -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4 \
998 -DLIMIT_ARGS -DFLOATSAFE
999 PROMOTION = -real_size $(RSIZEBITS) -integer_size `expr 4 \* 8`
1000 CFLAGS = $(ARCHFLAGS)
1003 FCDEBUG_ESMF = # -O0
1004 FCREAL8OMP = -align records -align dcommons -granularity quadword
1005 FCBASEOPTS = -w -convert big_endian -automatic -cpp -free -I. -arch host $(FCDEBUG) $(FCREAL8OMP)
1006 FCBASEOPTS_ESMF = -w -convert big_endian -automatic -cpp -free -I. -arch host $(FCDEBUG_ESMF) $(FCREAL8OMP)
1007 FCFLAGS = $(FCOPTIM) $(FCBASEOPTS) $(OMP)
1008 FCFLAGS_ESMF = $(FCOPTIM) $(FCBASEOPTS_ESMF) $(OMP)
1009 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
1011 ESMF_IO_LIB = ESMFIOLIB
1012 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
1013 INCLUDE_MODULES = -I$(WRF_SRC_ROOT_DIR)/external/io_netcdf -I$(WRF_SRC_ROOT_DIR)/external/io_int -I$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 \
1014 -I$(WRF_SRC_ROOT_DIR)/frame -I$(WRF_SRC_ROOT_DIR)/share -I$(WRF_SRC_ROOT_DIR)/phys -I$(WRF_SRC_ROOT_DIR)/chem -I$(WRF_SRC_ROOT_DIR)/inc
1015 PERL = CONFIGURE_PERL_PATH
1017 LIB = CONFIGURE_NETCDF_LIB_PATH -L$(WRF_SRC_ROOT_DIR)/external/io_int -lwrfio_int \
1018 -L$(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 -lfftpack \
1019 $(WRF_SRC_ROOT_DIR)/frame/module_internal_header_util.o $(WRF_SRC_ROOT_DIR)/frame/pack_utils.o -L$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 -lesmf_time \
1020 -L$(WRF_SRC_ROOT_DIR)/external/io_grib1 -lio_grib1 \
1021 CONFIGURE_GRIB2_LIB \
1022 -L$(WRF_SRC_ROOT_DIR)/external/io_grib_share -lio_grib_share
1023 LDFLAGS = $(FCOPTIM) $(OMP) -automatic -convert big_endian $(OMP) CONFIGURE_LDFLAGS
1024 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
1025 CPP = /usr/bin/cpp -C -P
1026 POUND_DEF = -DDEC_ALPHA -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS)
1027 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) $(OMPCPP) $(COREDEFS) $(ENVCOMPDEFS) $(POUND_DEF)
1031 NETCDFPATH = CONFIGURE_NETCDF_PATH
1034 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 wrfio_int module_dm.F esmf_time fftpack
1037 ( /bin/cp module_dm_warning module_dm.F ; cat module_dm_stubs.F >> module_dm.F )
1040 ( cd $(WRF_SRC_ROOT_DIR)/external/io_netcdf ; \
1041 make NETCDFPATH=CONFIGURE_NETCDF_PATH RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCREAL8OMP) -convert big_endian -automatic -cpp -free -w" )
1044 ( cd $(WRF_SRC_ROOT_DIR)/external/io_int ; \
1045 make CC="$(CC)" RANLIB="$(RANLIB)" CPP="$(CPP)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(FC) $(PROMOTION) $(FCDEBUG) -convert big_endian -automatic -cpp -free -w" all )
1048 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib_share ; \
1049 make IO_GRIB_SHARE_DIR="$(WRF_SRC_ROOT_DIR)/external/io_grib_share/" CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) -convert big_endian -automatic -cpp -free -w " archive)
1052 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib1 ; \
1053 make IO_GRIB_SHARE_DIR="$(WRF_SRC_ROOT_DIR)/external/io_grib_share/" CC="$(SCC)" CFLAGS="$(CFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCREAL8OMP) -convert big_endian -automatic -cpp -free -w " archive)
1056 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib2 ; \
1057 make IO_GRIB_SHARE_DIR="$(WRF_SRC_ROOT_DIR)/external/io_grib_share/" CC="$(SCC)" CFLAGS="$(CFLAGS) CONFIGURE_GRIB2_INC" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCREAL8OMP) -convert big_endian -automatic -cpp -free -w " archive)
1060 ( cd $(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 ; \
1061 make FC="$(FC) $(PROMOTION) $(FCFLAGS_ESMF)" RANLIB="$(RANLIB)" CPP="$(CPP) -I$(WRF_SRC_ROOT_DIR)/inc -I. $(POUND_DEF)" )
1064 ( cd $(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 ; \
1065 make FC="$(SFC)" FFLAGS="$(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" )
1067 nest_init_utils.o : nest_init_utils.F
1068 module_optional_si_input.o : module_optional_si_input.F
1070 nest_init_utils.o module_optional_si_input.o :
1072 $(SED_FTN) $*.F > $*.b
1073 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b > $*.f90
1075 $(FC) -c $(PROMOTION) -w -convert big_endian -automatic -cpp -free -I. -arch host $(MODULE_DIRS) $*.f90
1077 # compile these without high optimization to speed compile
1078 module_io_mm5.o : module_io_mm5.F
1079 module_si_io.o : module_si_io.F
1080 module_io_wrf.o : module_io_wrf.F
1081 module_domain.o : module_domain.F
1082 module_start.o : module_start.F
1083 module_initialize.o : module_initialize.F
1084 module_initialize_b_wave.o : module_initialize_b_wave.F
1085 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
1086 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
1087 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
1088 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
1089 module_initialize_real.o : module_initialize_real.F
1090 start_domain.o : start_domain.F
1091 module_configure.o : module_configure.F
1092 mediation_interp_domain.o : mediation_interp_domain.F
1093 mediation_force_domain.o : mediation_force_domain.F
1094 mediation_feedback_domain.o : mediation_feedback_domain.F
1096 module_io_mm5.o module_si_io.o module_io_wrf.o module_domain.o \
1097 module_start.o module_initialize.o module_initialize_b_wave.o \
1098 module_initialize_hill2d_x.o module_initialize_quarter_ss.o \
1099 module_initialize_squall2d_x.o module_initialize_squall2d_y.o \
1100 module_configure.o \
1101 mediation_interp_domain.o \
1102 mediation_force_domain.o \
1103 mediation_feedback_domain.o \
1104 module_initialize_real.o start_domain.o :
1106 $(SED_FTN) $*.F > $*.b
1107 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b > $*.f90
1109 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) -O0 $*.f90
1111 mediation_integrate.o : mediation_integrate.F
1112 module_dm.o : module_dm.F
1113 module_comm_dm.o : module_comm_dm.F
1114 mediation_wrfmain.o : mediation_wrfmain.F
1115 solve_em.o : solve_em.F
1117 mediation_integrate.o module_dm.o module_comm_dm.o mediation_wrfmain.o solve_em.o :
1119 $(SED_FTN) $*.F > $*.b
1120 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b > $*.f90
1122 $(FC) -c $(PROMOTION) $(FCBASEOPTS_ESMF) $(MODULE_DIRS) -O0 $*.f90
1124 ###########################################################
1125 #ARCH Compaq OSF1 alpha DM-Parallel (RSL_LITE, MPICH, allows ARW and NMM nesting)
1127 # Notes: for experimental implementation of moving nests, add -DMOVE_NESTS to ARCHFLAGS
1128 # for experimental implementation of vortex tracking nests, add -DMOVE_NESTS -DVORTEX_CENTER to ARCHFLAGS
1138 RWORDSIZE = CONFIGURE_RWORDSIZE
1139 RSIZEBITS = `expr $(RWORDSIZE) \* 8`
1140 ARCHFLAGS = $(COREDEFS) -DNETCDF -DGRIB1 CONFIGURE_GRIB2_FLAG -DINTIO \
1142 -DDM_PARALLEL -DRSL_LITE \
1143 -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4 \
1144 -DLIMIT_ARGS -DFLOATSAFE \
1145 -DMAXDOM_MAKE=$(MAX_DOMAINS) -DMAXPROC_MAKE=$(MAX_PROC)
1146 PROMOTION = -real_size $(RSIZEBITS) -integer_size `expr 4 \* 8`
1147 CFLAGS = $(ARCHFLAGS) -I$(WRF_SRC_ROOT_DIR)/external/RSL_LITE
1150 FCDEBUG_ESMF = # -O0
1151 FCBASEOPTS = -w -convert big_endian -automatic -cpp -free -I. -arch host $(FCDEBUG)
1152 FCBASEOPTS_ESMF = -w -convert big_endian -automatic -cpp -free -I. -arch host $(FCDEBUG_ESMF)
1153 FCFLAGS = $(FCOPTIM) $(FCBASEOPTS) $(OMP)
1154 FCFLAGS_ESMF = $(FCOPTIM) $(FCBASEOPTS_ESMF) $(OMP)
1155 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
1157 ESMF_IO_LIB = ESMFIOLIB
1158 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
1159 INCLUDE_MODULES = -I$(WRF_SRC_ROOT_DIR)/external/io_netcdf -I$(WRF_SRC_ROOT_DIR)/external/io_int -I$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 \
1160 -I$(WRF_SRC_ROOT_DIR)/frame -I$(WRF_SRC_ROOT_DIR)/share -I$(WRF_SRC_ROOT_DIR)/phys -I$(WRF_SRC_ROOT_DIR)/chem -I$(WRF_SRC_ROOT_DIR)/inc
1161 PERL = CONFIGURE_PERL_PATH
1163 LIB = CONFIGURE_NETCDF_LIB_PATH -L$(WRF_SRC_ROOT_DIR)/external/io_int -lwrfio_int \
1164 -L$(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 -lfftpack \
1165 -L$(WRF_SRC_ROOT_DIR)/external/RSL_LITE -lrsl_lite \
1166 $(WRF_SRC_ROOT_DIR)/frame/module_internal_header_util.o $(WRF_SRC_ROOT_DIR)/frame/pack_utils.o -L$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 -lesmf_time \
1167 -L$(WRF_SRC_ROOT_DIR)/external/io_grib1 -lio_grib1 \
1168 CONFIGURE_GRIB2_LIB \
1169 -L$(WRF_SRC_ROOT_DIR)/external/io_grib_share -lio_grib_share
1170 LDFLAGS = $(FCOPTIM) -automatic -convert big_endian $(OMP) CONFIGURE_LDFLAGS
1171 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
1172 CPP = /usr/bin/cpp -C -P
1173 POUND_DEF = -DDEC_ALPHA -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS)
1174 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) -I$(WRF_SRC_ROOT_DIR)/external/RSL_LITE -C -P $(OMPCPP) $(COREDEFS) $(ENVCOMPDEFS) $(POUND_DEF)
1179 NETCDFPATH = CONFIGURE_NETCDF_PATH
1182 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 wrfio_int $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/librsl_lite.a gen_comms.c module_dm.F esmf_time fftpack
1184 gen_comms.c : $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/gen_comms.c
1185 ( /bin/cp $(WRF_SRC_ROOT_DIR)/tools/gen_comms_warning $(WRF_SRC_ROOT_DIR)/tools/gen_comms.c ; \
1186 cat $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/gen_comms.c >> $(WRF_SRC_ROOT_DIR)/tools/gen_comms.c )
1188 module_dm.F : $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/module_dm.F
1189 ( /bin/cp module_dm_warning module_dm.F ; \
1190 cat $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/module_dm.F >> module_dm.F )
1193 ( cd $(WRF_SRC_ROOT_DIR)/external/io_netcdf ; \
1194 make NETCDFPATH=CONFIGURE_NETCDF_PATH RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCDEBUG) -convert big_endian -automatic -cpp -free -w" )
1197 ( cd $(WRF_SRC_ROOT_DIR)/external/io_int ; \
1198 make CC="$(CC)" RANLIB="$(RANLIB)" CPP="$(CPP)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(FC) $(PROMOTION) $(FCDEBUG) -convert big_endian -automatic -cpp -free -w" all )
1201 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib_share ; \
1202 make IO_GRIB_SHARE_DIR="$(WRF_SRC_ROOT_DIR)/external/io_grib_share/" CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) -convert big_endian -automatic -cpp -free -w " archive)
1205 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib1 ; \
1206 make IO_GRIB_SHARE_DIR="$(WRF_SRC_ROOT_DIR)/external/io_grib_share/" CC="$(SCC)" CFLAGS="$(CFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) -convert big_endian -automatic -cpp -free -w " archive )
1209 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib2 ; \
1210 make IO_GRIB_SHARE_DIR="$(WRF_SRC_ROOT_DIR)/external/io_grib_share/" CC="$(SCC)" CFLAGS="$(CFLAGS) CONFIGURE_GRIB2_INC" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) -convert big_endian -automatic -cpp -free -w " archive )
1213 ( cd $(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 ; \
1214 make FC="$(FC) $(PROMOTION) $(FCFLAGS_ESMF)" RANLIB="$(RANLIB)" CPP="$(CPP) -I$(WRF_SRC_ROOT_DIR)/inc -I. $(POUND_DEF)" )
1217 ( cd $(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 ; \
1218 make FC="$(SFC)" FFLAGS="$(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" )
1220 $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/librsl_lite.a :
1221 ( cd $(WRF_SRC_ROOT_DIR)/external/RSL_LITE ; \
1222 make CPP="$(CPP) $(CPPFLAGS)" CC="$(CC)" FC="$(FC) $(PROMOTION) $(FCFLAGS)" MAX_DOMAINS=$(MAX_DOMAINS) MAX_PROC=$(MAX_PROC) )
1224 nest_init_utils.o : nest_init_utils.F
1225 module_optional_si_input.o : module_optional_si_input.F
1226 module_IGWAVE_ADJUST.o : module_IGWAVE_ADJUST.F
1228 nest_init_utils.o module_optional_si_input.o module_IGWAVE_ADJUST.o:
1230 $(SED_FTN) $*.F > $*.b
1231 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b > $*.f90
1233 $(FC) -c $(PROMOTION) -w -convert big_endian -automatic -cpp -free -I. -arch host $(MODULE_DIRS) $*.f90
1235 # compile these without high optimization to speed compile
1236 module_io_mm5.o : module_io_mm5.F
1237 module_si_io.o : module_si_io.F
1238 module_io_wrf.o : module_io_wrf.F
1239 module_domain.o : module_domain.F
1240 module_start.o : module_start.F
1241 module_initialize.o : module_initialize.F
1242 module_initialize_b_wave.o : module_initialize_b_wave.F
1243 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
1244 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
1245 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
1246 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
1247 module_initialize_real.o : module_initialize_real.F
1248 start_domain.o : start_domain.F
1249 start_domain_nmm.o : start_domain_nmm.F
1250 module_configure.o : module_configure.F
1251 mediation_interp_domain.o : mediation_interp_domain.F
1252 mediation_force_domain.o : mediation_force_domain.F
1253 mediation_feedback_domain.o : mediation_feedback_domain.F
1255 module_io_mm5.o module_si_io.o module_io_wrf.o module_domain.o \
1256 module_start.o module_initialize.o module_initialize_b_wave.o \
1257 module_initialize_hill2d_x.o module_initialize_quarter_ss.o \
1258 module_initialize_squall2d_x.o module_initialize_squall2d_y.o \
1259 module_configure.o \
1260 mediation_interp_domain.o \
1261 mediation_force_domain.o \
1262 mediation_feedback_domain.o \
1263 module_initialize_real.o start_domain.o start_domain_nmm.o :
1265 $(SED_FTN) $*.F > $*.b
1266 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b > $*.f90
1268 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) -O0 $*.f90
1270 mediation_integrate.o : mediation_integrate.F
1271 module_dm.o : module_dm.F
1272 module_comm_dm.o : module_comm_dm.F
1273 mediation_wrfmain.o : mediation_wrfmain.F
1274 solve_em.o : solve_em.F
1276 mediation_integrate.o module_dm.o module_comm_dm.o mediation_wrfmain.o solve_em.o :
1278 $(SED_FTN) $*.F > $*.b
1279 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b > $*.f90
1281 $(FC) -c $(PROMOTION) $(FCBASEOPTS_ESMF) $(MODULE_DIRS) -O0 $*.f90
1283 ###########################################################
1284 #ARCH Compaq OSF1 alpha DM/SM (BUILD FOR AUTODOC ONLY -- DO NOT USE TO COMPILE CODE)
1294 RWORDSIZE = CONFIGURE_RWORDSIZE
1295 RSIZEBITS = `expr $(RWORDSIZE) \* 8`
1296 ARCHFLAGS = $(COREDEFS) -DAUTODOC_BUILD CONFIGURE_NETCDF_FLAG -DGRIB1 CONFIGURE_GRIB2_FLAG -DINTIO -DWRF_RSL_IO \
1298 -DDM_PARALLEL="'<b>DM_PARALLEL</b>'" -DRSL_LITE="'<b>RSL_LITE</b>'" \
1299 -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4 \
1300 -DLIMIT_ARGS -DFLOATSAFE \
1301 -DMAXDOM_MAKE=$(MAX_DOMAINS) -DMAXPROC_MAKE=$(MAX_PROC) -DMOVE_NESTS
1302 PROMOTION = -real_size $(RSIZEBITS) -integer_size `expr 4 \* 8`
1303 CFLAGS = $(ARCHFLAGS) -I$(WRF_SRC_ROOT_DIR)/external/RSL_LITE
1306 FCDEBUG_ESMF = # -O0
1307 FCBASEOPTS = -w -convert big_endian -automatic -cpp -free -I. -arch host $(FCDEBUG)
1308 FCBASEOPTS_ESMF = -w -convert big_endian -automatic -cpp -free -I. -arch host $(FCDEBUG_ESMF)
1309 FCFLAGS = $(FCOPTIM) $(FCBASEOPTS) $(OMP)
1310 FCFLAGS_ESMF = $(FCOPTIM) $(FCBASEOPTS_ESMF) $(OMP)
1311 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
1313 ESMF_IO_LIB = ESMFIOLIB
1314 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
1315 INCLUDE_MODULES = -I$(WRF_SRC_ROOT_DIR)/external/io_netcdf -I$(WRF_SRC_ROOT_DIR)/external/io_int -I$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 \
1316 -I$(WRF_SRC_ROOT_DIR)/frame -I$(WRF_SRC_ROOT_DIR)/share -I$(WRF_SRC_ROOT_DIR)/phys -I$(WRF_SRC_ROOT_DIR)/inc -I$(WRF_SRC_ROOT_DIR)/chem
1317 PERL = CONFIGURE_PERL_PATH
1319 LIB = CONFIGURE_NETCDF_LIB_PATH -L$(WRF_SRC_ROOT_DIR)/external/io_int -lwrfio_int \
1320 -L$(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 -lfftpack \
1321 -L$(WRF_SRC_ROOT_DIR)/external/RSL_LITE -lrsl_lite \
1322 -L$(WRF_SRC_ROOT_DIR)/external/io_grib1 -lio_grib1 \
1323 CONFIGURE_GRIB2_LIB \
1324 -L$(WRF_SRC_ROOT_DIR)/external/io_grib_share -lio_grib_share \
1325 $(WRF_SRC_ROOT_DIR)/frame/module_internal_header_util.o $(WRF_SRC_ROOT_DIR)/frame/pack_utils.o -L$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 -lesmf_time
1326 LDFLAGS = $(FCOPTIM) -automatic -convert big_endian $(OMP) CONFIGURE_LDFLAGS
1327 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
1328 CPP = /usr/bin/cpp -C -P
1329 POUND_DEF = -DDEC_ALPHA -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS)
1330 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) -I$(WRF_SRC_ROOT_DIR)/external/RSL_LITE -C -P `cat $(WRF_SRC_ROOT_DIR)/inc/dm_comm_cpp_flags` $(OMPCPP) $(COREDEFS) $(ENVCOMPDEFS) $(POUND_DEF)
1335 NETCDFPATH = CONFIGURE_NETCDF_PATH
1338 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 wrfio_int $(WRF_SRC_ROOT_DIR)/external/RSL/librsl_lite.a gen_comms.c module_dm.F esmf_time fftpack
1340 gen_comms.c : $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/gen_comms.c
1341 ( /bin/cp $(WRF_SRC_ROOT_DIR)/tools/gen_comms_warning $(WRF_SRC_ROOT_DIR)/tools/gen_comms.c ; \
1342 cat $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/gen_comms.c >> $(WRF_SRC_ROOT_DIR)/tools/gen_comms.c )
1344 module_dm.F : $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/module_dm.F
1345 ( /bin/cp module_dm_warning module_dm.F ; \
1346 cat $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/module_dm.F >> module_dm.F )
1349 ( cd $(WRF_SRC_ROOT_DIR)/external/io_netcdf ; \
1350 make NETCDFPATH=CONFIGURE_NETCDF_PATH RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCDEBUG) -convert big_endian -automatic -cpp -free -w" )
1353 ( cd $(WRF_SRC_ROOT_DIR)/external/io_int ; \
1354 make CC="$(CC)" RANLIB="$(RANLIB)" CPP="$(CPP)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(FC) $(PROMOTION) $(FCDEBUG) -convert big_endian -automatic -cpp -free -w" all )
1357 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib_share ; \
1358 make IO_GRIB_SHARE_DIR="$(WRF_SRC_ROOT_DIR)/external/io_grib_share/" CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) -convert big_endian -automatic -cpp -free -w " archive)
1361 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib1 ; \
1362 make IO_GRIB_SHARE_DIR="$(WRF_SRC_ROOT_DIR)/external/io_grib_share/" CC="$(SCC)" CFLAGS="$(CFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) -convert big_endian -automatic -cpp -free -w " archive )
1365 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib2 ; \
1366 make IO_GRIB_SHARE_DIR="$(WRF_SRC_ROOT_DIR)/external/io_grib_share/" CC="$(SCC)" CFLAGS="$(CFLAGS) CONFIGURE_GRIB2_INC" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) -convert big_endian -automatic -cpp -free -w " archive )
1369 ( cd $(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 ; \
1370 make FC="$(FC) $(PROMOTION) $(FCFLAGS_ESMF)" RANLIB="$(RANLIB)" CPP="$(CPP) -I$(WRF_SRC_ROOT_DIR)/inc -I. $(POUND_DEF)" )
1373 ( cd $(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 ; \
1374 make FC="$(SFC)" FFLAGS="$(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" )
1376 $(WRF_SRC_ROOT_DIR)/external/RSL/RSL/librsl_lite.a :
1377 ( cd $(WRF_SRC_ROOT_DIR)/external/RSL_LITE ; \
1378 make CC="$(CC)" FC="$(FC) $(PROMOTION)" MAX_DOMAINS=$(MAX_DOMAINS) MAX_PROC=$(MAX_PROC) all )
1380 # compile these without high optimization to speed compile
1381 module_io_mm5.o : module_io_mm5.F
1382 module_si_io.o : module_si_io.F
1383 module_io_wrf.o : module_io_wrf.F
1384 module_domain.o : module_domain.F
1385 module_start.o : module_start.F
1386 module_initialize.o : module_initialize.F
1387 module_initialize_b_wave.o : module_initialize_b_wave.F
1388 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
1389 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
1390 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
1391 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
1392 module_initialize_real.o : module_initialize_real.F
1393 start_domain.o : start_domain.F
1394 module_configure.o : module_configure.F
1396 module_io_mm5.o module_si_io.o module_io_wrf.o module_domain.o \
1397 module_start.o module_initialize.o module_initialize_b_wave.o \
1398 module_initialize_hill2d_x.o module_initialize_quarter_ss.o \
1399 module_initialize_squall2d_x.o module_initialize_squall2d_y.o \
1400 module_configure.o \
1401 module_initialize_real.o start_domain.o :
1403 $(SED_FTN) $*.F > $*.b
1404 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b > $*.f90
1406 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) -O0 $*.f90
1408 mediation_integrate.o : mediation_integrate.F
1409 module_dm.o : module_dm.F
1410 module_comm_dm.o : module_comm_dm.F
1411 mediation_wrfmain.o : mediation_wrfmain.F
1412 solve_em.o : solve_em.F
1414 mediation_integrate.o module_dm.o module_comm_dm.o mediation_wrfmain.o solve_em.o :
1416 $(SED_FTN) $*.F > $*.b
1417 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b > $*.f90
1419 $(FC) -c $(PROMOTION) $(FCBASEOPTS_ESMF) $(MODULE_DIRS) -O0 $*.f90
1421 ###########################################################
1422 #ARCH Compaq OSF1 alpha DM-Parallel (RSL_LITE, MPICH, allows ARW and NMM nesting, UNOPT shift_domain)
1424 # Notes: for experimental implementation of moving nests, add -DMOVE_NESTS to ARCHFLAGS
1425 # for experimental implementation of vortex tracking nests, add -DMOVE_NESTS -DVORTEX_CENTER to ARCHFLAGS
1435 RWORDSIZE = CONFIGURE_RWORDSIZE
1436 RSIZEBITS = `expr $(RWORDSIZE) \* 8`
1437 ARCHFLAGS = $(COREDEFS) -DNETCDF -DGRIB1 CONFIGURE_GRIB2_FLAG -DINTIO \
1439 -DDM_PARALLEL -DRSL_LITE \
1440 -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4 \
1441 -DLIMIT_ARGS -DFLOATSAFE \
1442 -DMAXDOM_MAKE=$(MAX_DOMAINS) -DMAXPROC_MAKE=$(MAX_PROC)
1443 PROMOTION = -real_size $(RSIZEBITS) -integer_size `expr 4 \* 8`
1444 CFLAGS = $(ARCHFLAGS) -I$(WRF_SRC_ROOT_DIR)/external/RSL_LITE
1447 FCDEBUG_ESMF = # -O0
1448 FCBASEOPTS = -w -convert big_endian -automatic -cpp -free -I. -arch host $(FCDEBUG)
1449 FCBASEOPTS_ESMF = -w -convert big_endian -automatic -cpp -free -I. -arch host $(FCDEBUG_ESMF)
1450 FCFLAGS = $(FCOPTIM) $(FCBASEOPTS) $(OMP)
1451 FCFLAGS_ESMF = $(FCOPTIM) $(FCBASEOPTS_ESMF) $(OMP)
1452 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
1454 ESMF_IO_LIB = ESMFIOLIB
1455 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
1456 INCLUDE_MODULES = -I$(WRF_SRC_ROOT_DIR)/external/io_netcdf -I$(WRF_SRC_ROOT_DIR)/external/io_int -I$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 \
1457 -I$(WRF_SRC_ROOT_DIR)/frame -I$(WRF_SRC_ROOT_DIR)/share -I$(WRF_SRC_ROOT_DIR)/phys -I$(WRF_SRC_ROOT_DIR)/chem -I$(WRF_SRC_ROOT_DIR)/inc
1458 PERL = CONFIGURE_PERL_PATH
1460 LIB = CONFIGURE_NETCDF_LIB_PATH -L$(WRF_SRC_ROOT_DIR)/external/io_int -lwrfio_int \
1461 -L$(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 -lfftpack \
1462 -L$(WRF_SRC_ROOT_DIR)/external/RSL_LITE -lrsl_lite \
1463 $(WRF_SRC_ROOT_DIR)/frame/module_internal_header_util.o $(WRF_SRC_ROOT_DIR)/frame/pack_utils.o -L$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 -lesmf_time \
1464 -L$(WRF_SRC_ROOT_DIR)/external/io_grib1 -lio_grib1 \
1465 CONFIGURE_GRIB2_LIB \
1466 -L$(WRF_SRC_ROOT_DIR)/external/io_grib_share -lio_grib_share
1467 LDFLAGS = $(FCOPTIM) -automatic -convert big_endian $(OMP) CONFIGURE_LDFLAGS
1468 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
1469 CPP = /usr/bin/cpp -C -P
1470 POUND_DEF = -DDEC_ALPHA -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS)
1471 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) -I$(WRF_SRC_ROOT_DIR)/external/RSL_LITE -C -P $(OMPCPP) $(COREDEFS) $(ENVCOMPDEFS) $(POUND_DEF)
1476 NETCDFPATH = CONFIGURE_NETCDF_PATH
1479 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 wrfio_int $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/librsl_lite.a gen_comms.c module_dm.F esmf_time fftpack
1481 gen_comms.c : $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/gen_comms.c
1482 ( /bin/cp $(WRF_SRC_ROOT_DIR)/tools/gen_comms_warning $(WRF_SRC_ROOT_DIR)/tools/gen_comms.c ; \
1483 cat $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/gen_comms.c >> $(WRF_SRC_ROOT_DIR)/tools/gen_comms.c )
1485 module_dm.F : $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/module_dm.F
1486 ( /bin/cp module_dm_warning module_dm.F ; \
1487 cat $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/module_dm.F >> module_dm.F )
1490 ( cd $(WRF_SRC_ROOT_DIR)/external/io_netcdf ; \
1491 make NETCDFPATH=CONFIGURE_NETCDF_PATH RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCDEBUG) -convert big_endian -automatic -cpp -free -w" )
1494 ( cd $(WRF_SRC_ROOT_DIR)/external/io_int ; \
1495 make CC="$(CC)" RANLIB="$(RANLIB)" CPP="$(CPP)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(FC) $(PROMOTION) $(FCDEBUG) -convert big_endian -automatic -cpp -free -w" all )
1498 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib_share ; \
1499 make IO_GRIB_SHARE_DIR="$(WRF_SRC_ROOT_DIR)/external/io_grib_share/" CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) -convert big_endian -automatic -cpp -free -w " archive)
1502 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib1 ; \
1503 make IO_GRIB_SHARE_DIR="$(WRF_SRC_ROOT_DIR)/external/io_grib_share/" CC="$(SCC)" CFLAGS="$(CFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) -convert big_endian -automatic -cpp -free -w " archive )
1506 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib2 ; \
1507 make IO_GRIB_SHARE_DIR="$(WRF_SRC_ROOT_DIR)/external/io_grib_share/" CC="$(SCC)" CFLAGS="$(CFLAGS) CONFIGURE_GRIB2_INC" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) -convert big_endian -automatic -cpp -free -w " archive )
1510 ( cd $(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 ; \
1511 make FC="$(FC) $(PROMOTION) $(FCFLAGS_ESMF)" RANLIB="$(RANLIB)" CPP="$(CPP) -I$(WRF_SRC_ROOT_DIR)/inc -I. $(POUND_DEF)" )
1514 ( cd $(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 ; \
1515 make FC="$(SFC)" FFLAGS="$(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" )
1517 $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/librsl_lite.a :
1518 ( cd $(WRF_SRC_ROOT_DIR)/external/RSL_LITE ; \
1519 make CPP="$(CPP) $(CPPFLAGS)" CC="$(CC)" FC="$(FC) $(PROMOTION) $(FCFLAGS)" MAX_DOMAINS=$(MAX_DOMAINS) MAX_PROC=$(MAX_PROC) )
1521 nest_init_utils.o : nest_init_utils.F
1522 module_optional_si_input.o : module_optional_si_input.F
1523 module_IGWAVE_ADJUST.o : module_IGWAVE_ADJUST.F
1525 nest_init_utils.o module_optional_si_input.o module_IGWAVE_ADJUST.o:
1527 $(SED_FTN) $*.F > $*.b
1528 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b > $*.f90
1530 $(FC) -c $(PROMOTION) -w -convert big_endian -automatic -cpp -free -I. -arch host $(MODULE_DIRS) $*.f90
1532 # compile these without high optimization to speed compile
1533 module_io_mm5.o : module_io_mm5.F
1534 module_si_io.o : module_si_io.F
1535 module_io_wrf.o : module_io_wrf.F
1536 module_domain.o : module_domain.F
1537 module_start.o : module_start.F
1538 module_initialize.o : module_initialize.F
1539 module_initialize_b_wave.o : module_initialize_b_wave.F
1540 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
1541 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
1542 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
1543 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
1544 module_initialize_real.o : module_initialize_real.F
1545 start_domain.o : start_domain.F
1546 start_domain_nmm.o : start_domain_nmm.F
1547 module_configure.o : module_configure.F
1548 mediation_interp_domain.o : mediation_interp_domain.F
1549 mediation_force_domain.o : mediation_force_domain.F
1550 mediation_feedback_domain.o : mediation_feedback_domain.F
1551 shift_domain_em.o : shift_domain_em.F
1553 module_io_mm5.o module_si_io.o module_io_wrf.o module_domain.o \
1554 module_start.o module_initialize.o module_initialize_b_wave.o \
1555 module_initialize_hill2d_x.o module_initialize_quarter_ss.o \
1556 module_initialize_squall2d_x.o module_initialize_squall2d_y.o \
1557 module_configure.o \
1558 mediation_interp_domain.o \
1559 mediation_force_domain.o \
1560 mediation_feedback_domain.o \
1562 module_initialize_real.o start_domain.o start_domain_nmm.o :
1564 $(SED_FTN) $*.F > $*.b
1565 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b > $*.f90
1567 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) -O0 $*.f90
1569 mediation_integrate.o : mediation_integrate.F
1570 module_dm.o : module_dm.F
1571 module_comm_dm.o : module_comm_dm.F
1572 mediation_wrfmain.o : mediation_wrfmain.F
1573 solve_em.o : solve_em.F
1575 mediation_integrate.o module_dm.o module_comm_dm.o mediation_wrfmain.o solve_em.o :
1577 $(SED_FTN) $*.F > $*.b
1578 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b > $*.f90
1580 $(FC) -c $(PROMOTION) $(FCBASEOPTS_ESMF) $(MODULE_DIRS) -O0 $*.f90
1582 ###########################################################
1583 #ARCH Alpha Linux alpha DM (single-threaded, no nesting)
1590 RWORDSIZE = CONFIGURE_RWORDSIZE
1591 PROMOTION = -r$(RWORDSIZE) -i4
1595 FCBASENOINL = -convert big_endian -O1 -automatic -cpp -free -I. -arch host $(FCDEBUG)
1596 FCBASEOPTS = -w -convert big_endian -automatic -cpp -free -I. \
1597 -arch host $(FCDEBUG)
1598 FCFLAGS = $(FCOPTIM) $(FCBASEOPTS) $(OMP)
1599 ARCHFLAGS = $(COREDEFS) -DGRIB1 CONFIGURE_GRIB2_FLAG -DINTIO -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4 \
1601 CONFIGURE_NETCDF_FLAG
1602 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
1604 ESMF_IO_LIB = ESMFIOLIB
1605 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
1606 INCLUDE_MODULES = -I$(WRF_SRC_ROOT_DIR)/external/io_netcdf -I$(WRF_SRC_ROOT_DIR)/external/io_int -I$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 \
1607 -I$(WRF_SRC_ROOT_DIR)/frame -I$(WRF_SRC_ROOT_DIR)/share -I$(WRF_SRC_ROOT_DIR)/phys -I$(WRF_SRC_ROOT_DIR)/chem -I$(WRF_SRC_ROOT_DIR)/inc
1608 PERL = CONFIGURE_PERL_PATH
1610 LIB = CONFIGURE_NETCDF_LIB_PATH -L$(WRF_SRC_ROOT_DIR)/external/io_int -lwrfio_int \
1611 -L$(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 -lfftpack \
1612 -L$(WRF_SRC_ROOT_DIR)/external/io_grib1 -lio_grib1 \
1613 CONFIGURE_GRIB2_LIB \
1614 -L$(WRF_SRC_ROOT_DIR)/external/io_grib_share -lio_grib_share \
1615 $(WRF_SRC_ROOT_DIR)/frame/module_internal_header_util.o $(WRF_SRC_ROOT_DIR)/frame/pack_utils.o -L$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 -lesmf_time
1616 LDFLAGS = $(FCOPTIM) -automatic -convert big_endian CONFIGURE_LDFLAGS
1617 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
1618 CPP = /lib/cpp -C -P
1619 POUND_DEF = -DDEC_ALPHA -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS)
1620 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) -traditional $(COREDEFS) $(ENVCOMPDEFS) $(POUND_DEF)
1624 NETCDFPATH = CONFIGURE_NETCDF_PATH
1627 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 wrfio_int module_dm.F esmf_time fftpack
1630 ( /bin/cp module_dm_warning module_dm.F ; \
1631 cat module_dm_stubs.F >> module_dm.F )
1634 ( cd $(WRF_SRC_ROOT_DIR)/external/io_netcdf ; \
1635 make NETCDFPATH=CONFIGURE_NETCDF_PATH RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCBASENOINL) -w" TRADFLAG="-traditional" )
1638 ( cd $(WRF_SRC_ROOT_DIR)/external/io_int ; \
1639 make CC="$(CC)" RANLIB="$(RANLIB)" CPP="$(CPP)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCBASENOINL) -w" \
1640 TRADFLAG="-traditional" all )
1643 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib_share ; \
1644 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCBASENOINL) -w" \
1645 TRADFLAG="-traditional" archive)
1648 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib1 ; \
1649 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCBASENOINL) -w" \
1650 TRADFLAG="-traditional" archive )
1653 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib2 ; \
1654 make CC="$(SCC)" CFLAGS="$(CFLAGS) CONFIGURE_GRIB2_INC" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASENOINL) -w" \
1655 TRADFLAG="-traditional" archive )
1658 ( cd $(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 ; \
1659 make FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP) -I$(WRF_SRC_ROOT_DIR)/inc -I. $(POUND_DEF)" )
1662 ( cd $(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 ; \
1663 make FC="$(SFC)" FFLAGS="$(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" )
1665 # compile these without high optimization to speed compile
1666 module_io_mm5.o : module_io_mm5.F
1667 module_si_io.o : module_si_io.F
1668 module_io_wrf.o : module_io_wrf.F
1669 module_domain.o : module_domain.F
1670 module_start.o : module_start.F
1671 module_initialize.o : module_initialize.F
1672 module_initialize_b_wave.o : module_initialize_b_wave.F
1673 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
1674 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
1675 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
1676 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
1677 module_initialize_real.o : module_initialize_real.F
1678 module_dm.o : module_dm.F
1679 module_comm_dm.o : module_comm_dm.F
1680 start_domain.o : start_domain.F
1681 module_configure.o : module_configure.F
1683 module_io_mm5.o module_si_io.o module_io_wrf.o module_domain.o \
1684 module_start.o module_initialize.o module_initialize_b_wave.o \
1685 module_initialize_hill2d_x.o module_initialize_quarter_ss.o \
1686 module_initialize_squall2d_x.o module_initialize_squall2d_y.o \
1687 module_configure.o \
1688 module_initialize_real.o module_dm.o module_comm_dm.o start_domain.o :
1690 $(SED_FTN) $*.F > $*.b
1691 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b > $*.f90
1693 $(FC) -c $(PROMOTION) $(FCBASENOINL) $(MODULE_DIRS) $*.f90
1695 ###########################################################
1696 #ARCH Alpha Linux alpha SM (DOES NOT WORK ON JET! No nesting)
1703 RWORDSIZE = CONFIGURE_RWORDSIZE
1704 PROMOTION = -r$(RWORDSIZE) -i4
1708 FCBASENOINL = -convert big_endian -O1 -automatic -cpp -free -I. -arch host $(FCDEBUG)
1709 FCBASEOPTS = -w -convert big_endian -automatic -cpp -free -I. \
1710 -arch host $(FCDEBUG)
1711 FCFLAGS = $(FCOPTIM) $(FCBASEOPTS) $(OMP)
1712 ARCHFLAGS = $(COREDEFS) -DGRIB1 CONFIGURE_GRIB2_FLAG -DINTIO -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4 \
1714 CONFIGURE_NETCDF_FLAG
1715 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
1717 ESMF_IO_LIB = ESMFIOLIB
1718 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
1719 INCLUDE_MODULES = -I$(WRF_SRC_ROOT_DIR)/external/io_netcdf -I$(WRF_SRC_ROOT_DIR)/external/io_int -I$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 \
1720 -I$(WRF_SRC_ROOT_DIR)/frame -I$(WRF_SRC_ROOT_DIR)/share -I$(WRF_SRC_ROOT_DIR)/phys -I$(WRF_SRC_ROOT_DIR)/chem -I$(WRF_SRC_ROOT_DIR)/inc
1721 PERL = CONFIGURE_PERL_PATH
1723 LIB = CONFIGURE_NETCDF_LIB_PATH -L$(WRF_SRC_ROOT_DIR)/external/io_int -lwrfio_int \
1724 -L$(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 -lfftpack \
1725 -L$(WRF_SRC_ROOT_DIR)/external/io_grib1 -lio_grib1 \
1726 CONFIGURE_GRIB2_LIB \
1727 -L$(WRF_SRC_ROOT_DIR)/external/io_grib_share -lio_grib_share \
1728 $(WRF_SRC_ROOT_DIR)/frame/module_internal_header_util.o $(WRF_SRC_ROOT_DIR)/frame/pack_utils.o -L$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 -lesmf_time
1729 LDFLAGS = $(FCOPTIM) -automatic -convert big_endian CONFIGURE_LDFLAGS
1730 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
1731 CPP = /lib/cpp -C -P
1732 POUND_DEF = -DDEC_ALPHA -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS)
1733 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) -traditional -C -P `cat $(WRF_SRC_ROOT_DIR)/inc/dm_comm_cpp_flags` $(COREDEFS) $(ENVCOMPDEFS) $(POUND_DEF)
1737 NETCDFPATH = CONFIGURE_NETCDF_PATH
1740 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 wrfio_int module_dm.F esmf_time fftpack
1743 ( /bin/cp $(WRF_SRC_ROOT_DIR)/tools/gen_comms_warning $(WRF_SRC_ROOT_DIR)/tools/gen_comms.c ; \
1744 /bin/cp module_dm_warning module_dm.F )
1747 ( cd $(WRF_SRC_ROOT_DIR)/external/io_netcdf ; \
1748 make NETCDFPATH=CONFIGURE_NETCDF_PATH RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCBASENOINL) -w" TRADFLAG="-traditional" )
1751 ( cd $(WRF_SRC_ROOT_DIR)/external/io_int ; \
1752 make CC="$(CC)" RANLIB="$(RANLIB)" CPP="$(CPP)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCBASENOINL) -w" \
1753 TRADFLAG="-traditional" all )
1756 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib_share ; \
1757 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCBASENOINL) -w" \
1758 TRADFLAG="-traditional" archive)
1761 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib1 ; \
1762 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCBASENOINL) -w" \
1763 TRADFLAG="-traditional" archive )
1765 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib2 ; \
1766 make CC="$(SCC)" CFLAGS="$(CFLAGS) CONFIGURE_GRIB2_INC" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASENOINL) -w" \
1767 TRADFLAG="-traditional" archive )
1770 ( cd $(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 ; \
1771 make FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP) -I$(WRF_SRC_ROOT_DIR)/inc -I. $(POUND_DEF)" )
1774 ( cd $(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 ; \
1775 make FC="$(SFC)" FFLAGS="$(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" )
1777 # compile these without high optimization to speed compile
1778 module_io_mm5.o : module_io_mm5.F
1779 module_si_io.o : module_si_io.F
1780 module_io_wrf.o : module_io_wrf.F
1781 module_domain.o : module_domain.F
1782 module_start.o : module_start.F
1783 module_initialize.o : module_initialize.F
1784 module_initialize_b_wave.o : module_initialize_b_wave.F
1785 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
1786 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
1787 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
1788 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
1789 module_initialize_real.o : module_initialize_real.F
1790 module_dm.o : module_dm.F
1791 module_comm_dm.o : module_comm_dm.F
1792 start_domain.o : start_domain.F
1793 module_configure.o : module_configure.F
1795 module_io_mm5.o module_si_io.o module_io_wrf.o module_domain.o \
1796 module_start.o module_initialize.o module_initialize_b_wave.o \
1797 module_initialize_hill2d_x.o module_initialize_quarter_ss.o \
1798 module_initialize_squall2d_x.o module_initialize_squall2d_y.o \
1799 module_configure.o \
1800 module_initialize_real.o module_dm.o module_comm_dm.o start_domain.o :
1802 $(SED_FTN) $*.F > $*.b
1803 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b > $*.f90
1805 $(FC) -c $(PROMOTION) $(FCBASENOINL) $(MODULE_DIRS) $*.f90
1807 ###########################################################
1808 #ARCH VPP UNIX_System_V F300 5000
1815 RWORDSIZE = CONFIGURE_RWORDSIZE
1816 PROMOTION = -r$(RWORDSIZE) -i4
1818 FCFLAGS = -Free -X9 -Am
1819 FCFLAGS = -Free -X9 -Sw -Wv,-Of,-te,-ilfunc,-noalias,-m3,-P255 -Oe,-P -Kfast -Am
1821 FCBASEOPTS = $(FCFLAGS)
1822 ARCHFLAGS = $(COREDEFS) CONFIGURE_NETCDF_FLAG -DGRIB1 CONFIGURE_GRIB2_FLAG -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4 \
1825 PERL = CONFIGURE_PERL_PATH
1827 LIB = $(WRF_SRC_ROOT_DIR)/frame/module_internal_header_util.o $(WRF_SRC_ROOT_DIR)/frame/pack_utils.o -L$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 -lesmf_time \
1828 -L$(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 -lfftpack \
1829 -L$(WRF_SRC_ROOT_DIR)/external/io_grib1 -lio_grib1 \
1830 CONFIGURE_GRIB2_LIB \
1831 -L$(WRF_SRC_ROOT_DIR)/external/io_grib_share -lio_grib_share
1832 LDFLAGS = -Wl,-P -J CONFIGURE_LDFLAGS
1833 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
1834 LDFLAGS = -J CONFIGURE_LDFLAGS
1835 CPP = /lib/cpp -C -P
1836 POUND_DEF = -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS)
1837 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) $(COREDEFS) $(ENVCOMPDEFS) $(POUND_DEF)
1841 NETCDFPATH = CONFIGURE_NETCDF_PATH
1844 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 module_dm.F esmf_time fftpack
1847 ( /bin/cp module_dm_warning module_dm.F ; cat module_dm_stubs.F >> module_dm.F )
1850 ( cd $(WRF_SRC_ROOT_DIR)/external/io_netcdf ; \
1851 make NETCDFPATH=CONFIGURE_NETCDF_PATH RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) -Free -X9" )
1854 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib_share ; \
1855 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) -Free -X9" archive)
1858 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib1 ; \
1859 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) -Free -X9" archive )
1862 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib2 ; \
1863 make CC="$(SCC)" CFLAGS="$(CFLAGS) CONFIGURE_GRIB2_INC" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -Free -X9" archive )
1865 ###########################################################
1872 NATIVE_RWORDSIZE = 8
1873 RWORDSIZE = CONFIGURE_RWORDSIZE
1874 # does this PROMOTION flag work on Cray?
1875 PROMOTION = -r$(RWORDSIZE) -i4
1877 FCFLAGS = -f free -N 255 -I.
1879 FCBASEOPTS = $(FCFLAGS)
1880 ARCHFLAGS = $(COREDEFS) -DCRAY CONFIGURE_NETCDF_FLAG -DGRIB1 CONFIGURE_GRIB2_FLAG -DIWORDSIZE=8 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=8 \
1883 LDFLAGS = CONFIGURE_LDFLAGS
1884 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
1885 CPP = /opt/ctl/bin/cpp
1886 POUND_DEF = -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS)
1887 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) $(COREDEFS) $(ENVCOMPDEFS) $(POUND_DEF)
1888 PERL = CONFIGURE_PERL_PATH
1890 #LIB = CONFIGURE_NETCDF_LIB_PATH
1891 LIB = $(WRF_SRC_ROOT_DIR)/frame/module_internal_header_util.o $(WRF_SRC_ROOT_DIR)/frame/pack_utils.o -L$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 -lesmf_time \
1892 -L$(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 -lfftpack \
1893 -L$(WRF_SRC_ROOT_DIR)/external/io_grib1 -lio_grib1 \
1894 CONFIGURE_GRIB2_LIB \
1895 -L$(WRF_SRC_ROOT_DIR)/external/io_grib_share -lio_grib_share
1899 NETCDFPATH = CONFIGURE_NETCDF_PATH
1902 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 esmf_time fftpack
1903 ( /bin/cp module_dm_warning module_dm.F ; cat module_dm_stubs.F >> module_dm.F )
1906 ( cd $(WRF_SRC_ROOT_DIR)/external/io_netcdf ; \
1907 make NETCDFPATH=CONFIGURE_NETCDF_PATH RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCFLAGS)" )
1910 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib_share ; \
1911 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCFLAGS)" archive)
1914 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib1 ; \
1915 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCFLAGS)" archive )
1918 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib2 ; \
1919 make CC="$(SCC)" CFLAGS="$(CFLAGS) CONFIGURE_GRIB2_INC" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) $(FCFLAGS)" archive )
1921 solve_interface.o : solve_interface.F
1923 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.F > $*.f90
1924 $(FC) -c -O 0 $(PROMOTION) $(FCFLAGS) $*.f90
1926 ###########################################################
1927 #ARCH UNICOS/mp machine crayx1 (RSL_LITE, MPI, MSP mode)
1929 # Cray X1 (RSL_LITE, MPI, MSP mode)
1930 # For CSD mode set numtiles=4 in &domains section
1931 # in namelist.input for best MSP efficiency.
1941 #### Override default sed command and script for Fortran source files ####
1942 #### This sed script converts !$OMP directives to !csd$ directives ####
1943 SED_FTN = sed -f $(WRF_SRC_ROOT_DIR)/arch/cray_csd.sed
1945 ## Use these for X1 cross compiler to build Registry
1946 ##X1_CROSS_COMP = "gcc"
1947 ##X1_CROSS_CFLG = ""
1948 ## Use these for X1 native (trigger) compiler
1949 X1_CROSS_COMP = "cc"
1950 X1_CROSS_CFLG = "-hcommand"
1951 CC_TOOLS = $(X1_CROSS_COMP) $(X1_CROSS_CFLG)
1953 RWORDSIZE = CONFIGURE_RWORDSIZE
1955 FCBASEOPTS = -f free -N 255 -I. -x omp -dy
1956 FCFLAGS_LOWOPT = $(FCBASEOPTS) -O1
1957 FCFLAGS = $(FCBASEOPTS) -Ofp3 -O3 -Ogen_private_callee
1958 #if using 64bit precision
1959 #PROMOTION = -sreal64 -dp -sinteger32
1960 CFLAGS = -I$(WRF_SRC_ROOT_DIR)/external/RSL_LITE -DMAXDOM_MAKE=$(MAX_DOMAINS) \
1961 -DMAXPROC_MAKE=$(MAX_PROC) -DDM_PARALLEL -UCRAY -DLANDREAD_STUB -Dcrayx1
1963 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
1965 ESMF_IO_LIB = ESMFIOLIB
1966 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
1967 INCLUDE_MODULES = -I$(WRF_SRC_ROOT_DIR)/inc \
1968 -p./ -p$(WRF_SRC_ROOT_DIR)/external/io_netcdf -p$(WRF_SRC_ROOT_DIR)/external/io_int -p$(WRF_SRC_ROOT_DIR)/frame \
1969 -p$(WRF_SRC_ROOT_DIR)/frame -p$(WRF_SRC_ROOT_DIR)/share -p$(WRF_SRC_ROOT_DIR)/phys -p$(WRF_SRC_ROOT_DIR)/chem \
1970 -p$(WRF_SRC_ROOT_DIR)/dyn_em -p $(WRF_SRC_ROOT_DIR)/external/esmf_time_f90
1971 ARCHFLAGS = $(COREDEFS) -DRSL_LITE -DDM_PARALLEL -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) \
1972 -DLWORDSIZE=4 CONFIGURE_NETCDF_FLAG -DGRIB1 CONFIGURE_GRIB2_FLAG -DINTIO \
1974 -DLIMIT_ARGS -Dcrayx1
1979 LIB = -L$(WRF_SRC_ROOT_DIR)/external/io_netcdf -lwrfio_nf CONFIGURE_NETCDF_LIB_PATH \
1980 -L$(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 -lfftpack \
1981 -L$(WRF_SRC_ROOT_DIR)/external/RSL_LITE -lrsl_lite \
1982 -L$(WRF_SRC_ROOT_DIR)/external/io_int -lwrfio_int \
1983 -L$(WRF_SRC_ROOT_DIR)/external/io_grib1 -lio_grib1 \
1984 CONFIGURE_GRIB2_LIB \
1985 -L$(WRF_SRC_ROOT_DIR)/external/io_grib_share -lio_grib_share \
1986 $(WRF_SRC_ROOT_DIR)/frame/module_internal_header_util.o $(WRF_SRC_ROOT_DIR)/frame/pack_utils.o \
1987 -L$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 -lesmf_time -lmalloc
1989 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
1992 CPP = cpp -C -P -Dcrayx1
1993 POUND_DEF = -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS) #
1994 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) -I$(WRF_SRC_ROOT_DIR)/external/RSL_LITE `cat $(WRF_SRC_ROOT_DIR)/inc/dm_comm_cpp_flags` $(COREDEFS) $(ENVCOMPDEFS) $(POUND_DEF)
1999 NETCDFPATH = CONFIGURE_NETCDF_PATH
2001 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/librsl_lite.a wrfio_int gen_comms.c module_dm.F esmf_time fftpack
2003 gen_comms.c : $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/gen_comms.c
2004 ( /bin/cp $(WRF_SRC_ROOT_DIR)/tools/gen_comms_warning $(WRF_SRC_ROOT_DIR)/tools/gen_comms.c ; cat $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/gen_comms.c >> $(WRF_SRC_ROOT_DIR)/tools/gen_comms.c )
2006 module_dm.F : $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/module_dm.F
2007 ( /bin/cp module_dm_warning module_dm.F ; cat $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/module_dm.F >> module_dm.F )
2010 ( cd $(WRF_SRC_ROOT_DIR)/external/io_netcdf ; make NETCDFPATH=CONFIGURE_NETCDF_PATH RANLIB="$(RANLIB)" CPP="$(CPP) -Dcrayx1" FC="$(FC) $(PROMOTION) -f free -N 255 " )
2013 ( cd $(WRF_SRC_ROOT_DIR)/external/io_int ; \
2014 make CC="$(CC)" RANLIB="$(RANLIB)" CPP="$(CPP)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(FC) $(PROMOTION) -f free -N 255" all )
2017 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib_share ; \
2018 make CC="$(CC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP) -Dcrayx1" FC="$(FC) $(PROMOTION) -f free -N 255" archive)
2021 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib1 ; \
2022 make CC="$(CC) -UCRAY" CPP="$(CPP) -Dcrayx1" RANLIB="$(RANLIB)" \
2023 FC="$(FC) $(PROMOTION) -f free -N 255" archive )
2025 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib2 ; \
2026 make CC="$(CC) -UCRAY" CPP="$(CPP) CONFIGURE_GRIB2_INC -Dcrayx1" RM="$(RM)" RANLIB="$(RANLIB)" \
2027 FC="$(SFC) $(PROMOTION) -f free -N 255" archive )
2030 ( cd $(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 ; \
2031 make FC="$(FC) $(PROMOTION) $(FCDEBUG) -f free -N 255" RANLIB="$(RANLIB)" CPP="$(CPP) -I$(WRF_SRC_ROOT_DIR)/inc -I. $(POUND_DEF)" )
2034 ( cd $(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 ; \
2035 make FC="$(SFC)" FFLAGS="$(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" )
2037 $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/librsl_lite.a :
2038 ( cd $(WRF_SRC_ROOT_DIR)/external/RSL_LITE ; \
2039 make CPP="$(CPP) $(CPPFLAGS)" CFLAGS="$(CFLAGS)" CC="$(CC)" FC="$(FC) $(PROMOTION) $(FCFLAGS)" OPTS="$(FCBASEOPTS)" \
2040 MAX_DOMAINS=$(MAX_DOMAINS) MAX_PROC=$(MAX_PROC) LEARN_BCAST=-DLEARN_BCAST )
2042 # compile these without high optimization
2043 module_io_mm5.o : module_io_mm5.F
2044 module_si_io.o : module_si_io.F
2045 module_domain.o : module_domain.F
2046 module_start.o : module_start.F
2047 module_initialize.o : module_initialize.F
2048 module_initialize_b_wave.o : module_initialize_b_wave.F
2049 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
2050 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
2051 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
2052 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
2053 module_initialize_real.o : module_initialize_real.F
2054 module_dm.o : module_dm.F
2055 module_comm_dm.o : module_comm_dm.F
2056 start_domain.o : start_domain.F
2057 mediation_interp_domain.o : mediation_interp_domain.F
2058 mediation_force_domain.o : mediation_force_domain.F
2059 convert_nmm.o : convert_nmm.F
2060 module_configure.o : module_configure.F
2061 solve_em.o : solve_em.F
2062 solve_interface.o : solve_interface.F
2063 wrf_restartout.o : wrf_restartout.F
2064 wrf_restartin.o : wrf_restartin.F
2065 input_wrf.o : input_wrf.F
2066 output_wrf.o : output_wrf.F
2068 module_io_mm5.o module_si_io.o module_domain.o \
2069 module_start.o module_initialize.o module_initialize_b_wave.o \
2070 module_initialize_hill2d_x.o module_initialize_quarter_ss.o \
2071 module_initialize_squall2d_x.o module_initialize_squall2d_y.o \
2072 module_initialize_real.o module_dm.o module_comm_dm.o start_domain.o \
2073 mediation_interp_domain.o \
2074 mediation_force_domain.o \
2075 module_configure.o solve_em.o \
2076 input_wrf.o output_wrf.o \
2077 solve_interface.o wrf_restartout.o wrf_restartin.o \
2080 $(SED_FTN) $*.F > $*.b
2081 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b > $*.f90
2083 $(FC) -c $(PROMOTION) $(FCFLAGS_LOWOPT) $(MODULE_DIRS) $*.f90
2085 ###########################################################
2086 #ARCH HP-UX PA8600 32bit (single-threaded, no nesting)
2095 RWORDSIZE = CONFIGURE_RWORDSIZE
2096 ARCHFLAGS = $(COREDEFS) CONFIGURE_NETCDF_FLAG -DGRIB1 CONFIGURE_GRIB2_FLAG -DINTIO -DLIMIT_ARGS -DFLOATSAFE \
2098 -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4
2099 PROMOTION = -r$(RWORDSIZE) -i4
2100 CFLAGS = $(ARCHFLAGS) +DS2.0a -DNOUNDERSCORE
2101 FCOPTIM = +O3 +DA2.0N +DS2.0a +Odataprefetch +Olibcalls +DO11.0EP9806 +noppu \
2102 +save +fastallocatable +Ofltacc +extend_source +source=free +FPD
2104 FCBASEOPTS = +U77 +source=free -I. +DS2.0a +noppu +Onoopenmp $(FCDEBUG)
2105 FCFLAGS = $(FCOPTIM) $(FCBASEOPTS) $(OMP)
2106 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
2108 ESMF_IO_LIB = ESMFIOLIB
2109 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
2110 INCLUDE_MODULES = -I$(WRF_SRC_ROOT_DIR)/external/io_netcdf -I$(WRF_SRC_ROOT_DIR)/external/io_int -I$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 \
2111 -I$(WRF_SRC_ROOT_DIR)/frame -I$(WRF_SRC_ROOT_DIR)/share -I$(WRF_SRC_ROOT_DIR)/phys -I$(WRF_SRC_ROOT_DIR)/inc -I$(WRF_SRC_ROOT_DIR)/chem
2112 PERL = CONFIGURE_PERL_PATH
2114 LIB = CONFIGURE_NETCDF_LIB_PATH -L$(WRF_SRC_ROOT_DIR)/external/io_int -lwrfio_int \
2115 -L$(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 -lfftpack \
2116 -L$(WRF_SRC_ROOT_DIR)/external/io_grib1 -lio_grib1 \
2117 CONFIGURE_GRIB2_LIB \
2118 -L$(WRF_SRC_ROOT_DIR)/external/io_grib_share -lio_grib_share \
2119 $(WRF_SRC_ROOT_DIR)/frame/module_internal_header_util.o $(WRF_SRC_ROOT_DIR)/frame/pack_utils.o -L$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 -lesmf_time
2120 LDFLAGS = $(FCOPTIM) $(OMP) CONFIGURE_LDFLAGS
2121 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
2123 POUND_DEF = -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS)
2124 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) $(OMPCPP) $(COREDEFS) $(ENVCOMPDEFS) $(POUND_DEF)
2128 NETCDFPATH = CONFIGURE_NETCDF_PATH
2131 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 wrfio_int module_dm.F esmf_time fftpack
2134 ( /bin/cp module_dm_warning module_dm.F ; cat module_dm_stubs.F >> module_dm.F )
2137 ( cd $(WRF_SRC_ROOT_DIR)/external/io_netcdf ; \
2138 make NETCDFPATH=CONFIGURE_NETCDF_PATH RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCFLAGS) " )
2141 ( cd $(WRF_SRC_ROOT_DIR)/external/io_int ; \
2142 make CC="$(CC)" RANLIB="$(RANLIB)" CPP="$(CPP)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS) -I$(WRF_SRC_ROOT_DIR)/inc " all )
2145 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib_share ; \
2146 make CC="$(CC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS) -I$(WRF_SRC_ROOT_DIR)/inc " archive)
2149 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib1 ; \
2150 make CC="$(CC)" CPP="$(CPP)" RANLIB="$(RANLIB)" \
2151 FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS) -I$(WRF_SRC_ROOT_DIR)/inc " archive )
2153 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib2 ; \
2154 make CC="$(CC)" CPP="$(CPP) CONFIGURE_GRIB2_INC" RM="$(RM)" RANLIB="$(RANLIB)" \
2155 FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS) -I$(WRF_SRC_ROOT_DIR)/inc " archive )
2158 ( cd $(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 ; \
2159 make FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP) -I$(WRF_SRC_ROOT_DIR)/inc -I. $(POUND_DEF)" )
2162 ( cd $(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 ; \
2163 make FC="$(SFC)" FFLAGS="$(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" )
2165 # compile these without high optimization to speed compile
2166 solve_interface.o : solve_interface.F
2167 shift_domain_em.o : shift_domain_em.F
2168 module_io_mm5.o : module_io_mm5.F
2169 module_si_io.o : module_si_io.F
2170 module_io_wrf.o : module_io_wrf.F
2171 module_domain.o : module_domain.F
2172 module_start.o : module_start.F
2173 module_initialize.o : module_initialize.F
2174 module_initialize_b_wave.o : module_initialize_b_wave.F
2175 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
2176 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
2177 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
2178 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
2179 module_initialize_real.o : module_initialize_real.F
2180 module_dm.o : module_dm.F
2181 module_comm_dm.o : module_comm_dm.F
2182 mediation_integrate.o : mediation_integrate.F
2183 start_domain.o : start_domain.F
2184 module_configure.o : module_configure.F
2188 module_configure.o \
2189 module_io_mm5.o module_si_io.o module_io_wrf.o module_domain.o \
2190 module_start.o module_initialize.o module_initialize_b_wave.o \
2191 module_initialize_hill2d_x.o module_initialize_quarter_ss.o \
2192 module_initialize_squall2d_x.o module_initialize_squall2d_y.o \
2193 module_initialize_real.o module_dm.o module_comm_dm.o mediation_integrate.o start_domain.o :
2195 $(SED_FTN) $*.F > $*.b
2196 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b > $*.f90
2198 $(FC) -c $(PROMOTION) $(FCFLAGS) $(MODULE_DIRS) $*.f90
2200 ###########################################################
2201 #ARCH HP-UX Itanium2 (single-threaded, no nesting)
2210 RWORDSIZE = CONFIGURE_RWORDSIZE
2211 ARCHFLAGS = $(COREDEFS) CONFIGURE_NETCDF_FLAG -DGRIB1 CONFIGURE_GRIB2_FLAG -DINTIO -DLIMIT_ARGS -DFLOATSAFE \
2213 -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4
2214 PROMOTION = -r$(RWORDSIZE) -i4
2215 CFLAGS = $(ARCHFLAGS) +DSitanium2 -DNOUNDERSCORE
2216 FCOPTIM = +O3 +Odataprefetch +Olibcalls +DO11.23 +noppu \
2217 +save +fastallocatable +Ofltacc +extend_source +source=free +FPD
2219 FCBASEOPTS = +U77 +source=free -I. +DSitanium2 +noppu +Onoopenmp $(FCDEBUG)
2220 FCFLAGS = $(FCOPTIM) $(FCBASEOPTS) $(OMP)
2221 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
2223 ESMF_IO_LIB = ESMFIOLIB
2224 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
2225 INCLUDE_MODULES = -I$(WRF_SRC_ROOT_DIR)/external/io_netcdf -I$(WRF_SRC_ROOT_DIR)/external/io_int -I$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 \
2226 -I$(WRF_SRC_ROOT_DIR)/frame -I$(WRF_SRC_ROOT_DIR)/share -I$(WRF_SRC_ROOT_DIR)/phys -I$(WRF_SRC_ROOT_DIR)/inc -I$(WRF_SRC_ROOT_DIR)/chem
2227 PERL = CONFIGURE_PERL_PATH
2229 LIB = CONFIGURE_NETCDF_LIB_PATH -L$(WRF_SRC_ROOT_DIR)/external/io_int -lwrfio_int \
2230 -L$(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 -lfftpack \
2231 -L$(WRF_SRC_ROOT_DIR)/external/io_grib1 -lio_grib1 \
2232 CONFIGURE_GRIB2_LIB \
2233 -L$(WRF_SRC_ROOT_DIR)/external/io_grib_share -lio_grib_share \
2234 $(WRF_SRC_ROOT_DIR)/frame/module_internal_header_util.o $(WRF_SRC_ROOT_DIR)/frame/pack_utils.o -L$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 -lesmf_time
2235 LDFLAGS = $(FCOPTIM) $(OMP) CONFIGURE_LDFLAGS
2236 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
2238 POUND_DEF = -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS)
2239 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) $(OMPCPP) $(COREDEFS) $(ENVCOMPDEFS) $(POUND_DEF)
2243 NETCDFPATH = CONFIGURE_NETCDF_PATH
2246 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 wrfio_int module_dm.F esmf_time fftpack
2249 ( /bin/cp module_dm_warning module_dm.F ; cat module_dm_stubs.F >> module_dm.F )
2252 ( cd $(WRF_SRC_ROOT_DIR)/external/io_netcdf ; \
2253 make NETCDFPATH=CONFIGURE_NETCDF_PATH RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCFLAGS) " )
2256 ( cd $(WRF_SRC_ROOT_DIR)/external/io_int ; \
2257 make CC="$(CC)" RANLIB="$(RANLIB)" CPP="$(CPP)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS) -I$(WRF_SRC_ROOT_DIR)/inc " all )
2260 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib_share ; \
2261 make CC="$(CC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" \
2262 FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS) -I$(WRF_SRC_ROOT_DIR)/inc " archive)
2265 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib1 ; \
2266 make CC="$(CC)" CPP="$(CPP)" RANLIB="$(RANLIB)" \
2267 FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS) -I$(WRF_SRC_ROOT_DIR)/inc " archive )
2269 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib2 ; \
2270 make CC="$(CC)" CPP="$(CPP) CONFIGURE_GRIB2_INC" RM="$(RM)" RANLIB="$(RANLIB)" \
2271 FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS) -I$(WRF_SRC_ROOT_DIR)/inc " archive )
2274 ( cd $(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 ; \
2275 make FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP) -I$(WRF_SRC_ROOT_DIR)/inc -I. $(POUND_DEF)" )
2278 ( cd $(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 ; \
2279 make FC="$(SFC)" FFLAGS="$(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" )
2281 # compile these without high optimization to speed compile
2282 solve_interface.o : solve_interface.F
2283 shift_domain_em.o : shift_domain_em.F
2284 module_io_mm5.o : module_io_mm5.F
2285 module_si_io.o : module_si_io.F
2286 module_io_wrf.o : module_io_wrf.F
2287 module_domain.o : module_domain.F
2288 module_start.o : module_start.F
2289 module_initialize.o : module_initialize.F
2290 module_initialize_b_wave.o : module_initialize_b_wave.F
2291 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
2292 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
2293 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
2294 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
2295 module_initialize_real.o : module_initialize_real.F
2296 module_dm.o : module_dm.F
2297 module_comm_dm.o : module_comm_dm.F
2298 mediation_integrate.o : mediation_integrate.F
2299 start_domain.o : start_domain.F
2300 module_configure.o : module_configure.F
2304 module_configure.o \
2305 module_io_mm5.o module_si_io.o module_io_wrf.o module_domain.o \
2306 module_start.o module_initialize.o module_initialize_b_wave.o \
2307 module_initialize_hill2d_x.o module_initialize_quarter_ss.o \
2308 module_initialize_squall2d_x.o module_initialize_squall2d_y.o \
2309 module_initialize_real.o module_dm.o module_comm_dm.o mediation_integrate.o start_domain.o :
2311 $(SED_FTN) $*.F > $*.b
2312 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b > $*.f90
2314 $(FC) -c $(PROMOTION) $(FCFLAGS) $(MODULE_DIRS) $*.f90
2316 ###########################################################
2317 #ARCH HP-UX PA8600 32bit (openmp, no nesting)
2326 RWORDSIZE = CONFIGURE_RWORDSIZE
2327 ARCHFLAGS = $(COREDEFS) CONFIGURE_NETCDF_FLAG -DGRIB1 CONFIGURE_GRIB2_FLAG -DINTIO -DLIMIT_ARGS -DFLOATSAFE \
2329 -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4
2330 PROMOTION = -r$(RWORDSIZE) -i4
2331 CFLAGS = $(ARCHFLAGS) +DS2.0a -DNOUNDERSCORE
2332 FCOPTIM = +O3 +DA2.0N +DS2.0a +Odataprefetch +Olibcalls +DO11.0EP9806 +noppu \
2333 +save +fastallocatable +Ofltacc +extend_source +source=free +FPD
2335 FCBASEOPTS = +U77 +source=free -I. +DS2.0a $(FCDEBUG)
2336 FCFLAGS = $(FCOPTIM) $(FCBASEOPTS) $(OMP)
2337 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
2339 ESMF_IO_LIB = ESMFIOLIB
2340 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
2341 INCLUDE_MODULES = -I$(WRF_SRC_ROOT_DIR)/external/io_netcdf -I$(WRF_SRC_ROOT_DIR)/external/io_int -I$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 \
2342 -I$(WRF_SRC_ROOT_DIR)/frame -I$(WRF_SRC_ROOT_DIR)/share -I$(WRF_SRC_ROOT_DIR)/phys -I$(WRF_SRC_ROOT_DIR)/inc -I$(WRF_SRC_ROOT_DIR)/chem
2343 PERL = CONFIGURE_PERL_PATH
2345 LIB = CONFIGURE_NETCDF_LIB_PATH -L$(WRF_SRC_ROOT_DIR)/external/io_int -lwrfio_int \
2346 -L$(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 -lfftpack \
2347 -L$(WRF_SRC_ROOT_DIR)/external/io_grib1 -lio_grib1 \
2348 CONFIGURE_GRIB2_LIB \
2349 -L$(WRF_SRC_ROOT_DIR)/external/io_grib_share -lio_grib_share \
2350 $(WRF_SRC_ROOT_DIR)/frame/module_internal_header_util.o $(WRF_SRC_ROOT_DIR)/frame/pack_utils.o -L$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 -lesmf_time
2351 LDFLAGS = $(FCOPTIM) $(OMP) CONFIGURE_LDFLAGS
2352 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
2354 POUND_DEF = -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS)
2355 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) $(OMPCPP) $(COREDEFS) $(ENVCOMPDEFS) $(POUND_DEF)
2359 NETCDFPATH = CONFIGURE_NETCDF_PATH
2362 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 wrfio_int module_dm.F esmf_time fftpack
2365 ( /bin/cp module_dm_warning module_dm.F ; cat module_dm_stubs.F >> module_dm.F )
2368 ( cd $(WRF_SRC_ROOT_DIR)/external/io_netcdf ; \
2369 make NETCDFPATH=CONFIGURE_NETCDF_PATH RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCFLAGS) " )
2372 ( cd $(WRF_SRC_ROOT_DIR)/external/io_int ; \
2373 make CC="$(CC)" RANLIB="$(RANLIB)" CPP="$(CPP)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS) -I$(WRF_SRC_ROOT_DIR)/inc " all )
2376 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib_share ; \
2377 make CC="$(CC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" \
2378 FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS) -I$(WRF_SRC_ROOT_DIR)/inc " archive)
2381 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib1 ; \
2382 make CC="$(CC)" CPP="$(CPP)" RANLIB="$(RANLIB)" \
2383 FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS) -I$(WRF_SRC_ROOT_DIR)/inc " archive )
2385 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib2 ; \
2386 make CC="$(CC)" CPP="$(CPP) CONFIGURE_GRIB2_INC" RM="$(RM)" RANLIB="$(RANLIB)" \
2387 FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS) -I$(WRF_SRC_ROOT_DIR)/inc " archive )
2390 ( cd $(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 ; \
2391 make FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP) -I$(WRF_SRC_ROOT_DIR)/inc -I. $(POUND_DEF)" )
2394 ( cd $(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 ; \
2395 make FC="$(SFC)" FFLAGS="$(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" )
2397 # compile these without high optimization to speed compile
2398 solve_interface.o : solve_interface.F
2399 shift_domain_em.o : shift_domain_em.F
2400 module_io_mm5.o : module_io_mm5.F
2401 module_si_io.o : module_si_io.F
2402 module_io_wrf.o : module_io_wrf.F
2403 module_domain.o : module_domain.F
2404 module_start.o : module_start.F
2405 module_initialize.o : module_initialize.F
2406 module_initialize_b_wave.o : module_initialize_b_wave.F
2407 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
2408 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
2409 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
2410 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
2411 module_initialize_real.o : module_initialize_real.F
2412 module_dm.o : module_dm.F
2413 module_comm_dm.o : module_comm_dm.F
2414 mediation_integrate.o : mediation_integrate.F
2415 start_domain.o : start_domain.F
2416 module_configure.o : module_configure.F
2420 module_configure.o \
2421 module_io_mm5.o module_si_io.o module_io_wrf.o module_domain.o \
2422 module_start.o module_initialize.o module_initialize_b_wave.o \
2423 module_initialize_hill2d_x.o module_initialize_quarter_ss.o \
2424 module_initialize_squall2d_x.o module_initialize_squall2d_y.o \
2425 module_initialize_real.o module_dm.o module_comm_dm.o mediation_integrate.o start_domain.o :
2427 $(SED_FTN) $*.F > $*.b
2428 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b > $*.f90
2430 $(FC) -c $(PROMOTION) $(FCFLAGS) $(MODULE_DIRS) $*.f90
2432 ###########################################################
2433 #ARCH Darwin (single-threaded, xlf, no nesting)
2435 # Using -qfloat=nomaf option can result in identical results with
2436 # non-optimized and optimized results (suggested by Fovell of UCLA)
2437 # One may turn on by uncommenting it in FCOPTIM line
2445 RWORDSIZE = CONFIGURE_RWORDSIZE
2446 PROMOTION = -qrealsize=$(RWORDSIZE) -qintsize=4
2447 CFLAGS = -DNOUNDERSCORE -DLANDREAD_STUB -I /usr/include/sys -DMACOS
2448 FCOPTIM = -O3 -qarch=auto #-qfloat=nomaf
2449 FCDEBUG = # -qnoopt -qfullpath
2450 FCBASEOPTS = -qsave $(FCDEBUG) -qmaxmem=32767 -qspillsize=32767 -w
2451 FCFLAGS = $(FCOPTIM) $(FCBASEOPTS)
2452 FCSUFFIX = -qsuffix=f=f90
2453 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
2455 ESMF_IO_LIB = ESMFIOLIB
2456 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
2457 INCLUDE_MODULES = -I$(WRF_SRC_ROOT_DIR)/external/io_netcdf -I$(WRF_SRC_ROOT_DIR)/external/io_int -I$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 \
2458 -I$(WRF_SRC_ROOT_DIR)/frame -I$(WRF_SRC_ROOT_DIR)/share -I$(WRF_SRC_ROOT_DIR)/phys -I$(WRF_SRC_ROOT_DIR)/inc -I$(WRF_SRC_ROOT_DIR)/chem
2459 ARCHFLAGS = $(COREDEFS) -DGRIB1 CONFIGURE_GRIB2_FLAG -DINTIO -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4 \
2461 CONFIGURE_NETCDF_FLAG \
2462 -DLIMIT_ARGS -DLANDREAD_STUB -DMAC_KLUDGE
2463 # -DLIMIT_ARGS -DNATIVE_MASSV -DMACOS
2464 PERL = CONFIGURE_PERL_PATH
2466 #LIB = CONFIGURE_NETCDF_LIB_PATH -lmass -lmassv
2467 LIB = CONFIGURE_NETCDF_LIB_PATH \
2468 -L$(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 -lfftpack \
2469 -L$(WRF_SRC_ROOT_DIR)/external/io_int -lwrfio_int \
2470 -L$(WRF_SRC_ROOT_DIR)/external/io_grib1 -lio_grib1 \
2471 CONFIGURE_GRIB2_LIB \
2472 -L$(WRF_SRC_ROOT_DIR)/external/io_grib_share -lio_grib_share \
2473 $(WRF_SRC_ROOT_DIR)/frame/module_internal_header_util.o $(WRF_SRC_ROOT_DIR)/frame/pack_utils.o -L$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 -lesmf_time
2475 LDFLAGS = -Wl,-stack_size,10000000,-stack_addr,0xc0000000 CONFIGURE_LDFLAGS
2476 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
2477 #CPP = /opt/ibmcmp/xlf/8.1/exe/cpp -C -P
2478 CPP = /usr/bin/cpp -C -P -xassembler-with-cpp
2479 POUND_DEF = -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS)
2480 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) $(COREDEFS) $(ENVCOMPDEFS) $(POUND_DEF)
2484 NETCDFPATH = CONFIGURE_NETCDF_PATH
2487 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 wrfio_int module_dm.F esmf_time fftpack
2490 ( /bin/cp module_dm_warning module_dm.F ; cat module_dm_stubs.F >> module_dm.F )
2493 ( cd $(WRF_SRC_ROOT_DIR)/external/io_netcdf ; make NETCDFPATH=CONFIGURE_NETCDF_PATH RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCDEBUG) -qarch=auto -qzerosize" )
2496 ( cd $(WRF_SRC_ROOT_DIR)/external/io_int ; \
2497 make CC="$(CC)" RANLIB="$(RANLIB)" CPP="$(CPP)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(FC) $(PROMOTION) $(FCDEBUG) -qarch=auto -qzerosize" all )
2500 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib_share ; \
2501 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCSUFFIX) -qarch=auto -qzerosize" archive)
2504 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib1 ; \
2505 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCSUFFIX) -qarch=auto -qzerosize" archive)
2508 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib2 ; \
2509 make CC="$(SCC)" CFLAGS="$(CFLAGS) CONFIGURE_GRIB2_INC -qcpluscmt" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCSUFFIX) -qarch=auto -qzerosize" FREE="" FIXED="-qfixed" archive)
2512 ( cd $(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 ; \
2513 make FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" CPP="$(CPP) -I$(WRF_SRC_ROOT_DIR)/inc -I. $(POUND_DEF)" )
2516 ( cd $(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 ; \
2517 make FC="$(SFC)" FFLAGS="$(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" )
2519 solve_interface.o : solve_interface.F
2521 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.F > $*.f90
2522 $(FC) -c -qfree=f90 -qspillsize=32767 -I. $(PROMOTION) $(MODULE_DIRS) $(FCSUFFIX) $*.f90
2524 # compile these without high optimization to speed compile
2525 shift_domain_em.o : shift_domain_em.F
2526 module_io_mm5.o : module_io_mm5.F
2527 module_si_io.o : module_si_io.F
2528 module_io_wrf.o : module_io_wrf.F
2529 module_domain.o : module_domain.F
2530 module_start.o : module_start.F
2531 module_initialize.o : module_initialize.F
2532 module_initialize_b_wave.o : module_initialize_b_wave.F
2533 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
2534 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
2535 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
2536 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
2537 module_initialize_real.o : module_initialize_real.F
2538 module_dm.o : module_dm.F
2539 module_comm_dm.o : module_comm_dm.F
2540 start_domain.o : start_domain.F
2541 solve_em.o : solve_em.F
2542 mediation_interp_domain.o : mediation_interp_domain.F
2543 mediation_force_domain.o : mediation_force_domain.F
2544 mediation_feedback_domain.o : mediation_feedback_domain.F
2545 convert_nmm.o : convert_nmm.F
2546 module_configure.o : module_configure.F
2548 module_io_mm5.o module_si_io.o module_io_wrf.o module_domain.o \
2549 module_start.o module_initialize.o module_initialize_b_wave.o \
2550 module_initialize_hill2d_x.o module_initialize_quarter_ss.o \
2551 module_initialize_squall2d_x.o module_initialize_squall2d_y.o \
2552 module_initialize_real.o module_dm.o module_comm_dm.o \
2554 mediation_interp_domain.o \
2555 module_configure.o \
2559 $(SED_FTN) $*.F > $*.b
2560 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b > $*.f90
2562 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $(FCSUFFIX) $*.f90
2564 ###########################################################
2565 #ARCH Darwin (OpenMP, xlf, no nesting)
2567 # Using -qfloat=nomaf option can result in identical results with
2568 # non-optimized and optimized results (suggested by Fovell of UCLA)
2569 # One may turn on by uncommenting it in FCOPTIM line
2578 RWORDSIZE = CONFIGURE_RWORDSIZE
2579 PROMOTION = -qrealsize=$(RWORDSIZE) -qintsize=4
2580 CFLAGS = -DNOUNDERSCORE -DLANDREAD_STUB -I /usr/include/sys -DMACOS
2581 FCOPTIM = -O2 -qarch=auto -qunroll=yes #-qfloat=nomaf
2582 FCDEBUG = # -qnoopt -qfullpath
2583 FCBASEOPTS = -w -qsave $(FCDEBUG) -qmaxmem=32767 -qspillsize=32767 #-qflttrap=zerodivide:invalid:enable -qsigtrap
2584 FCFLAGS = $(FCOPTIM) $(FCBASEOPTS)
2585 FCSUFFIX = -qsuffix=f=f90
2586 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
2588 ESMF_IO_LIB = ESMFIOLIB
2589 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
2590 INCLUDE_MODULES = -I$(WRF_SRC_ROOT_DIR)/external/io_netcdf -I$(WRF_SRC_ROOT_DIR)/external/io_int -I$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 \
2591 -I$(WRF_SRC_ROOT_DIR)/frame -I$(WRF_SRC_ROOT_DIR)/share -I$(WRF_SRC_ROOT_DIR)/phys -I$(WRF_SRC_ROOT_DIR)/inc -I$(WRF_SRC_ROOT_DIR)/chem
2592 ARCHFLAGS = $(COREDEFS) -DGRIB1 CONFIGURE_GRIB2_FLAG -DINTIO -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4 \
2594 CONFIGURE_NETCDF_FLAG \
2595 -DLIMIT_ARGS -DLANDREAD_STUB -DMACOS -DMAC_KLUDGE
2596 PERL = CONFIGURE_PERL_PATH
2598 LIB = CONFIGURE_NETCDF_LIB_PATH -lxlsmp \
2599 -L$(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 -lfftpack \
2600 -L$(WRF_SRC_ROOT_DIR)/external/io_int -lwrfio_int \
2601 -L$(WRF_SRC_ROOT_DIR)/external/io_grib1 -lio_grib1 \
2602 CONFIGURE_GRIB2_LIB \
2603 -L$(WRF_SRC_ROOT_DIR)/external/io_grib_share -lio_grib_share \
2604 $(WRF_SRC_ROOT_DIR)/frame/module_internal_header_util.o $(WRF_SRC_ROOT_DIR)/frame/pack_utils.o -L$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 -lesmf_time
2605 LDFLAGS = $(OMP) -Wl,-stack_size,10000000,-stack_addr,0xc0000000 CONFIGURE_LDFLAGS
2606 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
2607 CPP = /usr/bin/cpp -C -P -xassembler-with-cpp
2608 POUND_DEF = -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS)
2609 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) $(OMPCPP) $(COREDEFS) $(ENVCOMPDEFS) $(POUND_DEF)
2613 NETCDFPATH = CONFIGURE_NETCDF_PATH
2616 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 wrfio_int module_dm.F esmf_time fftpack
2619 ( /bin/cp module_dm_warning module_dm.F ; cat module_dm_stubs.F >> module_dm.F )
2622 ( cd $(WRF_SRC_ROOT_DIR)/external/io_netcdf ; make NETCDFPATH=CONFIGURE_NETCDF_PATH RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCDEBUG) -qarch=auto -qzerosize" )
2625 ( cd $(WRF_SRC_ROOT_DIR)/external/io_int ; \
2626 make CC="$(CC)" RANLIB="$(RANLIB)" CPP="$(CPP)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(FC) $(PROMOTION) $(FCDEBUG) -qarch=auto -qzerosize" all )
2629 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib_share ; \
2630 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) -qarch=auto -qzerosize" archive)
2633 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib1 ; \
2634 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCDEBUG) -qarch=auto -qzerosize" archive)
2637 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib2 ; \
2638 make CC="$(SCC)" CFLAGS="$(CFLAGS) CONFIGURE_GRIB2_INC -qcpluscmt" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) -qarch=auto -qzerosize" FREE="" FIXED="-qfixed" archive)
2641 ( cd $(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 ; \
2642 make FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" CPP="$(CPP) -I$(WRF_SRC_ROOT_DIR)/inc -I. $(POUND_DEF)" )
2645 ( cd $(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 ; \
2646 make FC="$(SFC)" FFLAGS="$(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" )
2649 module_configure.o : module_configure.F
2650 module_domain.o : module_domain.F
2651 module_sm.o : module_sm.F
2652 module_tiles.o : module_tiles.F
2653 solve_em.o : solve_em.F
2654 solve_exp.o : solve_exp.F
2655 convert_nmm.o : convert_nmm.F
2657 module_configure.o module_sm.o module_tiles.o solve_em.o solve_exp.o convert_nmm.o :
2659 $(SED_FTN) $*.F > $*.b
2660 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $(OMPCPP) $*.b > $*.f90
2662 $(FC) -c -g $(PROMOTION) $(OMP) $(FCBASEOPTS) $(MODULE_DIRS) $(FCSUFFIX) -qnoopt -qnohot $*.f90
2666 $(SED_FTN) $*.F90 > $*.b
2667 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $(OMPCPP) $*.b > $*.f90
2669 $(FC) -c -g $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $(FCSUFFIX) -qnoopt -qnohot $*.f90
2671 ###########################################################
2673 #ARCH NEC SUPER-UX SX-6 (serial)
2675 #***** some sx f90 compiler options***********
2676 # -V : version # of f90 command to stderr
2677 #-EP : activate cpp preprocessor to perform conditional compiling: output as i.[filename]
2678 #-Ep: activate cpp preprocessor to perfomr conditional compiling
2679 #****However, cpp also activated by using .F or .F90 suffixes...
2680 # -Wf: specifies option string of the f90/sx detailed options
2681 #-g: debug info generated in object file for dbx symbolic debugging
2682 # -ew : all numbers size=8bytes
2684 # -float0: default and only -float(number) option for sx6
2685 # -USX: unname the prev. defined reserved symbol SX of the preprocessor
2686 # -U overrides -D, so '-USX -D$(RUNTIMESYSTEM)' might be redundant
2687 # -p: object file in execution format corresp. to 'prof' command be generated
2688 # -f4: input source program is described in F90 standard free format
2689 # -w: only syntax diagnostic messages at the fatal level are output
2690 # -C: specifies compile mode
2691 # ssafe: only safe optimization in scalar mode (minimize side effects of
2692 # opt. no loop unrolling, etc
2693 # -init : init stack and heap areas
2694 # -L fmtlist summary stdout: formatted list, transformation lists, summary list are output to stdout
2700 CC = sxmpic++ -DMPI2_SUPPORT
2703 RWORDSIZE = $(NATIVE_RWORDSIZE)
2705 CFLAGS = -DNCARIBM_NOC99 -DDM_PARALLEL \
2706 -DMAXDOM_MAKE=$(MAX_DOMAINS) -DMAXPROC_MAKE=$(MAX_PROC) \
2707 -I$(WRF_SRC_ROOT_DIR)/external/RSL_LITE \
2712 #FCBASEOPTS = -w -byteswapio -Ktrap=fp -Mfree $(FCDEBUG)
2713 FCBASEOPTS = -ftrace -Wf,-L fmtlist transform,-pvctl fullmsg loopcnt=1000000 -f4 -Wf,-P i \
2714 FCFLAGS = $(FCOPTIM) $(FCBASEOPTS)
2715 ARCHFLAGS = $(COREDEFS) -DGRIB1 -DINTIO -DDM_PARALLEL \
2716 -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4 -DNETCDF \
2719 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
2721 ESMF_IO_LIB = $(WRF_SRC_ROOT_DIR)/external/esmf_time_f90/libesmf_time.a
2722 ESMF_IO_LIB_EXT = -L$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90/libesmf_time.a
2723 INCLUDE_MODULES = -I$(WRF_SRC_ROOT_DIR)/main -I$(WRF_SRC_ROOT_DIR)/external/io_netcdf -I$(WRF_SRC_ROOT_DIR)/external/io_int -I$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 \
2724 -I$(WRF_SRC_ROOT_DIR)/external -I$(WRF_SRC_ROOT_DIR)/frame -I$(WRF_SRC_ROOT_DIR)/share -I$(WRF_SRC_ROOT_DIR)/phys -I$(WRF_SRC_ROOT_DIR)/chem -I$(WRF_SRC_ROOT_DIR)/inc
2727 LIB = $(WRF_SRC_ROOT_DIR)/external/io_netcdf/libwrfio_nf.a -L/pool/SX-6/netcdf/netcdf-3.6.2/lib -lnetcdf -L$(WRF_SRC_ROOT_DIR)/external/RSL_LITE -lrsl_lite \
2728 -L$(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 -lfftpack \
2729 -L$(WRF_SRC_ROOT_DIR)/external/io_grib1 -lio_grib1 \
2730 -L$(WRF_SRC_ROOT_DIR)/external/io_grib_share -lio_grib_share \
2731 -L$(WRF_SRC_ROOT_DIR)/external/io_int -lwrfio_int \
2732 $(WRF_SRC_ROOT_DIR)/frame/module_internal_header_util.o $(WRF_SRC_ROOT_DIR)/frame/pack_utils.o -L$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 -lesmf_time -L$(SX_BASE_CPLUS)/lib -lcpp
2733 LDFLAGS = $(FCFLAGS) -Wl,-h nodefs
2736 CPP = /lib/cpp -C -P -traditional
2737 POUND_DEF = -DNO_RRTM_PHYSICS -traditional $(COREDEFS) -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS)
2738 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) -I$(WRF_SRC_ROOT_DIR)/external/RSL_LITE -C -P `cat $(WRF_SRC_ROOT_DIR)/inc/dm_comm_cpp_flags` $(ENVCOMPDEFS) $(POUND_DEF) -DNEC
2743 NETCDFPATH = CONFIGURE_NETCDF_PATH
2746 #### Override default sed command and script for Fortran source files ####
2747 #### This sed script does not pass __FILE__ and __LINE__ to wrf_error_fatal() ####
2748 #### because the Fortran compiler complains about long source lines. ####
2749 SED_FTN = sed -f $(WRF_SRC_ROOT_DIR)/arch/no_file_line.sed
2751 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 wrfio_int esmf_time module_dm.F fftpack
2754 ( /sbin/cp module_dm_warning module_dm.F ; \
2755 cat module_dm_stubs.F >> module_dm.F )
2758 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib_share ; \
2759 make CC="$(CC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCFLAGS)" AR="$(AR_BASE)" archive)
2762 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib1 ; \
2763 make CC="$(CC)" CFLAGS="$(CFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCFLAGS)" AR="$(AR_BASE)" archive)
2766 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib2 ; \
2767 make CC="$(CC)" CFLAGS="$(CFLAGS) CONFIGURE_GRIB2_INC" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) $(FCFLAGS)" AR="$(AR_BASE)" archive)
2770 ( cd $(WRF_SRC_ROOT_DIR)/external/io_netcdf ; \
2771 make NETCDFPATH="$(NETCDFPATH)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCFLAGS) -w" TRADFLAG="-traditional" AR="$(AR_BASE)" )
2774 ( cd $(WRF_SRC_ROOT_DIR)/external/io_int ; \
2775 make CC="$(CC)" RANLIB="$(RANLIB)" CPP="$(CPP)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" AR="$(AR_BASE)" all )
2778 ( cd $(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 ; \
2779 make FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" CPP="$(CPP) -I$(WRF_SRC_ROOT_DIR)/inc -I. $(POUND_DEF)" AR="$(AR_BASE)" )
2782 ( cd $(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 ; \
2783 make FC="$(SFC)" FFLAGS="$(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" AR="$(AR_BASE)" )
2785 # compile these without high optimization to speed compile
2786 convert_nmm.o : convert_nmm.F
2787 init_modules_em.o : init_modules_em.F
2788 input_wrf.o : input_wrf.F
2789 module_io.o : module_io.F
2790 module_comm_dm.o : module_comm_dm.F
2791 module_configure.o : module_configure.F
2792 module_dm.o : module_dm.F
2793 module_domain.o : module_domain.F
2794 module_domain_type.o : module_domain_type.F
2795 module_alloc_space.o : module_alloc_space.F
2796 module_tiles.o : module_tiles.F
2797 module_fddaobs_rtfdda.o : module_fddaobs_rtfdda.F
2798 module_initialize.o : module_initialize.F
2799 module_physics_init.o : module_physics_init.F
2800 module_initialize_b_wave.o : module_initialize_b_wave.F
2801 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
2802 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
2803 module_initialize_real.o : module_initialize_real.F
2804 module_initialize_real.o: module_initialize_real.F
2805 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
2806 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
2807 module_integrate.o : module_integrate.F
2808 module_io_mm5.o : module_io_mm5.F
2809 module_io_wrf.o : module_io_wrf.F
2810 module_si_io.o : module_si_io.F
2811 module_state_description.o : module_state_description.F
2812 output_wrf.o : output_wrf.F
2813 solve_interface.o : solve_interface.F
2814 start_domain.o : start_domain.F
2815 start_domain_nmm.o : start_domain_nmm.F
2816 start_em.o : start_em.F
2817 wrf_auxhist10in.o : wrf_auxhist10in.F
2818 wrf_auxhist10out.o : wrf_auxhist10out.F
2819 wrf_auxhist11in.o : wrf_auxhist11in.F
2820 wrf_auxhist11out.o : wrf_auxhist11out.F
2821 wrf_auxhist1in.o : wrf_auxhist1in.F
2822 wrf_auxhist1out.o : wrf_auxhist1out.F
2823 wrf_auxhist2in.o : wrf_auxhist2in.F
2824 wrf_auxhist2out.o : wrf_auxhist2out.F
2825 wrf_auxhist3in.o : wrf_auxhist3in.F
2826 wrf_auxhist3out.o : wrf_auxhist3out.F
2827 wrf_auxhist4in.o : wrf_auxhist4in.F
2828 wrf_auxhist4out.o : wrf_auxhist4out.F
2829 wrf_auxhist5in.o : wrf_auxhist5in.F
2830 wrf_auxhist5out.o : wrf_auxhist5out.F
2831 wrf_auxhist6in.o : wrf_auxhist6in.F
2832 wrf_auxhist6out.o : wrf_auxhist6out.F
2833 wrf_auxhist7in.o : wrf_auxhist7in.F
2834 wrf_auxhist7out.o : wrf_auxhist7out.F
2835 wrf_auxhist8in.o : wrf_auxhist8in.F
2836 wrf_auxhist8out.o : wrf_auxhist8out.F
2837 wrf_auxhist9in.o : wrf_auxhist9in.F
2838 wrf_auxhist9out.o : wrf_auxhist9out.F
2839 wrf_auxinput10in.o : wrf_auxinput10in.F
2840 wrf_auxinput10out.o : wrf_auxinput10out.F
2841 wrf_auxinput11in.o : wrf_auxinput11in.F
2842 wrf_auxinput11out.o : wrf_auxinput11out.F
2843 wrf_auxinput1in.o : wrf_auxinput1in.F
2844 wrf_auxinput1out.o : wrf_auxinput1out.F
2845 wrf_auxinput2in.o : wrf_auxinput2in.F
2846 wrf_auxinput2out.o : wrf_auxinput2out.F
2847 wrf_auxinput3in.o : wrf_auxinput3in.F
2848 wrf_auxinput3out.o : wrf_auxinput3out.F
2849 wrf_auxinput4in.o : wrf_auxinput4in.F
2850 wrf_auxinput4out.o : wrf_auxinput4out.F
2851 wrf_auxinput5in.o : wrf_auxinput5in.F
2852 wrf_auxinput5out.o : wrf_auxinput5out.F
2853 wrf_auxinput6in.o : wrf_auxinput6in.F
2854 wrf_auxinput6out.o : wrf_auxinput6out.F
2855 wrf_auxinput7in.o : wrf_auxinput7in.F
2856 wrf_auxinput7out.o : wrf_auxinput7out.F
2857 wrf_auxinput8in.o : wrf_auxinput8in.F
2858 wrf_auxinput8out.o : wrf_auxinput8out.F
2859 wrf_auxinput9in.o : wrf_auxinput9in.F
2860 wrf_auxinput9out.o : wrf_auxinput9out.F
2861 wrf_bdyin.o : wrf_bdyin.F
2862 wrf_bdyout.o : wrf_bdyout.F
2863 wrf_ext_read_field.o : wrf_ext_read_field.F
2864 wrf_ext_write_field.o : wrf_ext_write_field.F
2865 wrf_fddaobs_in.o : wrf_fddaobs_in.F
2866 wrf_histin.o : wrf_histin.F
2867 wrf_histout.o : wrf_histout.F
2868 wrf_inputin.o : wrf_inputin.F
2869 wrf_inputout.o : wrf_inputout.F
2870 wrf_restartin.o : wrf_restartin.F
2871 wrf_restartout.o : wrf_restartout.F
2872 wrf_tsin.o : wrf_tsin.F
2873 nl_get_0_routines.o : nl_get_0_routines.F
2874 nl_get_1_routines.o : nl_get_1_routines.F
2875 nl_set_0_routines.o : nl_set_0_routines.F
2876 nl_set_1_routines.o : nl_set_1_routines.F
2882 module_alloc_space.o \
2883 module_fddaobs_rtfdda.o \
2884 module_initialize.o \
2885 module_initialize_b_wave.o \
2886 module_initialize_hill2d_x.o \
2887 module_initialize_quarter_ss.o \
2888 module_initialize_real.o \
2889 module_initialize_squall2d_x.o \
2890 module_initialize_squall2d_y.o \
2891 module_integrate.o \
2899 start_domain_nmm.o \
2904 $(SED_FTN) $*.F > $*.b
2905 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $(OMPCPP) $*.b > $*.f90
2907 $(FC) -c $(PROMOTION) $(FCNOOPT) $(FCBASEOPTS) $(MODULE_DIRS) $(OMP) $*.f90
2909 # compile without OMP
2912 module_domain_type.o \
2913 module_physics_init.o \
2916 wrf_auxhist10out.o \
2918 wrf_auxhist11out.o \
2937 wrf_auxinput10in.o \
2938 wrf_auxinput10out.o \
2939 wrf_auxinput11in.o \
2940 wrf_auxinput11out.o \
2942 wrf_auxinput1out.o \
2944 wrf_auxinput2out.o \
2946 wrf_auxinput3out.o \
2948 wrf_auxinput4out.o \
2950 wrf_auxinput5out.o \
2952 wrf_auxinput6out.o \
2954 wrf_auxinput7out.o \
2956 wrf_auxinput8out.o \
2958 wrf_auxinput9out.o \
2961 wrf_ext_read_field.o \
2962 wrf_ext_write_field.o \
2969 module_state_description.o \
2970 nl_set_0_routines.o \
2971 nl_set_1_routines.o \
2972 nl_get_0_routines.o \
2973 nl_get_1_routines.o \
2974 module_configure.o :
2976 $(SED_FTN) $*.F > $*.b
2977 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $(OMPCPP) $*.b > $*.f90
2979 $(FC) -c $(PROMOTION) $(FCSUFFIX) $(FCNOOPT) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90
2982 ###########################################################
2983 #ARCH NEC SX-8, NEC SX cross compiler DM-Parallel (RSL_LITE, Allows nesting)
2985 # Notes: for experimental implementation of moving nests, add -DMOVE_NESTS to ARCHFLAGS
2986 # for experimental implementation of vortex tracking nests, add -DMOVE_NESTS -DVORTEX_CENTER to ARCHFLAGS
2996 RWORDSIZE = CONFIGURE_RWORDSIZE
2998 CFLAGS = -DNCARIBM_NOC99 -DDM_PARALLEL \
2999 -DMAXDOM_MAKE=$(MAX_DOMAINS) -DMAXPROC_MAKE=$(MAX_PROC) -I$(WRF_SRC_ROOT_DIR)/external/RSL_LITE \
3004 FCBASEOPTS = -Wf,-L fmtlist transform,-pvctl fullmsg loopcnt=1000000 -f4 -Wf,-P i
3005 FCFLAGS = $(FCOPTIM) $(FCBASEOPTS) $(OMP)
3006 ARCHFLAGS = $(COREDEFS) -DGRIB1 -DINTIO -DDM_PARALLEL \
3007 -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4 CONFIGURE_NETCDF_FLAG \
3010 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
3012 ESMF_IO_LIB = ESMFIOLIB
3013 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
3014 INCLUDE_MODULES = -I$(WRF_SRC_ROOT_DIR)/main -I$(WRF_SRC_ROOT_DIR)/external/io_netcdf -I$(WRF_SRC_ROOT_DIR)/external/io_int -I$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 \
3015 -I$(WRF_SRC_ROOT_DIR)/external -I$(WRF_SRC_ROOT_DIR)/frame -I$(WRF_SRC_ROOT_DIR)/share -I$(WRF_SRC_ROOT_DIR)/phys -I$(WRF_SRC_ROOT_DIR)/chem -I$(WRF_SRC_ROOT_DIR)/inc
3018 LIB = CONFIGURE_NETCDF_LIB_PATH -L$(WRF_SRC_ROOT_DIR)/external/RSL_LITE -lrsl_lite \
3019 -L$(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 -lfftpack \
3020 -L$(WRF_SRC_ROOT_DIR)/external/io_grib1 -lio_grib1 \
3021 -L$(WRF_SRC_ROOT_DIR)/external/io_grib_share -lio_grib_share \
3022 -L$(WRF_SRC_ROOT_DIR)/external/io_int -lwrfio_int \
3023 $(WRF_SRC_ROOT_DIR)/frame/module_internal_header_util.o $(WRF_SRC_ROOT_DIR)/frame/pack_utils.o -L$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 -lesmf_time
3024 LDFLAGS = $(FCFLAGS) -Wl,-h nodefs CONFIGURE_LDFLAGS
3025 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
3026 CPP = /lib/cpp -C -P -traditional
3027 POUND_DEF = -DNO_RRTM_PHYSICS -traditional $(COREDEFS) -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS)
3028 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) -I$(WRF_SRC_ROOT_DIR)/external/RSL_LITE -C -P `cat $(WRF_SRC_ROOT_DIR)/inc/dm_comm_cpp_flags` $(ENVCOMPDEFS) $(POUND_DEF) -DNEC
3030 # it may be necessary to uncomment out the ru if ARFLAGS is not automatically defined to ru or rv in your installation's version of make
3031 AR = $(AR_BASE) # ru
3034 NETCDFPATH = CONFIGURE_NETCDF_PATH
3036 SED_FTN = $(WRF_SRC_ROOT_DIR)/tools/standard.exe
3038 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib1 wrfio_grib_share $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/librsl_lite.a wrfio_int gen_comms.c module_dm.F esmf_time fftpack
3040 gen_comms.c : $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/gen_comms.c
3041 ( /bin/cp $(WRF_SRC_ROOT_DIR)/tools/gen_comms_warning $(WRF_SRC_ROOT_DIR)/tools/gen_comms.c ; \
3042 cat $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/gen_comms.c >> $(WRF_SRC_ROOT_DIR)/tools/gen_comms.c )
3044 module_dm.F : $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/module_dm.F
3045 ( /bin/cp module_dm_warning module_dm.F ; cat $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/module_dm.F >> module_dm.F )
3048 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib_share ; \
3049 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" AR="$(AR_BASE)" archive)
3052 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib1 ; \
3053 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" AR="$(AR_BASE)" archive)
3056 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib2 ; \
3057 make CC="$(SCC)" CFLAGS="$(CFLAGS) " RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" AR="$(AR_BASE)" archive)
3060 ( cd $(WRF_SRC_ROOT_DIR)/external/io_netcdf ; \
3061 make NETCDFPATH="$(NETCDFPATH)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCFLAGS) -w" TRADFLAG="-traditional" AR="$(AR_BASE)" )
3064 ( cd $(WRF_SRC_ROOT_DIR)/external/io_int ; \
3065 make CC="$(CC)" RANLIB="$(RANLIB)" CPP="$(CPP)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" AR="$(AR_BASE)" all )
3068 ( cd $(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 ; \
3069 make FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" CPP="$(CPP) -I$(WRF_SRC_ROOT_DIR)/inc -I. $(POUND_DEF)" AR="$(AR_BASE)" )
3072 ( cd $(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 ; \
3073 make FC="$(SFC)" FFLAGS="$(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" AR="$(AR_BASE)" )
3075 $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/librsl_lite.a :
3076 ( cd $(WRF_SRC_ROOT_DIR)/external/RSL_LITE ; make CPP="$(CPP) $(CPPFLAGS)" CC="$(CC)" FC="$(FC) $(PROMOTION) $(FCBASEOPTS)" MAX_DOMAINS=$(MAX_DOMAINS) MAX_PROC=$(MAX_PROC) LEARN_BCAST=-DLEARN_BCAST AR="$(AR_BASE)" )
3078 # compile these without high optimization to speed compile
3079 convert_nmm.o : convert_nmm.F
3080 init_modules_em.o : init_modules_em.F
3081 input_wrf.o : input_wrf.F
3082 module_io.o : module_io.F
3083 module_comm_dm.o : module_comm_dm.F
3084 module_configure.o : module_configure.F
3085 module_dm.o : module_dm.F
3086 module_domain.o : module_domain.F
3087 module_domain_type.o : module_domain_type.F
3088 module_alloc_space.o : module_alloc_space.F
3089 module_tiles.o : module_tiles.F
3090 module_fddaobs_rtfdda.o : module_fddaobs_rtfdda.F
3091 module_initialize.o : module_initialize.F
3092 module_physics_init.o : module_physics_init.F
3093 module_initialize_b_wave.o : module_initialize_b_wave.F
3094 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
3095 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
3096 module_initialize_real.o : module_initialize_real.F
3097 module_initialize_real.o: module_initialize_real.F
3098 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
3099 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
3100 module_integrate.o : module_integrate.F
3101 module_io_mm5.o : module_io_mm5.F
3102 module_io_wrf.o : module_io_wrf.F
3103 module_si_io.o : module_si_io.F
3104 module_state_description.o : module_state_description.F
3105 output_wrf.o : output_wrf.F
3106 solve_interface.o : solve_interface.F
3107 start_domain.o : start_domain.F
3108 start_domain_nmm.o : start_domain_nmm.F
3109 start_em.o : start_em.F
3110 wrf_auxhist10in.o : wrf_auxhist10in.F
3111 wrf_auxhist10out.o : wrf_auxhist10out.F
3112 wrf_auxhist11in.o : wrf_auxhist11in.F
3113 wrf_auxhist11out.o : wrf_auxhist11out.F
3114 wrf_auxhist1in.o : wrf_auxhist1in.F
3115 wrf_auxhist1out.o : wrf_auxhist1out.F
3116 wrf_auxhist2in.o : wrf_auxhist2in.F
3117 wrf_auxhist2out.o : wrf_auxhist2out.F
3118 wrf_auxhist3in.o : wrf_auxhist3in.F
3119 wrf_auxhist3out.o : wrf_auxhist3out.F
3120 wrf_auxhist4in.o : wrf_auxhist4in.F
3121 wrf_auxhist4out.o : wrf_auxhist4out.F
3122 wrf_auxhist5in.o : wrf_auxhist5in.F
3123 wrf_auxhist5out.o : wrf_auxhist5out.F
3124 wrf_auxhist6in.o : wrf_auxhist6in.F
3125 wrf_auxhist6out.o : wrf_auxhist6out.F
3126 wrf_auxhist7in.o : wrf_auxhist7in.F
3127 wrf_auxhist7out.o : wrf_auxhist7out.F
3128 wrf_auxhist8in.o : wrf_auxhist8in.F
3129 wrf_auxhist8out.o : wrf_auxhist8out.F
3130 wrf_auxhist9in.o : wrf_auxhist9in.F
3131 wrf_auxhist9out.o : wrf_auxhist9out.F
3132 wrf_auxinput10in.o : wrf_auxinput10in.F
3133 wrf_auxinput10out.o : wrf_auxinput10out.F
3134 wrf_auxinput11in.o : wrf_auxinput11in.F
3135 wrf_auxinput11out.o : wrf_auxinput11out.F
3136 wrf_auxinput1in.o : wrf_auxinput1in.F
3137 wrf_auxinput1out.o : wrf_auxinput1out.F
3138 wrf_auxinput2in.o : wrf_auxinput2in.F
3139 wrf_auxinput2out.o : wrf_auxinput2out.F
3140 wrf_auxinput3in.o : wrf_auxinput3in.F
3141 wrf_auxinput3out.o : wrf_auxinput3out.F
3142 wrf_auxinput4in.o : wrf_auxinput4in.F
3143 wrf_auxinput4out.o : wrf_auxinput4out.F
3144 wrf_auxinput5in.o : wrf_auxinput5in.F
3145 wrf_auxinput5out.o : wrf_auxinput5out.F
3146 wrf_auxinput6in.o : wrf_auxinput6in.F
3147 wrf_auxinput6out.o : wrf_auxinput6out.F
3148 wrf_auxinput7in.o : wrf_auxinput7in.F
3149 wrf_auxinput7out.o : wrf_auxinput7out.F
3150 wrf_auxinput8in.o : wrf_auxinput8in.F
3151 wrf_auxinput8out.o : wrf_auxinput8out.F
3152 wrf_auxinput9in.o : wrf_auxinput9in.F
3153 wrf_auxinput9out.o : wrf_auxinput9out.F
3154 wrf_bdyin.o : wrf_bdyin.F
3155 wrf_bdyout.o : wrf_bdyout.F
3156 wrf_ext_read_field.o : wrf_ext_read_field.F
3157 wrf_ext_write_field.o : wrf_ext_write_field.F
3158 wrf_fddaobs_in.o : wrf_fddaobs_in.F
3159 wrf_histin.o : wrf_histin.F
3160 wrf_histout.o : wrf_histout.F
3161 wrf_inputin.o : wrf_inputin.F
3162 wrf_inputout.o : wrf_inputout.F
3163 wrf_restartin.o : wrf_restartin.F
3164 wrf_restartout.o : wrf_restartout.F
3165 wrf_tsin.o : wrf_tsin.F
3166 nl_get_0_routines.o : nl_get_0_routines.F
3167 nl_get_1_routines.o : nl_get_1_routines.F
3168 nl_set_0_routines.o : nl_set_0_routines.F
3169 nl_set_1_routines.o : nl_set_1_routines.F
3175 module_alloc_space.o \
3176 module_fddaobs_rtfdda.o \
3177 module_initialize.o \
3178 module_initialize_b_wave.o \
3179 module_initialize_hill2d_x.o \
3180 module_initialize_quarter_ss.o \
3181 module_initialize_real.o \
3182 module_initialize_squall2d_x.o \
3183 module_initialize_squall2d_y.o \
3184 module_integrate.o \
3192 start_domain_nmm.o \
3197 $(SED_FTN) $*.F > $*.b
3198 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $(OMPCPP) $*.b > $*.f90
3200 $(FC) -c $(PROMOTION) $(FCNOOPT) $(FCBASEOPTS) $(MODULE_DIRS) $(OMP) $*.f90
3202 # compile without OMP
3205 module_domain_type.o \
3206 module_physics_init.o \
3209 wrf_auxhist10out.o \
3211 wrf_auxhist11out.o \
3230 wrf_auxinput10in.o \
3231 wrf_auxinput10out.o \
3232 wrf_auxinput11in.o \
3233 wrf_auxinput11out.o \
3235 wrf_auxinput1out.o \
3237 wrf_auxinput2out.o \
3239 wrf_auxinput3out.o \
3241 wrf_auxinput4out.o \
3243 wrf_auxinput5out.o \
3245 wrf_auxinput6out.o \
3247 wrf_auxinput7out.o \
3249 wrf_auxinput8out.o \
3251 wrf_auxinput9out.o \
3254 wrf_ext_read_field.o \
3255 wrf_ext_write_field.o \
3262 module_state_description.o \
3263 nl_set_0_routines.o \
3264 nl_set_1_routines.o \
3265 nl_get_0_routines.o \
3266 nl_get_1_routines.o \
3267 module_configure.o :
3269 $(SED_FTN) $*.F > $*.b
3270 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $(OMPCPP) $*.b > $*.f90
3272 $(FC) -c $(PROMOTION) $(FCSUFFIX) $(FCNOOPT) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90
3276 ###########################################################
3277 #ARCH CYGWIN_NT-5.1 Cygwin i486 i586 i686, g95 compiler (Single-threaded, no nesting)
3283 RWORDSIZE = CONFIGURE_RWORDSIZE
3285 # g95 does not like -r8. if you want -r8, just add it to PROMOTION below
3286 #PROMOTION = -r$(RWORDSIZE) -i4
3291 FCBASEOPTS = -Wno=101,139,155,158 -fno-second-underscore -fendian=big -ffree-form $(FCDEBUG) # -Mlfs
3292 FCFLAGS = $(FCOPTIM) $(FCBASEOPTS)
3293 ARCHFLAGS = $(COREDEFS) -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4 \
3295 CONFIGURE_NETCDF_FLAG -DGRIB1 CONFIGURE_GRIB2_FLAG \
3297 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
3299 ESMF_IO_LIB = ESMFIOLIB
3300 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
3301 INCLUDE_MODULES = -fmod=$(WRF_SRC_ROOT_DIR)/main -I$(WRF_SRC_ROOT_DIR)/external/io_netcdf -I$(WRF_SRC_ROOT_DIR)/external/io_int -I$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 \
3302 -I$(WRF_SRC_ROOT_DIR)/frame -I$(WRF_SRC_ROOT_DIR)/share -I$(WRF_SRC_ROOT_DIR)/phys -I$(WRF_SRC_ROOT_DIR)/chem -I$(WRF_SRC_ROOT_DIR)/inc
3305 LIB = CONFIGURE_NETCDF_LIB_PATH \
3306 -L$(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 -lfftpack \
3307 -L$(WRF_SRC_ROOT_DIR)/external/io_grib1 -lio_grib1 \
3308 CONFIGURE_GRIB2_LIB \
3309 -L$(WRF_SRC_ROOT_DIR)/external/io_grib_share -lio_grib_share \
3310 $(WRF_SRC_ROOT_DIR)/frame/module_internal_header_util.o $(WRF_SRC_ROOT_DIR)/frame/pack_utils.o -L$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 -lesmf_time
3311 LDFLAGS = $(FCFLAGS) CONFIGURE_LDFLAGS
3312 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
3313 CPP = cpp -C -P -traditional
3314 POUND_DEF = $(COREDEFS) -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS)
3315 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) $(ENVCOMPDEFS) $(POUND_DEF)
3319 NETCDFPATH = CONFIGURE_NETCDF_PATH
3322 #### Override default sed command and script for Fortran source files ####
3323 #### This sed script does not pass __FILE__ and __LINE__ to wrf_error_fatal() ####
3324 #### because the Fortran compiler complains about long source lines. ####
3325 SED_FTN = sed -f $(WRF_SRC_ROOT_DIR)/arch/no_file_line.sed
3327 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 wrfio_int module_dm.F esmf_time fftpack
3330 ( /bin/cp module_dm_warning module_dm.F ; cat module_dm_stubs.F >> module_dm.F )
3333 ( cd $(WRF_SRC_ROOT_DIR)/external/io_netcdf ; \
3334 make NETCDFPATH=CONFIGURE_NETCDF_PATH RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(FC) $(PROMOTION) $(FCFLAGS) -w" TRADFLAG="-traditional" )
3337 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib_share ; \
3338 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" archive)
3341 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib1 ; \
3342 make CC="$(SCC)" CFLAGS="$(CFLAGS)" RANLIB="$(RANLIB)" CPP="$(CPP)" FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" archive )
3345 ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib2 ; \
3346 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 )
3350 ( cd $(WRF_SRC_ROOT_DIR)/external/io_int ; \
3351 make CC="$(CC)" RANLIB="$(RANLIB)" CPP="$(CPP)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS) -w" \
3352 TRADFLAG="-traditional" all )
3355 ( cd $(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 ; \
3356 make FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" CPP="$(CPP) -I$(WRF_SRC_ROOT_DIR)/inc -I. $(POUND_DEF)" )
3359 ( cd $(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 ; \
3360 make FC="$(SFC)" FFLAGS="$(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" )
3362 # compile these without high optimization to speed compile
3363 solve_interface.o : solve_interface.F
3364 shift_domain_em.o : shift_domain_em.F
3365 module_io_mm5.o : module_io_mm5.F
3366 module_si_io.o : module_si_io.F
3367 module_io_wrf.o : module_io_wrf.F
3368 module_domain.o : module_domain.F
3369 module_start.o : module_start.F
3370 module_initialize.o : module_initialize.F
3371 module_initialize_b_wave.o : module_initialize_b_wave.F
3372 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
3373 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
3374 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
3375 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
3376 module_initialize_real.o : module_initialize_real.F
3377 module_dm.o : module_dm.F
3378 module_comm_dm.o : module_comm_dm.F
3379 start_domain.o : start_domain.F
3380 mediation_integrate.o : mediation_integrate.F
3381 module_configure.o : module_configure.F
3385 module_io_mm5.o module_si_io.o module_io_wrf.o module_domain.o \
3386 module_start.o module_initialize.o module_initialize_b_wave.o \
3387 module_initialize_hill2d_x.o module_initialize_quarter_ss.o \
3388 module_initialize_squall2d_x.o module_initialize_squall2d_y.o \
3389 mediation_integrate.o \
3390 module_configure.o \
3391 module_initialize_real.o module_dm.o module_comm_dm.o start_domain.o :
3393 $(SED_FTN) $*.F > $*.b
3394 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b > $*.f90
3396 $(FC) -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90
3399 ###########################################################
3400 #ARCH PC Interix x86_64 (IA64 and Opteron), PGI 5.2 or higher DM-Parallel (RSL_LITE, MPICH, Allows nesting)
3401 # Note that for 5.1.x comment out -Mpia=fast
3403 # Notes: for experimental implementation of moving nests, add -DMOVE_NESTS to ARCHFLAGS
3404 # for experimental implementation of vortex tracking nests, add -DMOVE_NESTS -DVORTEX_CENTER to ARCHFLAGS
3415 MPdir = /dev/fs/C/Program Files/Microsoft Compute Cluster Pack
3416 MPinc = -I'$(MPdir)'/Include
3417 MSMPdir = 'C:\Program Files\Microsoft Compute Cluster Pack'
3418 MSMPinc = /I'C:\Program Files\Microsoft Compute Cluster Pack\Include'
3419 MSMPlib = 'C:\Program Files\Microsoft Compute Cluster Pack\Lib\AMD64\msmpi.lib'
3421 RWORDSIZE = CONFIGURE_RWORDSIZE
3422 PROMOTION = -r$(RWORDSIZE) -i4
3424 CFLAGS = -DLANDREAD_STUB -DMEMCPY_FOR_BCOPY -DMS_SUA -DDM_PARALLEL \
3425 -I$(WRF_SRC_ROOT_DIR)/external/RSL_LITE $(MPinc) #-X /MD
3426 FCOPTIM = -fastsse #-Mipa=fast
3428 #FCBASEOPTS = -w -byteswapio -Ktrap=fp -Mfree $(FCDEBUG)
3429 FCBASEOPTS = -w -byteswapio -Mfree $(FCDEBUG)
3430 FCFLAGS = $(FCOPTIM) $(FCBASEOPTS) $(MPinc)
3432 ARCHFLAGS = $(COREDEFS) \
3434 -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4 \
3437 -DNO_NAMELIST_PRINT \
3438 -DLIMIT_ARGS -DLANDREAD_STUB -DNMM_NEST=$(WRF_NMM_NEST) -DMEMCPY_FOR_BCOPY
3440 # machine-specific flags needed to link in ESMF library (C++ run-time-library, etc.)
3442 ESMF_IO_LIB = ESMFIOLIB
3443 ESMF_IO_LIB_EXT = ESMFIOEXTLIB
3444 INCLUDE_MODULES = -module $(WRF_SRC_ROOT_DIR)/main -I$(WRF_SRC_ROOT_DIR)/external/io_netcdf -I$(WRF_SRC_ROOT_DIR)/external/io_int -I$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 \
3445 -I$(WRF_SRC_ROOT_DIR)/external -I$(WRF_SRC_ROOT_DIR)/frame -I$(WRF_SRC_ROOT_DIR)/share -I$(WRF_SRC_ROOT_DIR)/phys -I$(WRF_SRC_ROOT_DIR)/inc -I$(WRF_SRC_ROOT_DIR)/chem
3449 LIB = CONFIGURE_NETCDF_LIB_PATH \
3450 $(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5/libfftpack.a \
3451 $(WRF_SRC_ROOT_DIR)/external/io_int/libwrfio_int.a \
3452 $(WRF_SRC_ROOT_DIR)/frame/module_internal_header_util.o $(WRF_SRC_ROOT_DIR)/frame/pack_utils.o \
3453 $(WRF_SRC_ROOT_DIR)/external/esmf_time_f90/libesmf_time.a \
3454 $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/librsl_lite.a $(MSMPlib) \
3455 "c:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Lib\AMD64\bufferoverflowu.lib"
3457 LDFLAGS = -byteswapio CONFIGURE_LDFLAGS
3458 ENVCOMPDEFS = CONFIGURE_COMPILEFLAGS
3459 CPP = /lib/cpp -C -P -traditional
3460 POUND_DEF = -DNO_RRTM_PHYSICS -traditional $(COREDEFS) -DNONSTANDARD_SYSTEM -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) -DMAX_DOMAINS_F=$(MAX_DOMAINS)
3461 CPPFLAGS = -I$(LIBINCLUDE) -C -P $(ARCHFLAGS) -I$(WRF_SRC_ROOT_DIR)/external/RSL_LITE -C -P $(ENVCOMPDEFS) $(POUND_DEF)
3465 NETCDFPATH = CONFIGURE_NETCDF_PATH
3467 LIBWRFLIB = libwrflib.a
3469 externals : wrf_ioapi_includes CONFIGURE_WRFIO_NF wrfio_grib_share wrfio_grib1 CONFIGURE_WRFIO_GRIB2 $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/librsl_lite.a wrfio_int gen_comms.c module_dm.F esmf_time fftpack
3471 gen_comms.c : $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/gen_comms.c
3472 ( /bin/cp $(WRF_SRC_ROOT_DIR)/tools/gen_comms_warning $(WRF_SRC_ROOT_DIR)/tools/gen_comms.c ; \
3473 cat $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/gen_comms.c >> $(WRF_SRC_ROOT_DIR)/tools/gen_comms.c )
3475 module_dm.F : $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/module_dm.F
3476 ( /bin/cp module_dm_warning module_dm.F ; cat $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/module_dm.F >> module_dm.F )
3479 ( cd $(WRF_SRC_ROOT_DIR)/external/io_netcdf ; \
3480 make LIBS="libwrfio_nf.a 'CONFIGURE_NETCDF_PATH' 'c:\Program Files\Microsoft Platform SDK\Lib\AMD64\bufferoverflowu.lib'" \
3481 NETCDFPATH=CONFIGURE_NETCDF_PATH \
3482 RANLIB="$(RANLIB)" CPP="$(CPP) -DMS_SUA" \
3483 CPP1="$(CPP) -DMS_SUA" \
3484 FC="$(FC) $(PROMOTION) $(FCFLAGS) -w" TRADFLAG="-traditional" )
3493 ( cd $(WRF_SRC_ROOT_DIR)/external/io_int ; \
3494 make CC="$(CC)" RANLIB="$(RANLIB)" CPP="$(CPP)" SFC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS) -w" TRADFLAG="-traditional" all )
3497 ( cd $(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 ; \
3498 make FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" CPP="$(CPP) -I$(WRF_SRC_ROOT_DIR)/inc -I. $(POUND_DEF)" )
3501 ( cd $(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 ; \
3502 make FC="$(SFC)" FFLAGS="$(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" )
3504 $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/librsl_lite.a :
3505 ( cd $(WRF_SRC_ROOT_DIR)/external/RSL_LITE ; \
3506 /bin/sed -e '/MPI_ADDRESS_KIND=4/d' -e '/DEC\$$/d' '$(MPdir)'/Include/mpif.h > mpif.h ; \
3507 make CPP="$(CPP) $(CPPFLAGS)" CC="$(CC)" CFLAGS="$(CFLAGS)" FC="$(FC) $(PROMOTION) $(FCFLAGS) -byteswapio" MAX_DOMAINS=$(MAX_DOMAINS) MAX_PROC=$(MAX_PROC) )
3509 # compile these without high optimization to speed compile
3510 solve_interface.o : solve_interface.F
3511 shift_domain_em.o : shift_domain_em.F
3512 module_io_mm5.o : module_io_mm5.F
3513 module_si_io.o : module_si_io.F
3514 module_io_wrf.o : module_io_wrf.F
3515 module_domain.o : module_domain.F
3516 module_start.o : module_start.F
3517 module_initialize.o : module_initialize.F
3518 module_initialize_b_wave.o : module_initialize_b_wave.F
3519 module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
3520 module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
3521 module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
3522 module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
3523 module_initialize_real.o : module_initialize_real.F
3524 module_dm.o : module_dm.F
3525 module_comm_dm.o : module_comm_dm.F
3526 start_domain.o : start_domain.F
3527 mediation_integrate.o : mediation_integrate.F
3528 module_configure.o : module_configure.F
3532 module_io_mm5.o module_si_io.o module_io_wrf.o module_domain.o \
3533 module_start.o module_initialize.o module_initialize_b_wave.o \
3534 module_initialize_hill2d_x.o module_initialize_quarter_ss.o \
3535 module_initialize_squall2d_x.o module_initialize_squall2d_y.o \
3536 mediation_integrate.o \
3537 module_configure.o \
3538 module_initialize_real.o module_dm.o module_comm_dm.o start_domain.o :
3540 $(SED_FTN) $*.F > $*.b
3541 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b > $*.f90
3543 $(FC) -o $*.o -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90
3545 module_io.o : module_io.F
3546 module_dm.o : module_dm.F
3548 module_io.o module_dm.o :
3550 $(SED_FTN) $*.F > $*.b
3551 $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b > $*.f90
3553 /bin/sed -e '/MPI_ADDRESS_KIND=4/d' -e '/DEC\$$/d' '$(MPdir)'/Include/mpif.h > mpif.h
3554 $(FC) -o $*.o -c $(PROMOTION) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90
3557 ##################################################################