# WRF CMake Build ######################################################################################################################## # # Quickly preprocess some files so that cmake can understand the module dependencies # ######################################################################################################################## wrf_c_preproc_fortran( TARGET_NAME module_ra_rrtmg_preproc OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/preproc/ EXTENSION ".f90" INCLUDES ${CMAKE_CURRENT_SOURCE_DIR} DEPENDENCIES registry_code DEFINITIONS ${PROJECT_COMPILE_DEFINITIONS} SOURCES module_ra_rrtmg_lwk.F module_ra_rrtmg_lwf.F module_ra_rrtmg_swk.F module_ra_rrtmg_swf.F module_sf_clm.F ) add_dependencies( ${PROJECT_NAME}_Core module_ra_rrtmg_preproc ) target_sources( ${PROJECT_NAME}_Core PRIVATE ccpp_kind_types.F complex_number_module.F module_bep_bem_helper.F module_bl_acm.F module_bl_boulac.F module_bl_camuwpbl_driver.F module_bl_eepsilon.F module_bl_fogdes.F module_bl_gbmpbl.F module_bl_gfs.F module_bl_gfsedmf.F module_bl_gwdo.F module_bl_gwdo_gsl.F module_bl_keps.F module_bl_mfshconvpbl.F module_bl_mrf.F module_bl_myjpbl.F module_bl_myjurb.F module_bl_qnsepbl.F module_bl_shinhong.F module_bl_temf.F module_bl_ysu.F module_cam_bl_diffusion_solver.F module_cam_bl_eddy_diff.F module_cam_cldwat.F module_cam_constituents.F module_cam_error_function.F module_cam_esinti.F module_cam_gffgch.F module_cam_infnan.F module_cam_molec_diff.F module_cam_mp_cldwat2m_micro.F module_cam_mp_conv_water.F module_cam_mp_microp_aero.F module_cam_mp_modal_aero_initialize_data_phys.F module_cam_mp_ndrop.F module_cam_mp_qneg3.F module_cam_mp_radconstants.F module_cam_physconst.F module_cam_shr_const_mod.F module_cam_shr_kind_mod.F module_cam_support.F module_cam_trb_mtn_stress.F module_cam_upper_bc.F module_cam_wv_saturation.F module_checkerror.F module_cu_bmj.F module_cu_camzm.F module_cu_camzm_driver.F module_cu_g3.F module_cu_gd.F module_cu_gf_ctrans.F module_cu_gf_deep.F module_cu_gf_sh.F module_cu_gf_wrfdrv.F module_cu_kf.F module_cu_kfcup.F module_cu_kfeta.F module_cu_ksas.F module_cu_mskf.F module_cu_nsas.F module_cu_ntiedtke.F module_cu_osas.F module_cu_sas.F module_cu_scalesas.F module_cu_tiedtke.F module_cumulus_driver.F module_data_cam_mam_aero.F module_data_cam_mam_asect.F module_data_gocart_dust.F module_diag_afwa.F module_diag_cl.F module_diag_functions.F module_diag_hailcast.F module_diag_misc.F module_diag_nwp.F module_diag_pld.F module_diag_rasm.F module_diag_solar.F module_diag_trad_fields.F module_diag_zld.F module_diagnostics_driver.F module_dust_emis.F module_fdda_psufddagd.F module_fdda_spnudging.F module_fddagd_driver.F module_fddaobs_driver.F module_fddaobs_rtfdda.F module_fire_emis.F module_firebrand_spotting.F module_firebrand_spotting_mpi.F module_fr_fire_atm.F module_fr_fire_core.F module_fr_fire_driver.F module_fr_fire_driver_wrf.F module_fr_fire_model.F module_fr_fire_phys.F module_fr_fire_util.F module_gfs_funcphys.F module_gfs_machine.F module_gfs_physcons.F module_gocart_coupling.F module_irrigation.F module_lightning_driver.F module_ltng_cpmpr92z.F module_ltng_crmpr92.F module_ltng_iccg.F module_ltng_lpi.F module_madwrf.F module_microphysics_driver.F module_microphysics_zero_out.F module_mixactivate.F module_mp_cammgmp_driver.F module_mp_etanew.F module_mp_fast_sbm.F module_mp_fer_hires.F module_mp_full_sbm.F module_mp_gsfcgce.F module_mp_gsfcgce_4ice_nuwrf.F module_mp_jensen_ishmael.F module_mp_kessler.F module_mp_lin.F module_mp_milbrandt2mom.F module_mp_morr_two_moment.F module_mp_morr_two_moment_aero.F module_mp_nssl_2mom.F module_mp_ntu.F module_mp_p3.F module_mp_radar.F module_mp_rcon.F module_mp_SBM_polar_radar.F module_mp_sbu_ylin.F module_mp_thompson.F module_mp_udm.F module_mp_wdm5.F module_mp_wdm6.F module_mp_wdm7.F module_mp_wsm3.F module_mp_wsm5.F module_mp_wsm6.F module_mp_wsm6r.F module_mp_wsm7.F module_pbl_driver.F module_physics_addtendc.F module_physics_init.F module_progtm.F module_ra_aerosol.F module_ra_cam.F module_ra_cam_support.F module_ra_clWRF_support.F module_ra_eclipse.F module_ra_effective_radius.F module_ra_farms.F module_ra_flg.F module_ra_gfdleta.F module_ra_goddard.F module_ra_gsfcsw.F module_ra_hs.F module_ra_rrtm.F module_ra_rrtmg_aero_optical_util_cmaq.F module_ra_rrtmg_lw.F # module_ra_rrtmg_lwf.F ${CMAKE_CURRENT_BINARY_DIR}/preproc/module_ra_rrtmg_lwf.f90 # module_ra_rrtmg_lwk.F ${CMAKE_CURRENT_BINARY_DIR}/preproc/module_ra_rrtmg_lwk.f90 module_ra_rrtmg_sw.F # module_ra_rrtmg_swf.F ${CMAKE_CURRENT_BINARY_DIR}/preproc/module_ra_rrtmg_swf.f90 # module_ra_rrtmg_swk.F ${CMAKE_CURRENT_BINARY_DIR}/preproc/module_ra_rrtmg_swk.f90 module_ra_sw.F module_radiation_driver.F module_sf_3dpwp.F module_sf_bem.F module_sf_bep.F module_sf_bep_bem.F # module_sf_clm.F ${CMAKE_CURRENT_BINARY_DIR}/preproc/module_sf_clm.f90 module_sf_ctsm.F module_sf_exchcoef.F module_sf_fogdes.F module_sf_gecros.F module_sf_gfdl.F module_sf_gfs.F module_sf_idealscmsfclay.F module_sf_lake.F module_sf_myjsfc.F module_sf_mynn.F module_sf_noah_seaice.F module_sf_noah_seaice_drv.F module_sf_noahdrv.F module_sf_noahlsm.F module_sf_noahlsm_glacial_only.F # NoahMP Code noahmp/drivers/wrf/module_sf_noahmpdrv.F noahmp/src/module_sf_noahmp_glacier.F noahmp/src/module_sf_noahmp_groundwater.F noahmp/src/module_sf_noahmplsm.F module_sf_ocean_driver.F module_sf_oml.F module_sf_pxlsm.F module_sf_pxlsm_data.F module_sf_pxsfclay.F module_sf_qnsesfc.F module_sf_ruclsm.F module_sf_scmflux.F module_sf_scmskintemp.F module_sf_sfcdiags.F module_sf_sfcdiags_ruclsm.F module_sf_sfclay.F module_sf_sfclayrev.F module_sf_slab.F module_sf_ssib.F module_sf_sstskin.F module_sf_temfsfclay.F module_sf_tmnupdate.F module_sf_urban.F module_shallowcu_driver.F module_shcu_camuwshcu.F module_shcu_camuwshcu_driver.F module_shcu_deng.F module_shcu_grims.F module_shcu_nscv.F module_surface_driver.F module_wind_fitch.F module_wind_mav.F # Shared physics physics_mmm/bl_gwdo.F90 physics_mmm/bl_ysu.F90 physics_mmm/cu_ntiedtke.F90 physics_mmm/module_libmassv.F90 physics_mmm/mp_radar.F90 physics_mmm/mp_wsm6.F90 physics_mmm/mp_wsm6_effectRad.F90 physics_mmm/sf_sfclayrev.F90 # MYNN-EDMF MYNN-EDMF/module_bl_mynnedmf.F90 MYNN-EDMF/WRF/module_bl_mynnedmf_common.F90 MYNN-EDMF/WRF/module_bl_mynnedmf_driver.F90 ) target_include_directories( ${PROJECT_NAME}_Core PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} )