From c2d86c7fb21d2098f0843c83a8bd363adb587827 Mon Sep 17 00:00:00 2001 From: Dom Heinzeller Date: Thu, 26 Mar 2020 11:20:04 -0600 Subject: [PATCH] Change logic on how/where kind and type definitions are compiled --- ccpp/config/ccpp_prebuild_config.py | 2 ++ scm/src/CMakeLists.txt | 3 --- scm/src/gmtb_scm_kinds.F90 | 8 ++++++-- scm/src/gmtb_scm_kinds.meta | 21 +++++++++++++++++++++ 4 files changed, 29 insertions(+), 5 deletions(-) create mode 100644 scm/src/gmtb_scm_kinds.meta diff --git a/ccpp/config/ccpp_prebuild_config.py b/ccpp/config/ccpp_prebuild_config.py index 63ab7e93..1e679be2 100755 --- a/ccpp/config/ccpp_prebuild_config.py +++ b/ccpp/config/ccpp_prebuild_config.py @@ -17,6 +17,7 @@ 'ccpp/physics/physics/radsw_param.f', 'ccpp/physics/physics/radlw_param.f', 'scm/src/GFS_typedefs.F90', + 'scm/src/gmtb_scm_kinds.F90', 'scm/src/gmtb_scm_type_defs.F90', 'scm/src/gmtb_scm_physical_constants.F90', 'ccpp/physics/physics/rte-rrtmgp/rrtmgp/mo_gas_optics_rrtmgp.F90', @@ -199,6 +200,7 @@ # derived data type definitions 'scm/src/GFS_typedefs.F90', 'scm/src/gmtb_scm_kinds.F90', + 'scm/src/gmtb_scm_physical_constants.F90', 'scm/src/gmtb_scm_type_defs.F90', ] diff --git a/scm/src/CMakeLists.txt b/scm/src/CMakeLists.txt index 75fa57cb..0a9698e2 100644 --- a/scm/src/CMakeLists.txt +++ b/scm/src/CMakeLists.txt @@ -297,9 +297,6 @@ SET(scm_source_files gmtb_scm.F90 gmtb_scm_forcing.F90 gmtb_scm_time_integration.F90 gmtb_scm_output.F90 - gmtb_scm_kinds.F90 - gmtb_scm_physical_constants.F90 - gmtb_scm_type_defs.F90 ) if(STATIC) diff --git a/scm/src/gmtb_scm_kinds.F90 b/scm/src/gmtb_scm_kinds.F90 index 46d01caf..2e039781 100644 --- a/scm/src/gmtb_scm_kinds.F90 +++ b/scm/src/gmtb_scm_kinds.F90 @@ -3,8 +3,12 @@ module gmtb_scm_kinds +!! \section arg_table_gmtb_scm_kinds +!! \htmlinclude gmtb_scm_kinds.html +!! + integer, parameter :: sp = selected_real_kind(P= 6,R=37) - integer, parameter :: dp = selected_real_kind(P=13,R=300) - integer, parameter :: qp = selected_real_kind(P=27,R=2400) + integer, parameter :: dp = selected_real_kind(P=13,R=300) + integer, parameter :: qp = selected_real_kind(P=27,R=2400) end module gmtb_scm_kinds diff --git a/scm/src/gmtb_scm_kinds.meta b/scm/src/gmtb_scm_kinds.meta new file mode 100644 index 00000000..23807f0c --- /dev/null +++ b/scm/src/gmtb_scm_kinds.meta @@ -0,0 +1,21 @@ +[ccpp-arg-table] + name = gmtb_scm_kinds + type = module +[kind_sp] + standard_name = kind_sp + long_name = definition of kind_sp + units = none + dimensions = () + type = integer +[kind_dp] + standard_name = kind_dp + long_name = definition of kind_dp + units = none + dimensions = () + type = integer +[kind_qp] + standard_name = kind_qp + long_name = definition of kind_qp + units = none + dimensions = () + type = integer