source: trunk/MESOSCALE/LMD_MM_MARS/SIMU/MESORUN_generic/lesmpifort_64.configure.wrf.noioipsl

Last change on this file was 2275, checked in by aslmd, 5 years ago

MESOSCALE-GENERIC
A new simple method to compile


  1. Compile physics as library
  2. Tweak configure.wrf
  3. Compile WRF with physics lib

A standalone folder with
install.sh and working test case
is provided in the case of
LES+generic with ifort on ciclad


Other configurations can easily be added
(and shall be committed)

  • adapt install.sh
  • create xxx.configure (WRF configure options)
  • create xxx.patch (tweaking of configure.wrf)
  • create xxx.compile (makemeso inputs)

TBD: merge install.sh and makemeso
into a simpler makemeso 2.0

File size: 20.8 KB
Line 
1# configure.wrf
2#
3# This file was automatically generated by the configure script in the
4# top level directory. You may make changes to the settings in this
5# file but be aware they will be overwritten each time you run configure.
6# Ordinarily, it is necessary to run configure once, when the code is
7# first installed.
8#
9# To permanently change options, change the settings for your platform
10# in the file arch/configure.defaults then rerun configure.
11#
12SHELL           =       /bin/sh
13DEVTOP          =       `pwd`
14LIBINCLUDE      =       .
15.SUFFIXES: .F .i .o .f90 .c
16
17#### Get core settings from environment (set in compile script)
18#### Note to add a core, this has to be added to.
19
20COREDEFS = -DEM_CORE=$(WRF_EM_CORE) \
21           -DNMM_CORE=$(WRF_NMM_CORE) -DNMM_MAX_DIM=2600 \
22           -DCOAMPS_CORE=$(WRF_COAMPS_CORE) \
23           -DDA_CORE=$(WRF_DA_CORE) \
24           -DEXP_CORE=$(WRF_EXP_CORE)
25
26#### Single location for defining total number of domains.  You need
27#### at least 1 + 2*(number of total nests).  For example, 1 coarse
28#### grid + three fine grids = 1 + 2(3) = 7, so MAX_DOMAINS=7.
29
30MAX_DOMAINS     =       21
31
32#### DM buffer length for the configuration flags.
33
34CONFIG_BUF_LEN  =       32768
35
36
37##############################################################################
38#### The settings in this section are defaults that may be overridden by the
39#### architecture-specific settings in the next section. 
40##############################################################################
41
42##############################################################################
43#### NOTE:  Do not modify these default values here.  To override these
44####        values, make changes after "Architecture specific settings". 
45##############################################################################
46
47#### Native size (in bytes) of Fortran REAL data type on this architecture ####
48#### Note:  to change real wordsize (for example, to promote REALs from
49####        4-byte to 8-byte), modify the definition of RWORDSIZE in the
50####        section following "Architecture specific settings".  Do not
51####        change NATIVE_RWORDSIZE as is it architecture-specific. 
52NATIVE_RWORDSIZE = 4
53
54#### Default sed command and script for Fortran source files ####
55#SED_FTN = sed -f $(WRF_SRC_ROOT_DIR)/arch/standard.sed
56SED_FTN = $(WRF_SRC_ROOT_DIR)/tools/standard.exe
57
58# Hack to work around $(PWD) not changing during OSF1 build. 
59# $(IO_GRIB_SHARE_DIR) is reset during the OSF1 build only. 
60IO_GRIB_SHARE_DIR =
61
62#### ESMF switches                 ####
63#### These are set up by Config.pl ####
64# switch to use separately installed ESMF library for coupling:  1==true
65ESMF_COUPLING       = 0
66# select dependences on module_utility.o
67ESMF_MOD_DEPENDENCE = $(WRF_SRC_ROOT_DIR)/external/esmf_time_f90/module_utility.o
68# select -I options for external/io_esmf vs. external/esmf_time_f90
69ESMF_IO_INC         = -I$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90
70# select -I options for separately installed ESMF library, if present
71ESMF_MOD_INC        =  $(ESMF_IO_INC)
72# select cpp token for external/io_esmf vs. external/esmf_time_f90
73ESMF_IO_DEFS        =
74# select build target for external/io_esmf vs. external/esmf_time_f90
75ESMF_TARGET         = esmf_time
76
77##############################################################################
78
79LIBWRFLIB = libwrflib.a
80
81
82#### Architecture specific settings ####
83
84# To enable over-decompostion with dmpar and dm+sm compiles,
85# add -DALLOW_OVERDECOMP to ARCH_LOCAL, below. (not recommended)
86
87# Settings for Linux x86_64 i486 i586 i686, ifort compiler with icc  (dmpar)
88#
89#        By default, some files are compiled without optimizations to speed up compilation. Removing
90#        respective makefile rules in the end of this file will result in longer compilation time, and, possibly
91#        Out Of Memory messages, but might produce binaries which are substantially faster.
92#
93#        Please visit http://www.intel.com/support/performancetools/sb/cs-028607.htm
94#        for latest info on how to build WRF with Intel compilers.
95#
96#        If you got Out Of Memory message, there are several options:
97#          1. Check your memory limits (ulimit -a), possibly increasing swap partitions size.
98#          2. Remove any debugging flags (-g, -check, -traceback).
99#          3. Force the problematic file to be compiled with less optimizations (see examples at the
100#             end of this file), try -no-ip compiler flag.
101#
102#        This configuration is aimed at accuracy. To improve performance (at the expence of accuracy) you might
103#        consider removing '-fp-model precise' flag from FCBASEOPTS. This enables non value-safe optimizations.
104#        Another option is to add '-ftz' flag, which flushes denormal results to zero when the application is in
105#        the gradual underflow mode. It may improve performance if the denormal values are not critical to the
106#        behavior of your workload. To further improve performance, add suitable vectorization options for your
107#        processor to FCOPTIM (see ifort manpage).
108#
109#        If you have Intel MPI installed and wish to use instead, make the
110#        following changes to settings below:
111#        DM_FC  = mpiifort
112#        DM_CC  = mpiicc
113#        and source bin64/mpivars.sh file from your Intel MPI installation
114#        before the build.
115
116DMPARALLEL      =        1
117OMPCPP          =       # -D_OPENMP
118OMP             =       # -openmp -fpp -auto
119SFC             =       ifort
120SCC             =       icc
121DM_FC           =       /usr/lib64/openmpi/1.6.5-ifort/bin//mpif90 -f90=$(SFC)
122DM_CC           =       /usr/lib64/openmpi/1.6.5-ifort/bin//mpicc -DMPI2_SUPPORT -cc=$(SCC) -DMPI2_SUPPORT
123FC              =        $(DM_FC)
124CC              =       $(DM_CC) -DFSEEKO64_OK
125LD              =       $(FC)
126RWORDSIZE       =       8 #$(NATIVE_RWORDSIZE)
127PROMOTION       =       -i4 -real-size 64
128ARCH_LOCAL      =       -DNEWPHYS -DNONSTANDARD_SYSTEM_FUNC
129CFLAGS_LOCAL    =       -w -O3 -mcmodel=large -shared-intel -ip
130LDFLAGS_LOCAL   =       -ip
131CPLUSPLUSLIB    =       
132ESMF_LDFLAG     =       $(CPLUSPLUSLIB)
133FCOPTIM         =       -O3 -mcmodel=large -shared-intel
134FCREDUCEDOPT    =       $(FCOPTIM)
135FCNOOPT         =       -O0
136FCDEBUG         =       # -g $(FCNOOPT) -traceback
137FORMAT_FIXED    =       -FI
138FORMAT_FREE     =       -FR
139FCSUFFIX        =
140BYTESWAPIO      =       -convert big_endian
141FCBASEOPTS      =       -w -ftz -align all -fno-alias -fp-model precise $(FCDEBUG) $(FORMAT_FREE) $(BYTESWAPIO)
142MODULE_SRCH_FLAG =     
143TRADFLAG        =      -traditional
144CPP             =      /lib/cpp  -P
145AR              =      ar
146ARFLAGS         =      ru
147M4              =      m4
148RANLIB          =      ranlib
149CC_TOOLS        =      $(SCC)
150
151###########################################################
152######################
153
154ARCHFLAGS       =    $(COREDEFS) -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=4 \
155                     $(ARCH_LOCAL) \
156                     $(DA_ARCHFLAGS) \
157                      -DDM_PARALLEL \
158                       \
159                      -DNETCDF \
160                       \
161                       \
162                       \
163                       \
164                       \
165                       \
166                      -DGRIB1 \
167                      -DINTIO \
168                      -DLIMIT_ARGS \
169                      -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) \
170                      -DMAX_DOMAINS_F=$(MAX_DOMAINS) \
171                      -DNMM_NEST=$(WRF_NMM_NEST)
172CFLAGS          =    $(CFLAGS_LOCAL) -DDM_PARALLEL
173FCFLAGS         =    $(FCOPTIM) $(FCBASEOPTS) $(OMP)
174ESMF_LIB_FLAGS  =   
175ESMF_IO_LIB     =    $(WRF_SRC_ROOT_DIR)/external/esmf_time_f90/libesmf_time.a
176ESMF_IO_LIB_EXT =    -L$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90/libesmf_time.a
177INCLUDE_MODULES =    $(MODULE_SRCH_FLAG) \
178                     $(ESMF_MOD_INC) $(ESMF_LIB_FLAGS) \
179                      -I$(WRF_SRC_ROOT_DIR)/main \
180                      -I$(WRF_SRC_ROOT_DIR)/external/io_netcdf \
181                      -I$(WRF_SRC_ROOT_DIR)/external/io_int \
182                      -I$(WRF_SRC_ROOT_DIR)/frame \
183                      -I$(WRF_SRC_ROOT_DIR)/share \
184                      -I$(WRF_SRC_ROOT_DIR)/phys \
185                      -I$(WRF_SRC_ROOT_DIR)/chem -I$(WRF_SRC_ROOT_DIR)/inc \
186                      -I$(WRF_SRC_ROOT_DIR)/../../../../LMDZ.COMMON/libo/CICLADifort/.config/inc \
187                      -I/opt/netcdf3/ifort/include \
188                       \
189                     
190REGISTRY        =    Registry
191
192LIB_BUNDLED     = \
193                     -L$(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 -lfftpack \
194                     -L$(WRF_SRC_ROOT_DIR)/external/io_grib1 -lio_grib1 \
195                     -L$(WRF_SRC_ROOT_DIR)/external/io_grib_share -lio_grib_share \
196                     -L$(WRF_SRC_ROOT_DIR)/external/io_int -lwrfio_int \
197                     $(ESMF_IO_LIB) \
198                     $(ESMF_IO_LIB) \
199                     $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/librsl_lite.a \
200                     $(WRF_SRC_ROOT_DIR)/frame/module_internal_header_util.o \
201                     $(WRF_SRC_ROOT_DIR)/frame/pack_utils.o
202
203LIB_EXTERNAL    = \
204                     $(WRF_SRC_ROOT_DIR)/external/io_netcdf/libwrfio_nf.a \
205                     -L/opt/netcdf3/ifort/lib -lnetcdf -lnetcdff /opt/netcdf3/ifort/lib/libnetcdf.a \
206                     -L$(WRF_SRC_ROOT_DIR)/../../../../LMDZ.COMMON/libo/CICLADifort/.config/lib -llmdz \
207                     -lnetcdf 
208
209LIB             =    $(LIB_BUNDLED) $(LIB_EXTERNAL) $(LIB_LOCAL)
210LDFLAGS         =    $(OMP) $(FCFLAGS) $(LDFLAGS_LOCAL)
211ENVCOMPDEFS     =   
212WRF_CHEM        =       0
213CPPFLAGS        =    $(ARCHFLAGS) $(ENVCOMPDEFS) -I$(LIBINCLUDE) $(TRADFLAG)
214NETCDFPATH      =    /opt/netcdf3/ifort
215PNETCDFPATH     =   
216
217bundled:  wrf_ioapi_includes wrfio_grib_share wrfio_grib1 wrfio_int esmf_time fftpack
218external:  wrfio_nf   $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/librsl_lite.a gen_comms_rsllite module_dm_rsllite $(ESMF_TARGET)
219
220######################
221externals: bundled external
222
223gen_comms_serial :
224        ( /bin/rm -f $(WRF_SRC_ROOT_DIR)/tools/gen_comms.c )
225
226module_dm_serial :
227        ( if [ ! -e module_dm.F ] ; then /bin/cp module_dm_warning module_dm.F ; cat module_dm_stubs.F >> module_dm.F ; fi )
228
229gen_comms_rsllite :
230        ( if [ ! -e $(WRF_SRC_ROOT_DIR)/tools/gen_comms.c ] ; then \
231          /bin/cp $(WRF_SRC_ROOT_DIR)/tools/gen_comms_warning $(WRF_SRC_ROOT_DIR)/tools/gen_comms.c ; \
232          cat $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/gen_comms.c >> $(WRF_SRC_ROOT_DIR)/tools/gen_comms.c ; fi )
233
234module_dm_rsllite :
235        ( if [ ! -e module_dm.F ] ; then /bin/cp module_dm_warning module_dm.F ; \
236          cat $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/module_dm.F >> module_dm.F ; fi )
237
238wrfio_nf :
239        ( cd $(WRF_SRC_ROOT_DIR)/external/io_netcdf ; \
240          make NETCDFPATH="$(NETCDFPATH)" RANLIB="$(RANLIB)" CPP="$(CPP)" \
241          CC="$(SCC)" CFLAGS="$(CFLAGS)" \
242          FC="$(SFC) $(PROMOTION) $(FCFLAGS)" TRADFLAG="$(TRADFLAG)" AR="$(AR)" ARFLAGS="$(ARFLAGS)" )
243
244wrfio_pnf :
245        ( cd $(WRF_SRC_ROOT_DIR)/external/io_pnetcdf ; \
246          make NETCDFPATH="$(PNETCDFPATH)" RANLIB="$(RANLIB)" CPP="$(CPP)" \
247          FC="$(FC) $(PROMOTION) $(FCFLAGS)" TRADFLAG="$(TRADFLAG)" AR="$(AR)" ARFLAGS="$(ARFLAGS)" )
248
249wrfio_grib_share :
250        ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib_share ; \
251          make CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" \
252          FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS) $(FCSUFFIX)" TRADFLAG="$(TRADFLAG)" AR="$(AR)" ARFLAGS="$(ARFLAGS)" archive)
253
254wrfio_grib1 :
255        ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib1 ; \
256          make CC="$(SCC)" CFLAGS="$(CFLAGS)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" \
257          FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS) $(FCSUFFIX)" TRADFLAG="$(TRADFLAG)" AR="$(AR)" ARFLAGS="$(ARFLAGS)" archive)
258
259wrfio_grib2 :
260        ( cd $(WRF_SRC_ROOT_DIR)/external/io_grib2 ; \
261          make CC="$(SCC)" CFLAGS="$(CFLAGS) " RM="$(RM)" RANLIB="$(RANLIB)" \
262          CPP="$(CPP)" \
263          FC="$(SFC) $(PROMOTION) -I. $(FCDEBUG) $(FCBASEOPTS) $(FCSUFFIX)" TRADFLAG="-traditional" AR="$(AR)" ARFLAGS="$(ARFLAGS)" \
264          FIXED="$(FORMAT_FIXED)" archive)
265
266wrfio_int :
267        ( cd $(WRF_SRC_ROOT_DIR)/external/io_int ; \
268          make CC="$(CC)" RM="$(RM)" RANLIB="$(RANLIB)" CPP="$(CPP)" \
269          FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" \
270          TRADFLAG="$(TRADFLAG)" AR="$(AR)" ARFLAGS="$(ARFLAGS)" all )
271
272esmf_time :
273        ( cd $(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 ; \
274          make FC="$(SFC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" \
275          CPP="$(CPP) -I$(WRF_SRC_ROOT_DIR)/inc -I. $(ARCHFLAGS) $(TRADFLAG)" AR="$(AR)" ARFLAGS="$(ARFLAGS)" )
276
277fftpack :
278        ( cd $(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5 ; \
279          make FC="$(SFC)" FFLAGS="$(PROMOTION) $(FCDEBUG) $(FCBASEOPTS)" RANLIB="$(RANLIB)" AR="$(AR)" ARFLAGS="$(ARFLAGS)" )
280
281$(WRF_SRC_ROOT_DIR)/external/RSL_LITE/librsl_lite.a :
282        ( cd $(WRF_SRC_ROOT_DIR)/external/RSL_LITE ; make CC="$(CC) $(CFLAGS)" \
283          FC="$(FC) $(FCFLAGS) $(PROMOTION) $(BYTESWAPIO)" \
284          CPP="$(CPP) -I. $(ARCHFLAGS) $(TRADFLAG)" AR="$(AR)" ARFLAGS="$(ARFLAGS)" ;\
285          $(RANLIB) $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/librsl_lite.a )
286
287######################
288#       Macros, these should be generic for all machines
289
290LN      =       ln -sf
291MAKE    =       make -i -r
292RM      =       rm -f
293
294
295# These sub-directory builds are identical across all architectures
296
297wrf_ioapi_includes :
298        ( cd $(WRF_SRC_ROOT_DIR)/external/ioapi_share ; \
299          $(MAKE) NATIVE_RWORDSIZE="$(NATIVE_RWORDSIZE)" RWORDSIZE="$(RWORDSIZE)" AR="$(AR)" ARFLAGS="$(ARFLAGS)" )
300
301wrfio_esmf :
302        ( cd $(WRF_SRC_ROOT_DIR)/external/io_esmf ; \
303          make FC="$(FC) $(PROMOTION) $(FCDEBUG) $(FCBASEOPTS) $(ESMF_MOD_INC)" \
304          RANLIB="$(RANLIB)" CPP="$(CPP) $(POUND_DEF) " AR="$(AR)" ARFLAGS="$(ARFLAGS)" )
305
306#       There is probably no reason to modify these rules
307
308.F.i:
309        $(RM) $@
310        $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.F > $@
311        mv $*.i $(DEVTOP)/pick/$*.f90
312        cp $*.F $(DEVTOP)/pick
313
314.F.o:
315        $(RM) $@
316        $(SED_FTN) $*.F > $*.b
317        $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b  > $*.f90
318        $(RM) $*.b
319        $(FC) -o $@ -c $(FCFLAGS) $(MODULE_DIRS) $(PROMOTION) $(FCSUFFIX) $*.f90
320
321.F.f90:
322        $(RM) $@
323        $(SED_FTN) $*.F > $*.b
324        $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b  > $@
325        $(RM) $*.b
326
327.f90.o:
328        $(RM) $@
329        $(FC) -o $@ -c $(FCFLAGS) $(PROMOTION) $(FCSUFFIX) $*.f90
330
331.c.o:
332        $(RM) $@
333        $(CC) -o $@ -c $(CFLAGS) $*.c
334
335# A little more adventurous.  Allow full opt on
336# mediation_integrate.o \
337# shift_domain_em.o \
338# solve_em.o  <-- gets a little kick from SOLVE_EM_SPECIAL too, if defined
339# mediation_feedback_domain.o : mediation_feedback_domain.F
340# mediation_force_domain.o : mediation_force_domain.F
341# mediation_interp_domain.o : mediation_interp_domain.F
342
343# compile these without high optimization to speed compile
344convert_nmm.o : convert_nmm.F
345init_modules_em.o : init_modules_em.F
346input_wrf.o : input_wrf.F
347module_io.o : module_io.F
348module_comm_dm.o : module_comm_dm.F
349module_configure.o : module_configure.F
350module_dm.o : module_dm.F
351module_domain.o : module_domain.F
352module_domain_type.o : module_domain_type.F
353module_alloc_space.o : module_alloc_space.F
354module_tiles.o : module_tiles.F
355module_fddaobs_rtfdda.o : module_fddaobs_rtfdda.F
356module_initialize.o : module_initialize.F
357module_physics_init.o : module_physics_init.F
358module_initialize_b_wave.o : module_initialize_b_wave.F
359module_initialize_hill2d_x.o : module_initialize_hill2d_x.F
360module_initialize_quarter_ss.o : module_initialize_quarter_ss.F
361module_initialize_real.o : module_initialize_real.F
362module_initialize_real.o: module_initialize_real.F
363module_initialize_squall2d_x.o : module_initialize_squall2d_x.F
364module_initialize_squall2d_y.o : module_initialize_squall2d_y.F
365module_integrate.o : module_integrate.F
366module_io_mm5.o : module_io_mm5.F
367module_io_wrf.o : module_io_wrf.F
368module_si_io.o : module_si_io.F
369module_state_description.o : module_state_description.F
370output_wrf.o : output_wrf.F
371solve_interface.o : solve_interface.F
372start_domain.o : start_domain.F
373start_domain_nmm.o : start_domain_nmm.F
374start_em.o : start_em.F
375wrf_auxhist10in.o : wrf_auxhist10in.F
376wrf_auxhist10out.o : wrf_auxhist10out.F
377wrf_auxhist11in.o : wrf_auxhist11in.F
378wrf_auxhist11out.o : wrf_auxhist11out.F
379wrf_auxhist1in.o : wrf_auxhist1in.F
380wrf_auxhist1out.o : wrf_auxhist1out.F
381wrf_auxhist2in.o : wrf_auxhist2in.F
382wrf_auxhist2out.o : wrf_auxhist2out.F
383wrf_auxhist3in.o : wrf_auxhist3in.F
384wrf_auxhist3out.o : wrf_auxhist3out.F
385wrf_auxhist4in.o : wrf_auxhist4in.F
386wrf_auxhist4out.o : wrf_auxhist4out.F
387wrf_auxhist5in.o : wrf_auxhist5in.F
388wrf_auxhist5out.o : wrf_auxhist5out.F
389wrf_auxhist6in.o : wrf_auxhist6in.F
390wrf_auxhist6out.o : wrf_auxhist6out.F
391wrf_auxhist7in.o : wrf_auxhist7in.F
392wrf_auxhist7out.o : wrf_auxhist7out.F
393wrf_auxhist8in.o : wrf_auxhist8in.F
394wrf_auxhist8out.o : wrf_auxhist8out.F
395wrf_auxhist9in.o : wrf_auxhist9in.F
396wrf_auxhist9out.o : wrf_auxhist9out.F
397wrf_auxinput10in.o : wrf_auxinput10in.F
398wrf_auxinput10out.o : wrf_auxinput10out.F
399wrf_auxinput11in.o : wrf_auxinput11in.F
400wrf_auxinput11out.o : wrf_auxinput11out.F
401wrf_auxinput1in.o : wrf_auxinput1in.F
402wrf_auxinput1out.o : wrf_auxinput1out.F
403wrf_auxinput2in.o : wrf_auxinput2in.F
404wrf_auxinput2out.o : wrf_auxinput2out.F
405wrf_auxinput3in.o : wrf_auxinput3in.F
406wrf_auxinput3out.o : wrf_auxinput3out.F
407wrf_auxinput4in.o : wrf_auxinput4in.F
408wrf_auxinput4out.o : wrf_auxinput4out.F
409wrf_auxinput5in.o : wrf_auxinput5in.F
410wrf_auxinput5out.o : wrf_auxinput5out.F
411wrf_auxinput6in.o : wrf_auxinput6in.F
412wrf_auxinput6out.o : wrf_auxinput6out.F
413wrf_auxinput7in.o : wrf_auxinput7in.F
414wrf_auxinput7out.o : wrf_auxinput7out.F
415wrf_auxinput8in.o : wrf_auxinput8in.F
416wrf_auxinput8out.o : wrf_auxinput8out.F
417wrf_auxinput9in.o : wrf_auxinput9in.F
418wrf_auxinput9out.o : wrf_auxinput9out.F
419wrf_bdyin.o : wrf_bdyin.F
420wrf_bdyout.o : wrf_bdyout.F
421wrf_ext_read_field.o : wrf_ext_read_field.F
422wrf_ext_write_field.o : wrf_ext_write_field.F
423wrf_fddaobs_in.o : wrf_fddaobs_in.F
424wrf_histin.o : wrf_histin.F
425wrf_histout.o : wrf_histout.F
426wrf_inputin.o : wrf_inputin.F
427wrf_inputout.o : wrf_inputout.F
428wrf_restartin.o : wrf_restartin.F
429wrf_restartout.o : wrf_restartout.F
430wrf_tsin.o : wrf_tsin.F
431nl_get_0_routines.o : nl_get_0_routines.F
432nl_get_1_routines.o : nl_get_1_routines.F
433nl_set_0_routines.o : nl_set_0_routines.F
434nl_set_1_routines.o : nl_set_1_routines.F
435
436convert_nmm.o \
437init_modules_em.o \
438module_comm_dm.o \
439module_dm.o \
440module_alloc_space.o \
441module_fddaobs_rtfdda.o \
442module_initialize.o \
443module_initialize_b_wave.o \
444module_initialize_hill2d_x.o \
445module_initialize_quarter_ss.o \
446module_initialize_real.o \
447module_initialize_squall2d_x.o \
448module_initialize_squall2d_y.o \
449module_integrate.o \
450module_io_mm5.o \
451module_io_wrf.o \
452module_si_io.o \
453module_tiles.o \
454output_wrf.o \
455solve_interface.o \
456start_domain.o \
457start_domain_nmm.o \
458start_em.o \
459wrf_fddaobs_in.o \
460wrf_tsin.o :
461        $(RM) $@
462        $(SED_FTN) $*.F > $*.b
463        $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $(OMPCPP) $*.b  > $*.f90
464        $(RM) $*.b
465        $(FC) -c $(PROMOTION) $(FCNOOPT) $(FCBASEOPTS) $(MODULE_DIRS) $(FCSUFFIX) $(OMP) $*.f90
466
467#solve_em.o :
468#       $(RM) $@
469#       $(SED_FTN) $*.F > $*.b
470#       $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $*.b  > $*.f90
471#       $(RM) $*.b
472#       $(FC) -o $@ -c $(FCFLAGS) $(MODULE_DIRS) $(PROMOTION) $(FCSUFFIX) $(SOLVE_EM_SPECIAL) $(OMP) $*.f90
473
474module_sf_ruclsm.o : module_sf_ruclsm.F
475module_cu_kf.o : module_cu_kf.F
476
477module_sf_ruclsm.o module_cu_kf.o :
478        $(RM) $@
479        $(SED_FTN) $*.F > $*.b
480        $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $(OMPCPP) $*.b  > $*.f90
481        $(RM) $*.b
482        $(FC) -c $(PROMOTION) $(FCREDUCEDOPT) $(FCBASEOPTS) $(MODULE_DIRS) $(FCSUFFIX) $(OMP) $*.f90
483
484# compile without OMP
485input_wrf.o \
486module_domain.o \
487module_domain_type.o \
488module_physics_init.o \
489module_io.o \
490wrf_auxhist10in.o \
491wrf_auxhist10out.o \
492wrf_auxhist11in.o \
493wrf_auxhist11out.o \
494wrf_auxhist1in.o \
495wrf_auxhist1out.o \
496wrf_auxhist2in.o \
497wrf_auxhist2out.o \
498wrf_auxhist3in.o \
499wrf_auxhist3out.o \
500wrf_auxhist4in.o \
501wrf_auxhist4out.o \
502wrf_auxhist5in.o \
503wrf_auxhist5out.o \
504wrf_auxhist6in.o \
505wrf_auxhist6out.o \
506wrf_auxhist7in.o \
507wrf_auxhist7out.o \
508wrf_auxhist8in.o \
509wrf_auxhist8out.o \
510wrf_auxhist9in.o \
511wrf_auxhist9out.o \
512wrf_auxinput10in.o \
513wrf_auxinput10out.o \
514wrf_auxinput11in.o \
515wrf_auxinput11out.o \
516wrf_auxinput1in.o \
517wrf_auxinput1out.o \
518wrf_auxinput2in.o \
519wrf_auxinput2out.o \
520wrf_auxinput3in.o \
521wrf_auxinput3out.o \
522wrf_auxinput4in.o \
523wrf_auxinput4out.o \
524wrf_auxinput5in.o \
525wrf_auxinput5out.o \
526wrf_auxinput6in.o \
527wrf_auxinput6out.o \
528wrf_auxinput7in.o \
529wrf_auxinput7out.o \
530wrf_auxinput8in.o \
531wrf_auxinput8out.o \
532wrf_auxinput9in.o \
533wrf_auxinput9out.o \
534wrf_bdyin.o \
535wrf_bdyout.o \
536wrf_ext_read_field.o \
537wrf_ext_write_field.o \
538wrf_histin.o \
539wrf_histout.o \
540wrf_inputin.o \
541wrf_inputout.o \
542wrf_restartin.o \
543wrf_restartout.o \
544module_state_description.o \
545nl_set_0_routines.o \
546nl_set_1_routines.o \
547nl_get_0_routines.o \
548nl_get_1_routines.o \
549module_configure.o :
550        $(RM) $@
551        $(SED_FTN) $*.F > $*.b
552        $(CPP) -I$(WRF_SRC_ROOT_DIR)/inc $(CPPFLAGS) $(OMPCPP) $*.b  > $*.f90
553        $(RM) $*.b
554        $(FC) -c $(PROMOTION) $(FCSUFFIX) $(FCNOOPT) $(FCBASEOPTS) $(MODULE_DIRS) $*.f90
Note: See TracBrowser for help on using the repository browser.