SHELL=/bin/sh #============================================================================== # # DTC GSI Makefile # #============================================================================== #------------ # Include machine dependent compile & load options #------------ include ../../configure.gsi COREROOT = $(COREDIR) COREBIN = $(COREROOT)/run CORELIB = $(COREROOT)/lib COREINC = $(COREROOT)/include COREETC = $(COREROOT)/etc EXE_FILE = gsi.exe # --------- # Libraries # --------- ## LIBmpeu = -L$(CORELIB) -lmpeu LIBbufr = -L$(CORELIB) -lbufr_i4r8 LIBw3 = -L$(CORELIB) -lw3nco_i4r8 -lw3emc_i4r8 LIBsp = -L$(CORELIB) -lsp_i4r8 LIBbacio = -L$(CORELIB) -lbacio LIBsfcio = -L$(CORELIB) -lsfcio_i4r4 LIBsigio = -L$(CORELIB) -lsigio_i4r4 LIBcrtm = -L$(CORELIB) -lcrtm LIBtransf = -L$(CORELIB) -ltransf LIBhermes = -L$(CORELIB) -lhermes LIBnemsio = -L$(CORELIB) -lnemsio LIBrrcld = -L$(CORELIB) -lgsdcloud LIBprpdcdr = # -L$(CORELIB) -lprepdecode_i4r8 # -------------------------- # Default Baselibs Libraries # -------------------------- LIBnetcdf = -L$(NETCDFPATH)/lib $(NETCDFLIBS) LIBwrf = $(WRF_LIB) # ------------------------ # Default System Libraries # ------------------------ LIBmpi = -lmpi ## LIBsys = -lessl_r -lmass -bdatapsize:64K -bstackpsize:64K LIBsys = $(MYLIBsys) # -------------------- # Installing directory # -------------------- INSTALL_DIR = $(COREBIN) # -------- # Log file # -------- LOG_FILE = log.make.$(EXE_FILE) #----------------------------------------------------------------------------- # -- Child make -- #----------------------------------------------------------------------------- # ------------ # Source files # ------------ OBJS = \ add_gfs_stratosphere.o \ adjtest.o \ adjtest_obs.o \ aeroinfo.o \ aircraftobsqc.o \ anberror.o \ anbkerror.o \ aniso_ens_util.o \ anisofilter.o \ anisofilter_glb.o \ antcorr_application.o \ antest_maps0.o \ antest_maps0_glb.o \ atms_spatial_average_mod.o \ balmod.o \ berror.o \ bias_predictors.o \ bicg.o \ bicglanczos.o \ bkerror.o \ bkgcov.o \ bkgvar.o \ bkgvar_rewgt.o \ blacklist.o \ blendmod.o \ calc_fov_conical.o \ calc_fov_crosstrk.o \ cal_tztr.o \ calctends.o \ calctends_ad.o \ calctends_tl.o \ calctends_no_ad.o \ calctends_no_tl.o \ chemmod.o \ cloud_efr.o \ clw_mod.o \ cmaq_routines.o \ co_mop_ak.o \ coinfo.o \ combine_radobs.o \ compact_diffs.o \ compute_derived.o \ compute_fact10.o \ compute_qvar3d.o \ constants.o \ control2model.o \ control2state.o \ control_vectors.o \ converr.o \ convinfo.o \ convthin.o \ crtm_interface.o \ cwhydromod.o \ cvsection.o \ deter_nst.o \ deter_sfc_mod.o \ dtast.o \ egrid2agrid_mod.o \ enorm_state.o \ ensctl2state.o \ evaljgrad.o \ evaljcdfi.o \ evaljo.o \ evalqlim.o \ fgrid2agrid_mod.o \ fill_mass_grid2.o \ fill_nmm_grid2.o \ fpvsx_ad.o \ general_commvars_mod.o \ general_read_gfsatm.o \ general_read_nmmb.o \ general_specmod.o \ general_spectral_transforms.o \ general_sub2grid_mod.o \ general_tll2xy_mod.o \ general_transform.o \ gengrid_vars.o \ general_write_gfsatm.o \ genqsat.o \ genstats_gps.o \ gesinfo.o \ get_derivatives.o \ get_derivatives2.o \ get_gefs_ensperts_dualres.o \ get_gefs_for_regional.o \ get_nmmb_ensperts.o \ get_pseudo_ensperts.o \ get_semimp_mats.o \ get_wrf_nmm_ensperts.o \ getprs.o \ getsiga.o \ get_wrf_mass_ensperts_netcdf.o \ getuv.o \ getvvel.o \ gfs_stratosphere.o \ glbsoi.o \ grtest.o \ grdcrd.o \ gridmod.o \ gscond_ad.o \ gsd_terrain_match_surfTobs.o \ gsdcloudanalysis.o \ gsd_update_mod.o \ gsi_4dvar.o \ gsi_4dcouplermod.o \ gsi_bundlemod.o \ gsi_chemguess_mod.o \ gsi_metguess_mod.o \ gsi_io.o \ gsi_nemsio_mod.o \ gsimod.o \ gsisub.o \ guess_grids.o \ half_nmm_grid2.o \ hilbert_curve.o \ hybrid_ensemble_isotropic.o \ hybrid_ensemble_parameters.o \ inc2guess.o \ init_jcdfi.o \ insitu_info.o \ int3dvar.o \ intall.o \ intco.o \ intdw.o \ intgps.o \ intgust.o \ intjcmod.o \ intjo.o \ intlag.o \ intoz.o \ intpblh.o \ intpcp.o \ intpm2_5.o \ intps.o \ intpw.o \ intq.o \ intrad.o \ intrp2a.o \ intrp3oz.o \ intvis.o \ intrw.o \ intspd.o \ intsrw.o \ intsst.o \ intt.o \ inttcp.o \ intw.o \ jcmod.o \ jfunc.o \ jgrad.o \ kinds.o \ lag_fields.o \ lag_interp.o \ lag_traj.o \ lagmod.o \ lanczos.o \ logvis_to_vis.o \ looplimits.o \ m_berror_stats.o \ m_berror_stats_reg.o \ m_dgeevx.o \ m_distance.o \ m_dtime.o \ m_find.o \ m_gpsrhs.o \ m_gsiBiases.o \ m_rerank.o \ m_obdiag.o \ m_rhs.o \ m_sortind.o \ m_stats.o \ m_tick.o \ m_uniq.o \ mpeu_mpif.o \ mpeu_util.o \ mod_nmmb_to_a.o \ mod_strong.o \ mod_vtrans.o \ mod_wrfmass_to_a.o \ model_ad.o \ model_tl.o \ model2control.o \ mp_compact_diffs_mod1.o \ mp_compact_diffs_support.o \ mpimod.o \ mpl_allreduce.o \ mpl_bcast.o \ native_endianness.o \ ncepgfs_ghg.o \ ncepgfs_io.o \ ncepnems_io.o \ nlmsas_ad.o \ normal_rh_to_q.o \ nstio_module.o \ obs_ferrscale.o \ obs_para.o \ obs_sensitivity.o \ observer.o \ obsmod.o \ omegas_ad.o \ oneobmod.o \ ozinfo.o \ patch2grid_mod.o \ pcgsoi.o \ pcgsqrt.o \ pcp_k.o \ pcpinfo.o \ penal.o \ phil.o \ phil1.o \ plib8.o \ polcarf.o \ prad_bias.o \ precond.o \ precpd_ad.o \ prewgt.o \ prewgt_reg.o \ projmethod_support.o \ prt_guess.o \ psichi2uv_reg.o \ psichi2uvt_reg.o \ q_diag.o \ qcmod.o \ qnewton3.o \ radinfo.o \ raflib.o \ rapidrefresh_cldsurf_mod.o \ rdgrbsst.o \ read_aerosol.o \ read_airs.o \ read_amsre.o \ read_anowbufr.o \ read_atms.o \ read_avhrr.o \ read_avhrr_navy.o \ read_bufrtovs.o \ read_co.o \ read_cris.o \ read_diag.o \ read_files.o \ read_fl_hdob.o \ read_gfs_ozone_for_regional.o \ read_goesimg.o \ read_goesndr.o \ read_gps.o \ read_guess.o \ read_iasi.o \ read_l2bufr_mod.o \ read_lag.o \ read_lidar.o \ read_Lightning.o \ read_modsbufr.o \ read_NASA_LaRC.o \ read_obs.o \ read_obsdiags.o \ read_ozone.o \ read_pblh.o \ read_pcp.o \ read_prepbufr.o \ read_radar.o \ read_RadarRef_mosaic.o \ read_satwnd.o \ read_seviri.o \ read_sfcwnd.o \ read_ssmi.o \ read_ssmis.o \ read_superwinds.o \ read_tcps.o \ read_wrf_mass_files.o \ read_wrf_mass_guess.o \ read_wrf_nmm_files.o \ read_wrf_nmm_guess.o \ regional_io.o \ reorg_metar_cloud.o \ rfdpar.o \ rsearch.o \ rtlnmc_version3.o \ satthin.o \ set_crtm_aerosolmod.o \ set_crtm_cloudmod.o \ setupbend.o \ setupco.o \ setupdw.o \ setupgust.o \ setuplag.o \ setupoz.o \ setuppblh.o \ setuppcp.o \ setuppm2_5.o \ setupps.o \ setuppw.o \ setupq.o \ setuprad.o \ setupref.o \ setuprhsall.o \ setuprw.o \ setupspd.o \ setupsrw.o \ setupsst.o \ setupt.o \ setuptcp.o \ setupvis.o \ setupw.o \ setupyobs.o \ sfc_model.o \ sfcobsqc.o \ simpin1.o \ simpin1_init.o \ skindepth.o \ smooth_polcarf.o \ smoothrf.o \ smoothwwrf.o \ smoothzrf.o \ sqrtmin.o \ ssmis_spatial_average_mod.o \ sst_retrieval.o \ state2control.o \ state2ensctl.o \ state_vectors.o \ statsco.o \ statsconv.o \ statsoz.o \ statspcp.o \ statsrad.o \ stop1.o \ stp3dvar.o \ stpcalc.o \ stpco.o \ stpdw.o \ stpgps.o \ stpgust.o \ stpjcmod.o \ stpjo.o \ stpoz.o \ stppblh.o \ stppcp.o \ stppm2_5.o \ stpps.o \ stppw.o \ stpq.o \ stprad.o \ stprw.o \ stpspd.o \ stpsrw.o \ stpsst.o \ stpt.o \ stptcp.o \ stpvis.o \ stpw.o \ strong_bal_correction.o \ strong_baldiag_inc.o \ strong_fast_global_mod.o \ sub2fslab_mod.o \ support_2dvar.o \ stub_set_crtm_aerosol.o \ stub_pertmod.o \ stub_timermod.o \ tendsmod.o \ test_obsens.o \ tcv_mod.o \ timermod.o \ tintrp2a.o \ tintrp3.o \ tpause.o \ tpause_t.o \ tune_pbl_height.o \ turbl.o \ turbl_ad.o \ turbl_tl.o \ turblmod.o \ tv_to_tsen.o \ unfill_mass_grid2.o \ unfill_nmm_grid2.o \ unhalf_nmm_grid2.o \ update_guess.o \ update_geswtend.o \ ut_gsibundle.o \ wind_fft.o \ wrf_binary_interface.o \ wrf_mass_guess_mod.o \ wrf_netcdf_interface.o \ write_all.o \ write_bkgvars_grid.o \ write_obsdiags.o \ wrwrfmassa.o \ wrwrfnmma.o \ xhat_vordivmod.o \ zrnmi_mod.o \ blockIO.o # ---- LIB = libgsi.a # ------------------------ # Call compiler and linker # ------------------------ all : $(LIB) $(EXE_FILE) $(LIB): $(OBJS) echo $(OBJS) $(AR) -ruv $(LIB) $(OBJS) $(EXE_FILE): $(OBJS) $(LIB) gsimain.o $(F90) $(LDFLAGS) -o gsi.exe gsimain.o libgsi.a $(LIBcrtm) $(LIBsfcio) $(LIBsigio) $(LIBnemsio) $(LIBw3) $(LIBbacio) $(LIBbufr) $(LIBsp) $(LIBmpeu) $(LIBwrf) $(LIBnetcdf) $(LIBsys) $(LIBrrcld) $(LIBprpdcdr) cp $(EXE_FILE) $(COREBIN) # DEPENDENCIES : only dependencies after this line (don't remove the word DEPENDENCIES) include Makefile.dependency .SUFFIXES : .f90 .F90 .fpp .o .F90.o: $(CPP) $(CPP_FLAGS) $(CPP_F90FLAGS) $*.F90 > $*.fpp $(F90) $(FFLAGS) -c $*.fpp $(RM) $*.fpp %.o : %.mod clean: $(RM) -f *.o *.exe $(LIB)