From 7ae9a01131ba39e6e36bdf5e52fb7723cbc6dca4 Mon Sep 17 00:00:00 2001 From: rem1776 Date: Fri, 19 Jan 2024 17:54:36 -0500 Subject: [PATCH 1/2] Fix failures from parallel autotools builds --- Makefile.am | 15 +--- astronomy/Makefile.am | 5 -- axis_utils/Makefile.am | 5 -- column_diagnostics/Makefile.am | 5 -- configure.ac | 1 + constants/Makefile.am | 1 - constants4/Makefile.am | 1 - diag_integral/Makefile.am | 5 -- diag_manager/Makefile.am | 20 ++--- drifters/Makefile.am | 3 +- field_manager/Makefile.am | 7 +- fms/Makefile.am | 19 +---- fms2_io/Makefile.am | 25 +++---- global/Makefile.am | 39 ++++++++++ libFMS.F90 => global/fms_global.F90 | 4 +- horiz_interp/Makefile.am | 5 +- libFMS/Makefile.am | 2 +- mkmods.mk | 2 +- monin_obukhov/Makefile.am | 11 +-- mosaic2/Makefile.am | 3 +- mpp/Makefile.am | 111 ++-------------------------- sat_vapor_pres/Makefile.am | 10 +-- topography/Makefile.am | 11 +-- tridiagonal/Makefile.am | 2 - 24 files changed, 78 insertions(+), 234 deletions(-) create mode 100644 global/Makefile.am rename libFMS.F90 => global/fms_global.F90 (99%) diff --git a/Makefile.am b/Makefile.am index 22fb68f97d..54a58b30b2 100644 --- a/Makefile.am +++ b/Makefile.am @@ -68,7 +68,7 @@ SUBDIRS = \ tracer_manager \ sat_vapor_pres \ random_numbers \ - . \ + global \ libFMS \ test_fms \ ${DOCS} @@ -78,19 +78,6 @@ include_HEADERS = include/file_version.h include/fms_platform.h pkgconfigdir = $(libdir)/pkgconfig pkgconfig_DATA = FMS.pc -## Build libFMS module -AM_CPPFLAGS = -I${top_srcdir}/include -AM_FCFLAGS = $(FC_MODINC). $(FC_MODOUT)$(MODDIR) - -noinst_LTLIBRARIES = libFMS_mod.la -libFMS_mod_la_SOURCES = libFMS.F90 - -fms.$(FC_MODEXT): .mods/*_mod.$(FC_MODEXT) - -nodist_include_HEADERS = .mods/fms.$(FC_MODEXT) - -include $(top_srcdir)/mkmods.mk - # Prepare CMake files for installation. This is to help # packages build using CMake to more easily use the libFMS # library. diff --git a/astronomy/Makefile.am b/astronomy/Makefile.am index 50a1449412..42d26db527 100644 --- a/astronomy/Makefile.am +++ b/astronomy/Makefile.am @@ -36,11 +36,6 @@ libastronomy_la_SOURCES = \ include/astronomy_r8.fh \ include/astronomy.inc -astronomy.$(FC_MODEXT): \ -include/astronomy_r4.fh \ -include/astronomy_r8.fh \ -include/astronomy.inc - BUILT_SOURCES = astronomy_mod.$(FC_MODEXT) nodist_include_HEADERS = astronomy_mod.$(FC_MODEXT) diff --git a/axis_utils/Makefile.am b/axis_utils/Makefile.am index a8f1b3528b..5c77c34384 100644 --- a/axis_utils/Makefile.am +++ b/axis_utils/Makefile.am @@ -36,11 +36,6 @@ libaxis_utils_la_SOURCES = \ include/axis_utils2_r8.fh \ include/axis_utils2.inc -axis_utils2.$(FC_MODEXT) : \ -include/axis_utils2_r4.fh \ -include/axis_utils2_r8.fh \ -include/axis_utils2.inc - # Mod file depends on its o file, is built and then installed. nodist_include_HEADERS = axis_utils_mod.$(FC_MODEXT) axis_utils2_mod.$(FC_MODEXT) BUILT_SOURCES = axis_utils_mod.$(FC_MODEXT) axis_utils2_mod.$(FC_MODEXT) diff --git a/column_diagnostics/Makefile.am b/column_diagnostics/Makefile.am index c205abbb4d..cbb630f25b 100644 --- a/column_diagnostics/Makefile.am +++ b/column_diagnostics/Makefile.am @@ -35,11 +35,6 @@ include/column_diagnostics.inc \ include/column_diagnostics_r4.fh \ include/column_diagnostics_r8.fh -column_diagnostics.$(FC_MOD_EXT):\ -include/column_diagnostics.inc \ -include/column_diagnostics_r4.fh \ -include/column_diagnostics_r8.fh - BUILT_SOURCES = column_diagnostics_mod.$(FC_MODEXT) nodist_include_HEADERS = column_diagnostics_mod.$(FC_MODEXT) diff --git a/configure.ac b/configure.ac index 223733b9f9..dbdb47bd40 100644 --- a/configure.ac +++ b/configure.ac @@ -468,6 +468,7 @@ AC_CONFIG_FILES([ docs/Makefile parser/Makefile string_utils/Makefile + global/Makefile test_fms/test-lib.sh test_fms/intel_coverage.sh test_fms/Makefile diff --git a/constants/Makefile.am b/constants/Makefile.am index 429dd6c329..a9648ee113 100644 --- a/constants/Makefile.am +++ b/constants/Makefile.am @@ -37,7 +37,6 @@ libconstants_la_SOURCES = \ geos_constants.fh \ constants.F90 -FMSconstants.$(FC_MODEXT): gfdl_constants.fh gfs_constants.fh geos_constants.fh constants_mod.$(FC_MODEXT): fmsconstants.$(FC_MODEXT) # Mod files are built and then installed as headers diff --git a/constants4/Makefile.am b/constants4/Makefile.am index 9bba1fddf1..d3480e194b 100644 --- a/constants4/Makefile.am +++ b/constants4/Makefile.am @@ -37,7 +37,6 @@ libconstants4_la_SOURCES = \ geos_constantsR4.fh \ constantsr4.F90 -fmsconstantsr4.$(FC_MODEXT): gfdl_constantsR4.fh gfs_constantsR4.fh geos_constantsR4.fh constantsr4_mod.$(FC_MODEXT): fmsconstantsr4.$(FC_MODEXT) # Mod files are built and then installed as headers diff --git a/diag_integral/Makefile.am b/diag_integral/Makefile.am index 6e5f904ee4..749d6c213a 100644 --- a/diag_integral/Makefile.am +++ b/diag_integral/Makefile.am @@ -35,11 +35,6 @@ libdiag_integral_la_SOURCES = diag_integral.F90\ include/diag_integral_r4.fh\ include/diag_integral_r8.fh -diag_integral_mod.$(FC_MODEXT): include/diag_integral.inc\ - include/diag_integral_r4.fh\ - include/diag_integral_r8.fh - - nodist_include_HEADERS = diag_integral_mod.$(FC_MODEXT) BUILT_SOURCES = diag_integral_mod.$(FC_MODEXT) diff --git a/diag_manager/Makefile.am b/diag_manager/Makefile.am index 13ea77d8b7..85931e6d67 100644 --- a/diag_manager/Makefile.am +++ b/diag_manager/Makefile.am @@ -42,28 +42,22 @@ libdiag_manager_la_SOURCES = \ fms_diag_outfield.F90 \ fms_diag_elem_weight_procs.F90 \ fms_diag_fieldbuff_update.F90 \ - fms_diag_bbox.F90 \ + fms_diag_bbox.F90 \ include/fms_diag_fieldbuff_update.inc \ include/fms_diag_fieldbuff_update.fh # Some mods are dependant on other mods in this dir. diag_data_mod.$(FC_MODEXT): fms_diag_bbox_mod.$(FC_MODEXT) diag_axis_mod.$(FC_MODEXT): diag_data_mod.$(FC_MODEXT) -diag_output_mod.$(FC_MODEXT): diag_axis_mod.$(FC_MODEXT) diag_data_mod.$(FC_MODEXT) -diag_util_mod.$(FC_MODEXT): diag_data_mod.$(FC_MODEXT) diag_axis_mod.$(FC_MODEXT) diag_output_mod.$(FC_MODEXT) \ - diag_grid_mod.$(FC_MODEXT) fms_diag_bbox_mod.$(FC_MODEXT) -diag_table_mod.$(FC_MODEXT): diag_data_mod.$(FC_MODEXT) diag_util_mod.$(FC_MODEXT) +diag_output_mod.$(FC_MODEXT): diag_axis_mod.$(FC_MODEXT) +diag_util_mod.$(FC_MODEXT): diag_data_mod.$(FC_MODEXT) diag_output_mod.$(FC_MODEXT) diag_grid_mod.$(FC_MODEXT) +diag_table_mod.$(FC_MODEXT): diag_util_mod.$(FC_MODEXT) fms_diag_axis_object_mod.$(FC_MODEXT): diag_data_mod.$(FC_MODEXT) fms_diag_time_utils_mod.$(FC_MODEXT) fms_diag_time_reduction_mod.$(FC_MODEXT): diag_data_mod.$(FC_MODEXT) fms_diag_elem_weight_procs_mod.$(FC_MODEXT): diag_data_mod.$(FC_MODEXT) -fms_diag_outfield_mod.$(FC_MODEXT): diag_data_mod.$(FC_MODEXT) fms_diag_elem_weight_procs_mod.$(FC_MODEXT) -fms_diag_fieldbuff_update_mod.$(FC_MODEXT): diag_data_mod.$(FC_MODEXT) diag_util_mod.$(FC_MODEXT) \ - fms_diag_outfield_mod.$(FC_MODEXT) fms_diag_elem_weight_procs_mod.$(FC_MODEXT) \ - fms_diag_bbox_mod.$(FC_MODEXT) -diag_manager_mod.$(FC_MODEXT): diag_axis_mod.$(FC_MODEXT) diag_data_mod.$(FC_MODEXT) diag_util_mod.$(FC_MODEXT) \ - diag_output_mod.$(FC_MODEXT) diag_grid_mod.$(FC_MODEXT) diag_table_mod.$(FC_MODEXT) \ - fms_diag_time_reduction_mod.$(FC_MODEXT) fms_diag_outfield_mod.$(FC_MODEXT) \ - fms_diag_fieldbuff_update_mod.$(FC_MODEXT) +fms_diag_outfield_mod.$(FC_MODEXT): fms_diag_elem_weight_procs_mod.$(FC_MODEXT) +fms_diag_fieldbuff_update_mod.$(FC_MODEXT): diag_util_mod.$(FC_MODEXT) fms_diag_outfield_mod.$(FC_MODEXT) fms_diag_elem_weight_procs_mod.$(FC_MODEXT) fms_diag_bbox_mod.$(FC_MODEXT) +diag_manager_mod.$(FC_MODEXT): diag_axis_mod.$(FC_MODEXT) diag_table_mod.$(FC_MODEXT) fms_diag_time_reduction_mod.$(FC_MODEXT) fms_diag_fieldbuff_update_mod.$(FC_MODEXT) # Mod files are built and then installed as headers. diff --git a/drifters/Makefile.am b/drifters/Makefile.am index f365f8e1f2..4848ce0cf6 100644 --- a/drifters/Makefile.am +++ b/drifters/Makefile.am @@ -46,8 +46,7 @@ libdrifters_la_SOURCES = drifters.F90 \ drifters_set_field.fh \ fms_switches.h -drifters_mod.$(FC_MODEXT): drifters_core_mod.$(FC_MODEXT) drifters_input_mod.$(FC_MODEXT) drifters_io_mod.$(FC_MODEXT) \ - drifters_comm_mod.$(FC_MODEXT) cloud_interpolator_mod.$(FC_MODEXT) +drifters_mod.$(FC_MODEXT): drifters_input_mod.$(FC_MODEXT) drifters_io_mod.$(FC_MODEXT) drifters_comm_mod.$(FC_MODEXT) cloud_interpolator_mod.$(FC_MODEXT) drifters_comm_mod.$(FC_MODEXT): drifters_core_mod.$(FC_MODEXT) # Mod files are built and then installed as headers. diff --git a/field_manager/Makefile.am b/field_manager/Makefile.am index 7d845e59a5..4afcd8e992 100644 --- a/field_manager/Makefile.am +++ b/field_manager/Makefile.am @@ -42,10 +42,9 @@ libfield_manager_la_SOURCES = \ include/fm_util_r4.fh \ include/fm_util_r8.fh -field_manager_mod.$(FC_MODEXT): parse.inc fm_yaml_mod.$(FC_MODEXT) \ - include/field_manager.inc include/field_manager_r4.fh include/field_manager_r8.fh -fm_util_mod.$(FC_MODEXT): field_manager_mod.$(FC_MODEXT) \ - include/fm_util.inc include/fm_util_r4.fh include/fm_util_r8.fh +field_manager_mod.$(FC_MODEXT): fm_yaml_mod.$(FC_MODEXT) + +fm_util_mod.$(FC_MODEXT): field_manager_mod.$(FC_MODEXT) # Mod files are built and then installed as headers. MODFILES = \ diff --git a/fms/Makefile.am b/fms/Makefile.am index ca8b107941..9ccc79c88b 100644 --- a/fms/Makefile.am +++ b/fms/Makefile.am @@ -51,25 +51,8 @@ libfms_la_SOURCES = \ fms_io_unstructured_save_restart.inc \ read_data_3d.inc -fms_mod.$(FC_MODEXT): fms_io_mod.$(FC_MODEXT) \ - fms.F90 \ - include/fms.inc \ - include/fms_r4.fh \ - include/fms_r8.fh +fms_mod.$(FC_MODEXT): fms_io_mod.$(FC_MODEXT) -fms_io_mod.$(FC_MODEXT): fms_io_unstructured_field_exist.inc \ - fms_io_unstructured_get_file_name.inc \ - fms_io_unstructured_register_restart_axis.inc \ - fms_io_unstructured_setup_one_field.inc read_data_4d.inc \ - fms_io_unstructured_file_unit.inc \ - fms_io_unstructured_get_file_unit.inc \ - fms_io_unstructured_register_restart_field.inc \ - read_data_2d.inc \ - write_data.inc \ - fms_io_unstructured_get_field_size.inc \ - fms_io_unstructured_read.inc \ - fms_io_unstructured_save_restart.inc \ - read_data_3d.inc # Mod files are built and then installed as headers. MODFILES = \ diff --git a/fms2_io/Makefile.am b/fms2_io/Makefile.am index 3938fa4e71..605eeca8b9 100644 --- a/fms2_io/Makefile.am +++ b/fms2_io/Makefile.am @@ -58,22 +58,15 @@ libfms2_io_la_SOURCES = \ include/unpack_data.inc # Some mods are dependant on other mods in this dir. -fms2_io_mod.$(FC_MODEXT): fms_io_utils_mod.$(FC_MODEXT) netcdf_io_mod.$(FC_MODEXT) fms_netcdf_domain_io_mod.$(FC_MODEXT) \ - fms_netcdf_unstructured_domain_io_mod.$(FC_MODEXT) blackboxio.$(FC_MODEXT) -fms_io_utils_mod.$(FC_MODEXT): include/array_utils.inc include/array_utils_char.inc \ - include/get_data_type_string.inc -netcdf_io_mod.$(FC_MODEXT): fms_io_utils_mod.$(FC_MODEXT) include/netcdf_add_restart_variable.inc include/netcdf_read_data.inc \ - include/netcdf_write_data.inc include/register_global_attribute.inc \ - include/register_variable_attribute.inc include/get_global_attribute.inc \ - include/get_variable_attribute.inc include/compressed_write.inc include/compressed_read.inc \ - include/gather_data_bc.inc include/scatter_data_bc.inc include/unpack_data.inc -fms_netcdf_domain_io_mod.$(FC_MODEXT): fms_io_utils_mod.$(FC_MODEXT) netcdf_io_mod.$(FC_MODEXT) include/register_domain_restart_variable.inc \ - include/domain_read.inc include/domain_write.inc include/compute_global_checksum.inc -fms_netcdf_unstructured_domain_io_mod.$(FC_MODEXT): fms_io_utils_mod.$(FC_MODEXT) netcdf_io_mod.$(FC_MODEXT) \ - include/register_unstructured_domain_restart_variable.inc \ - include/unstructured_domain_read.inc include/unstructured_domain_write.inc -blackboxio.$(FC_MODEXT): fms_io_utils_mod.$(FC_MODEXT) netcdf_io_mod.$(FC_MODEXT) fms_netcdf_domain_io_mod.$(FC_MODEXT) \ - fms_netcdf_unstructured_domain_io_mod.$(FC_MODEXT) +fms2_io_mod.$(FC_MODEXT): netcdf_io_mod.$(FC_MODEXT) fms_netcdf_domain_io_mod.$(FC_MODEXT) fms_netcdf_unstructured_domain_io_mod.$(FC_MODEXT) blackboxio.$(FC_MODEXT) + +netcdf_io_mod.$(FC_MODEXT): fms_io_utils_mod.$(FC_MODEXT) + +fms_netcdf_domain_io_mod.$(FC_MODEXT): netcdf_io_mod.$(FC_MODEXT) + +fms_netcdf_unstructured_domain_io_mod.$(FC_MODEXT): netcdf_io_mod.$(FC_MODEXT) + +blackboxio.$(FC_MODEXT): fms_netcdf_domain_io_mod.$(FC_MODEXT) fms_netcdf_unstructured_domain_io_mod.$(FC_MODEXT) # Mod files are built and then installed as headers. MODFILES = \ diff --git a/global/Makefile.am b/global/Makefile.am new file mode 100644 index 0000000000..d35979c76f --- /dev/null +++ b/global/Makefile.am @@ -0,0 +1,39 @@ +#*********************************************************************** +#* GNU Lesser General Public License +#* +#* This file is part of the GFDL Flexible Modeling System (FMS). +#* +#* FMS is free software: you can redistribute it and/or modify it under +#* the terms of the GNU Lesser General Public License as published by +#* the Free Software Foundation, either version 3 of the License, or (at +#* your option) any later version. +#* +#* FMS is distributed in the hope that it will be useful, but WITHOUT +#* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +#* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +#* for more details. +#* +#* You should have received a copy of the GNU Lesser General Public +#* License along with FMS. If not, see . +#*********************************************************************** + +# This is an automake file for the global directory of the FMS +# package. +# +# This directory only holds the libFMS.F90 file, which gets compiled into +# a module just named 'fms'. It is meant to access all public routines/types/variables from +# the other modules in fms. + +# Ryan Mulhall 1/19/24 + +AM_CPPFLAGS = -I${top_srcdir}/include +AM_FCFLAGS = $(FC_MODINC). $(FC_MODOUT)$(MODDIR) + +noinst_LTLIBRARIES = libfms_global.la + +libfms_global_la_SOURCES = fms_global.F90 + +BUILT_SOURCES = fms_global_mod.$(FC_MODEXT) +nodist_include_HEADERS = fms_global_mod.$(FC_MODEXT) + +include $(top_srcdir)/mkmods.mk diff --git a/libFMS.F90 b/global/fms_global.F90 similarity index 99% rename from libFMS.F90 rename to global/fms_global.F90 index 42879958f5..a398eb742d 100644 --- a/libFMS.F90 +++ b/global/fms_global.F90 @@ -62,7 +62,7 @@ !> @addtogroup FMS !> @{ -module fms +module fms_global_mod !> import each FMS module's public routines/functions, interfaces, and variables !! done explicitly to avoid including any unwanted/depracated routines/modules @@ -841,6 +841,6 @@ module fms character(len=*), parameter, public :: version_FMS = version private :: version -end module fms +end module fms_global_mod !> @} ! close documentation grouping diff --git a/horiz_interp/Makefile.am b/horiz_interp/Makefile.am index 55f8f1cbbd..602c2aa815 100644 --- a/horiz_interp/Makefile.am +++ b/horiz_interp/Makefile.am @@ -61,9 +61,8 @@ horiz_interp_bicubic_mod.$(FC_MODEXT): horiz_interp_type_mod.$(FC_MODEXT) horiz_interp_bilinear_mod.$(FC_MODEXT): horiz_interp_type_mod.$(FC_MODEXT) horiz_interp_conserve_mod.$(FC_MODEXT): horiz_interp_type_mod.$(FC_MODEXT) horiz_interp_spherical_mod.$(FC_MODEXT): horiz_interp_type_mod.$(FC_MODEXT) -horiz_interp_mod.$(FC_MODEXT): horiz_interp_bicubic_mod.$(FC_MODEXT) horiz_interp_type_mod.$(FC_MODEXT) \ - horiz_interp_bilinear_mod.$(FC_MODEXT) horiz_interp_conserve_mod.$(FC_MODEXT) \ - horiz_interp_spherical_mod.$(FC_MODEXT) + +horiz_interp_mod.$(FC_MODEXT): horiz_interp_conserve_mod.$(FC_MODEXT) horiz_interp_spherical_mod.$(FC_MODEXT) horiz_interp_bicubic_mod.$(FC_MODEXT) horiz_interp_bilinear_mod.$(FC_MODEXT) # Mod files are built and then installed as headers. MODFILES = \ diff --git a/libFMS/Makefile.am b/libFMS/Makefile.am index 4dea086bf2..38e38fc5be 100644 --- a/libFMS/Makefile.am +++ b/libFMS/Makefile.am @@ -64,7 +64,7 @@ libFMS_la_LIBADD += $(top_builddir)/diag_integral/libdiag_integral.la libFMS_la_LIBADD += $(top_builddir)/sat_vapor_pres/libsat_vapor_pres.la libFMS_la_LIBADD += $(top_builddir)/parser/libparser.la libFMS_la_LIBADD += $(top_builddir)/string_utils/libstring_utils.la -libFMS_la_LIBADD += $(top_builddir)/libFMS_mod.la +libFMS_la_LIBADD += $(top_builddir)/global/libfms_global.la libFMS_la_SOURCES = nodist_EXTRA_libFMS_la_SOURCES = dummy.f90 diff --git a/mkmods.mk b/mkmods.mk index 65c615fc42..3cf32045f7 100644 --- a/mkmods.mk +++ b/mkmods.mk @@ -1,6 +1,6 @@ # Ensure the $(MODDIR) exists -SUFFIXES = .$(FC_MODEXT) _mod.$(FC_MODEXT) +SUFFIXES = *.$(FC_MODEXT) _mod.$(FC_MODEXT) .F90.$(FC_MODEXT) .F90_mod.$(FC_MODEXT) .f90.$(FC_MODEXT) .f90_mod.$(FC_MODEXT): test -d $(MODDIR) || mkdir -p $(MODDIR) $(PPFCCOMPILE) -c $< diff --git a/monin_obukhov/Makefile.am b/monin_obukhov/Makefile.am index a40c96640a..5c444203ac 100644 --- a/monin_obukhov/Makefile.am +++ b/monin_obukhov/Makefile.am @@ -37,16 +37,7 @@ libmonin_obukhov_la_SOURCES = \ include/monin_obukhov_inter_r8.fh \ include/monin_obukhov_inter.inc -monin_obukhov_inter.$(FC_MODEXT): \ - include/monin_obukhov_inter_r4.fh \ - include/monin_obukhov_inter_r8.fh \ - include/monin_obukhov_inter.inc - -monin_obukhov_mod.$(FC_MODEXT): \ - monin_obukhov_inter.$(FC_MODEXT) \ - include/monin_obukhov_r4.fh \ - include/monin_obukhov_r8.fh \ - include/monin_obukhov.inc +monin_obukhov_mod.$(FC_MODEXT): monin_obukhov_inter.$(FC_MODEXT) # Mod files are built and then installed as headers. MODFILES = \ diff --git a/mosaic2/Makefile.am b/mosaic2/Makefile.am index 8801461b03..f333e00841 100644 --- a/mosaic2/Makefile.am +++ b/mosaic2/Makefile.am @@ -37,8 +37,7 @@ include/mosaic2_r4.fh include/mosaic2_r8.fh include/mosaic2.inc \ include/grid2_r4.fh include/grid2_r8.fh include/grid2.inc # Some mods are dependant on other mods in this dir. -grid2_mod.$(FC_MODEXT): mosaic2_mod.$(FC_MODEXT) include/grid2_r4.fh include/grid2_r8.fh include/grid2.inc -mosaic2_mod.$(FC_MODEXT): include/mosaic2_r4.fh include/mosaic2_r8.fh include/mosaic2.inc +grid2_mod.$(FC_MODEXT): mosaic2_mod.$(FC_MODEXT) MODFILES = \ mosaic2_mod.$(FC_MODEXT) \ diff --git a/mpp/Makefile.am b/mpp/Makefile.am index c7e482ea13..76f29a08ad 100644 --- a/mpp/Makefile.am +++ b/mpp/Makefile.am @@ -128,111 +128,12 @@ libmpp_la_SOURCES = \ include/mpp_write_unlimited_axis.fh \ include/system_clock.fh -mpp_mod.$(FC_MODEXT): \ - mpp_parameter_mod.$(FC_MODEXT) \ - mpp_data_mod.$(FC_MODEXT) \ - include/mpp_util.inc \ - include/mpp_error_a_a.fh \ - include/mpp_error_a_s.fh \ - include/mpp_error_s_a.fh \ - include/mpp_error_s_s.fh \ - include/mpp_util_mpi.inc \ - include/mpp_util_nocomm.inc \ - include/mpp_comm.inc \ - include/mpp_chksum.fh \ - include/mpp_chksum_int.fh \ - include/mpp_chksum_scalar.fh \ - include/mpp_comm_mpi.inc \ - include/mpp_alltoall_mpi.fh \ - include/mpp_reduce_mpi.fh \ - include/mpp_sum_mpi.fh \ - include/mpp_sum.inc \ - include/mpp_sum_mpi_ad.fh \ - include/mpp_sum_ad.inc \ - include/mpp_transmit_mpi.fh \ - include/mpp_transmit.inc \ - include/mpp_type_mpi.fh \ - include/mpp_comm_nocomm.inc \ - include/mpp_alltoall_nocomm.fh \ - include/mpp_reduce_nocomm.fh \ - include/mpp_sum_nocomm.fh \ - include/mpp_sum_nocomm_ad.fh \ - include/mpp_transmit_nocomm.fh \ - include/mpp_type_nocomm.fh \ - include/mpp_gather.fh \ - include/mpp_scatter.fh \ - include/system_clock.fh -mpp_data_mod.$(FC_MODEXT): \ - mpp_parameter_mod.$(FC_MODEXT) \ - include/mpp_data_mpi.inc \ - include/mpp_data_nocomm.inc -mpp_utilities_mod.$(FC_MODEXT): \ - mpp_mod.$(FC_MODEXT) \ - mpp_efp_mod.$(FC_MODEXT) -mpp_domains_mod.$(FC_MODEXT): \ - mpp_data_mod.$(FC_MODEXT) \ - mpp_parameter_mod.$(FC_MODEXT) \ - mpp_mod.$(FC_MODEXT) \ - mpp_memutils_mod.$(FC_MODEXT) \ - mpp_efp_mod.$(FC_MODEXT) \ - include/mpp_define_nest_domains.inc \ - include/mpp_domains_util.inc \ - include/mpp_domains_comm.inc \ - include/mpp_domains_define.inc \ - include/mpp_domains_misc.inc \ - include/mpp_do_check.fh \ - include/mpp_do_checkV.fh \ - include/mpp_do_get_boundary.fh \ - include/mpp_do_get_boundary_ad.fh \ - include/mpp_do_redistribute.fh \ - include/mpp_do_update.fh \ - include/mpp_do_updateV.fh \ - include/mpp_do_updateV_ad.fh \ - include/mpp_do_updateV_nonblock.fh \ - include/mpp_do_update_ad.fh \ - include/mpp_do_update_nest.fh \ - include/mpp_do_update_nonblock.fh \ - include/mpp_get_boundary.fh \ - include/mpp_get_boundary_ad.fh \ - include/mpp_group_update.fh \ - include/group_update_pack.inc \ - include/group_update_unpack.inc \ - include/mpp_update_domains2D.fh \ - include/mpp_update_domains2D_ad.fh \ - include/mpp_update_domains2D_nonblock.fh \ - include/mpp_update_nest_domains.fh \ - include/mpp_domains_reduce.inc \ - include/mpp_do_global_field.fh \ - include/mpp_do_global_field_ad.fh \ - include/mpp_global_field.fh \ - include/mpp_global_field_ad.fh \ - include/mpp_global_reduce.fh \ - include/mpp_global_sum.fh \ - include/mpp_global_sum_ad.fh \ - include/mpp_global_sum_tl.fh \ - include/mpp_unstruct_domain.inc \ - include/mpp_global_field_ug.fh \ - include/mpp_unstruct_pass_data.fh -mpp_io_mod.$(FC_MODEXT): \ - mpp_parameter_mod.$(FC_MODEXT) \ - mpp_mod.$(FC_MODEXT) \ - mpp_domains_mod.$(FC_MODEXT) \ - include/mpp_io_util.inc \ - include/mpp_io_misc.inc \ - include/mpp_io_connect.inc \ - include/mpp_io_read.inc \ - include/mpp_read_2Ddecomp.fh \ - include/mpp_read_compressed.fh \ - include/mpp_read_distributed_ascii.inc \ - include/mpp_read_distributed_ascii.fh \ - include/mpp_io_write.inc \ - include/mpp_write.fh \ - include/mpp_write_2Ddecomp.fh \ - include/mpp_write_compressed.fh \ - include/mpp_write_unlimited_axis.fh \ - include/mpp_io_unstructured_write.inc \ - include/mpp_io_unstructured_read.inc -mpp_efp_mod.$(FC_MODEXT): mpp_parameter_mod.$(FC_MODEXT) mpp_mod.$(FC_MODEXT) +mpp_mod.$(FC_MODEXT): mpp_data_mod.$(FC_MODEXT) +mpp_data_mod.$(FC_MODEXT): mpp_parameter_mod.$(FC_MODEXT) +mpp_utilities_mod.$(FC_MODEXT): mpp_mod.$(FC_MODEXT) mpp_efp_mod.$(FC_MODEXT) +mpp_domains_mod.$(FC_MODEXT): mpp_memutils_mod.$(FC_MODEXT) mpp_efp_mod.$(FC_MODEXT) +mpp_io_mod.$(FC_MODEXT): mpp_mod.$(FC_MODEXT) mpp_domains_mod.$(FC_MODEXT) +mpp_efp_mod.$(FC_MODEXT): mpp_mod.$(FC_MODEXT) mpp_memutils_mod.$(FC_MODEXT): mpp_mod.$(FC_MODEXT) mpp_pset_mod.$(FC_MODEXT): mpp_mod.$(FC_MODEXT) diff --git a/sat_vapor_pres/Makefile.am b/sat_vapor_pres/Makefile.am index 2511061c62..3f37724f53 100644 --- a/sat_vapor_pres/Makefile.am +++ b/sat_vapor_pres/Makefile.am @@ -41,15 +41,7 @@ libsat_vapor_pres_la_SOURCES = \ include/sat_vapor_pres_k.inc # Some mods are dependant on other mods in this dir. -sat_vapor_pres_mod.$(FC_MODEXT): \ - sat_vapor_pres_k_mod.$(FC_MODEXT) \ - include/sat_vapor_pres_r4.fh \ - include/sat_vapor_pres_r8.fh \ - include/sat_vapor_pres.inc -sat_vapor_pres_k_mod.$(FC_MODEXT): \ - include/sat_vapor_pres_k_r4.fh \ - include/sat_vapor_pres_k_r8.fh \ - include/sat_vapor_pres_k.inc +sat_vapor_pres_mod.$(FC_MODEXT): sat_vapor_pres_k_mod.$(FC_MODEXT) # Mod files are built and then installed as headers. MODFILES = \ diff --git a/topography/Makefile.am b/topography/Makefile.am index 14a2249b8c..08c2c72c1d 100644 --- a/topography/Makefile.am +++ b/topography/Makefile.am @@ -41,16 +41,7 @@ libtopography_la_SOURCES = \ include/gaussian_topog_r8.fh \ include/gaussian_topog.inc -gaussian_topog_mod.$(FC_MODEXT): \ - include/gaussian_topog_r4.fh \ - include/gaussian_topog_r8.fh \ - include/gaussian_topog.inc - -topography_mod.$(FC_MODEXT): \ - gaussian_topog_mod.$(FC_MODEXT) \ - include/topography_r4.fh \ - include/topography_r8.fh \ - include/topography.inc +topography_mod.$(FC_MODEXT): gaussian_topog_mod.$(FC_MODEXT) # Mod files are built and then installed as headers. MODFILES = \ diff --git a/tridiagonal/Makefile.am b/tridiagonal/Makefile.am index d8b90c409b..3140d89538 100644 --- a/tridiagonal/Makefile.am +++ b/tridiagonal/Makefile.am @@ -35,8 +35,6 @@ libtridiagonal_la_SOURCES = tridiagonal.F90 \ include/tridiagonal_r4.fh \ include/tridiagonal_r8.fh -# Mod file depends on its o file, is built and then installed. -tridiagonal.lo: tridiagonal_mod.$(FC_MODEXT) BUILT_SOURCES = tridiagonal_mod.$(FC_MODEXT) nodist_include_HEADERS = tridiagonal_mod.$(FC_MODEXT) From 3e3a4371e2de8ef6bc489ca9441a8154dc493e31 Mon Sep 17 00:00:00 2001 From: rem1776 Date: Fri, 19 Jan 2024 17:56:47 -0500 Subject: [PATCH 2/2] update ci to run with parallel make --- .github/workflows/github_autotools_gnu.yml | 4 ++-- .github/workflows/github_autotools_intel.yml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/github_autotools_gnu.yml b/.github/workflows/github_autotools_gnu.yml index 8df7021bb9..195e97e4ac 100644 --- a/.github/workflows/github_autotools_gnu.yml +++ b/.github/workflows/github_autotools_gnu.yml @@ -37,8 +37,8 @@ jobs: if: ${{ matrix.conf-flag == '--disable-setting-flags' }} run: ./configure ${DISTCHECK_CONFIGURE_FLAGS} FCFLAGS="-fdefault-real-8 -fdefault-double-8 -fcray-pointer -ffree-line-length-none -I/usr/include $FCFLAGS" || cat config.log - name: Build the library - run: make distcheck + run: make -j distcheck if: ${{ matrix.conf-flag != '--with-mpi=no' }} - name: Build the library (without test suite for serial build) - run: make + run: make -j if: ${{ matrix.conf-flag == '--with-mpi=no' }} diff --git a/.github/workflows/github_autotools_intel.yml b/.github/workflows/github_autotools_intel.yml index a09f8c87d3..bd7fa18238 100644 --- a/.github/workflows/github_autotools_intel.yml +++ b/.github/workflows/github_autotools_intel.yml @@ -57,6 +57,6 @@ jobs: - name: Configure run: autoreconf -if ./configure.ac && ./configure --with-yaml - name: Compile - run: make -j || make + run: make -j - name: Run test suite run: make check LD_LIBRARY_PATH="/libs/lib:$LD_LIBRARY_PATH" TEST_VERBOSE=1