esmf: remove @:7.0 conditionals with associated patches (#50030)

This commit is contained in:
Gerhard Theurich 2025-04-14 00:15:43 -07:00 committed by GitHub
parent 9a37a6fcb1
commit fa9dcb43bd
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 0 additions and 307 deletions

View File

@ -1,18 +0,0 @@
--- a/build/common.mk 2017-11-25 17:16:31.000000000 +1100
+++ b/build/common.mk 2017-11-25 17:26:20.000000000 +1100
@@ -3415,11 +3415,11 @@
mkdir tmp_$$NEXTLIB ;\
cd tmp_$$NEXTLIB ;\
$(ESMF_AREXTRACT) ../$$NEXTLIB.a ;\
- echo $(ESMF_SL_LIBLINKER) $(ESMF_SL_LIBOPTS) -o $(ESMF_LDIR)/$$NEXTLIB.$(ESMF_SL_SUFFIX) *.o $(ESMF_SL_LIBLIBS) ;\
- $(ESMF_SL_LIBLINKER) $(ESMF_SL_LIBOPTS) -o $(ESMF_LDIR)/$$NEXTLIB.$(ESMF_SL_SUFFIX) *.o $(ESMF_SL_LIBLIBS) ;\
+ echo $(ESMF_SL_LIBLINKER) $(ESMF_SL_LIBOPTS) -Wl,-install_name -Wl,@rpath/$$NEXTLIB.$(ESMF_SL_SUFFIX) -o $(ESMF_LDIR)/$$NEXTLIB.$(ESMF_SL_SUFFIX) *.o $(ESMF_SL_LIBLIBS) ;\
+ $(ESMF_SL_LIBLINKER) $(ESMF_SL_LIBOPTS) -Wl,-install_name -Wl,@rpath/$$NEXTLIB.$(ESMF_SL_SUFFIX) -o $(ESMF_LDIR)/$$NEXTLIB.$(ESMF_SL_SUFFIX) *.o $(ESMF_SL_LIBLIBS) ;\
echo Converting $$NEXTLIB.a to $$NEXTLIB\_fullylinked.$(ESMF_SL_SUFFIX) ;\
- echo $(ESMF_SL_LIBLINKER) $(ESMF_SL_LIBOPTS) -o $(ESMF_LDIR)/$$NEXTLIB\_fullylinked.$(ESMF_SL_SUFFIX) *.o $(ESMF_CXXLINKOPTS) $(ESMF_CXXLINKPATHS) $(ESMF_CXXLINKRPATHS) $(ESMF_CXXLINKLIBS) ;\
- $(ESMF_SL_LIBLINKER) $(ESMF_SL_LIBOPTS) -o $(ESMF_LDIR)/$$NEXTLIB\_fullylinked.$(ESMF_SL_SUFFIX) *.o $(ESMF_CXXLINKOPTS) $(ESMF_CXXLINKPATHS) $(ESMF_CXXLINKRPATHS) $(ESMF_CXXLINKLIBS) ;\
+ echo $(ESMF_SL_LIBLINKER) $(ESMF_SL_LIBOPTS) -Wl,-install_name -Wl,@rpath/$$NEXTLIB\_fullylinked.$(ESMF_SL_SUFFIX) -o $(ESMF_LDIR)/$$NEXTLIB\_fullylinked.$(ESMF_SL_SUFFIX) *.o $(ESMF_CXXLINKOPTS) $(ESMF_CXXLINKPATHS) $(ESMF_CXXLINKRPATHS) $(ESMF_CXXLINKLIBS) ;\
+ $(ESMF_SL_LIBLINKER) $(ESMF_SL_LIBOPTS) -Wl,-install_name -Wl,@rpath/$$NEXTLIB\_fullylinked.$(ESMF_SL_SUFFIX) -o $(ESMF_LDIR)/$$NEXTLIB\_fullylinked.$(ESMF_SL_SUFFIX) *.o $(ESMF_CXXLINKOPTS) $(ESMF_CXXLINKPATHS) $(ESMF_CXXLINKRPATHS) $(ESMF_CXXLINKLIBS) ;\
cd .. ;\
$(ESMF_RM) -r tmp_$$NEXTLIB ;\
fi ;\

View File

@ -1,26 +0,0 @@
From 3706bf758012daebadef83d6575c477aeff9c89b Mon Sep 17 00:00:00 2001
From: Walter Spector <wws@sgi.com>
Date: Fri, 29 Apr 2016 12:57:16 -0700
Subject: [PATCH] Fix a file open test in the Moab I/O code that gcc 6.1
noticed.
---
src/Infrastructure/Mesh/src/Moab/io/ReadABAQUS.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/Infrastructure/Mesh/src/Moab/io/ReadABAQUS.cpp b/src/Infrastructure/Mesh/src/Moab/io/ReadABAQUS.cpp
index 1c44057..89e5f23 100644
--- a/src/Infrastructure/Mesh/src/Moab/io/ReadABAQUS.cpp
+++ b/src/Infrastructure/Mesh/src/Moab/io/ReadABAQUS.cpp
@@ -105,7 +105,7 @@ void ReadABAQUS::reset()
ReadABAQUS::~ReadABAQUS()
{
mdbImpl->release_interface(readMeshIface);
- if (NULL != abFile)
+ if (abFile.is_open())
abFile.close();
}
--
2.7.4

View File

@ -1,17 +0,0 @@
--- old/build_config/Linux.intel.default/build_rules.mk 2019-06-27 15:55:30.857527494 -0400
+++ new/build_config/Linux.intel.default/build_rules.mk 2019-06-27 15:56:13.007089627 -0400
@@ -187,10 +187,10 @@
############################################################
# OpenMP compiler and linker flags
#
-ESMF_OPENMP_F90COMPILEOPTS += -openmp
-ESMF_OPENMP_CXXCOMPILEOPTS += -openmp
-ESMF_OPENMP_F90LINKOPTS += -openmp
-ESMF_OPENMP_CXXLINKOPTS += -openmp
+ESMF_OPENMP_F90COMPILEOPTS += -qopenmp
+ESMF_OPENMP_CXXCOMPILEOPTS += -qopenmp
+ESMF_OPENMP_F90LINKOPTS += -qopenmp
+ESMF_OPENMP_CXXLINKOPTS += -qopenmp
############################################################
# Set rpath syntax

View File

@ -1,225 +0,0 @@
From 34de0ccf556ba75d35c9687dae5d9f666a1b2a18 Mon Sep 17 00:00:00 2001
From: Walter Spector <wws@sgi.com>
Date: Tue, 22 Nov 2016 10:57:53 -0800
Subject: [PATCH] Detect and use libmpifort when available in mvaphich2
configurations.
---
build_config/Darwin.absoft.default/build_rules.mk | 1 +
build_config/Darwin.g95.default/build_rules.mk | 1 +
build_config/Darwin.gfortran.default/build_rules.mk | 1 +
build_config/Darwin.gfortranclang.default/build_rules.mk | 1 +
build_config/Darwin.intel.default/build_rules.mk | 1 +
build_config/Darwin.nag.default/build_rules.mk | 1 +
build_config/Linux.absoft.default/build_rules.mk | 1 +
build_config/Linux.g95.default/build_rules.mk | 1 +
build_config/Linux.gfortran.default/build_rules.mk | 1 +
build_config/Linux.gfortranclang.default/build_rules.mk | 1 +
build_config/Linux.intel.default/build_rules.mk | 1 +
build_config/Linux.intelgcc.default/build_rules.mk | 1 +
build_config/Linux.lahey.default/build_rules.mk | 1 +
build_config/Linux.nag.default/build_rules.mk | 1 +
build_config/Linux.pgi.default/build_rules.mk | 1 +
scripts/libs.mvapich2f90 | 10 ++++++++++
16 files changed, 25 insertions(+)
create mode 100755 scripts/libs.mvapich2f90
diff --git a/build_config/Darwin.absoft.default/build_rules.mk b/build_config/Darwin.absoft.default/build_rules.mk
index 059ff82..88a95fe 100644
--- a/build_config/Darwin.absoft.default/build_rules.mk
+++ b/build_config/Darwin.absoft.default/build_rules.mk
@@ -53,6 +53,7 @@ ifeq ($(ESMF_COMM),mvapich2)
# Mvapich2 ---------------------------------------------------
ESMF_F90DEFAULT = mpif90
ESMF_CXXDEFAULT = mpicxx
+ESMF_CXXLINKLIBS += $(shell $(ESMF_DIR)/scripts/libs.mvapich2f90)
ESMF_MPIRUNDEFAULT = mpirun $(ESMF_MPILAUNCHOPTIONS)
ESMF_MPIMPMDRUNDEFAULT = mpiexec $(ESMF_MPILAUNCHOPTIONS)
else
diff --git a/build_config/Darwin.g95.default/build_rules.mk b/build_config/Darwin.g95.default/build_rules.mk
index 9789b26..a7bf89c 100644
--- a/build_config/Darwin.g95.default/build_rules.mk
+++ b/build_config/Darwin.g95.default/build_rules.mk
@@ -54,6 +54,7 @@ ifeq ($(ESMF_COMM),mvapich2)
# Mvapich2 ---------------------------------------------------
ESMF_F90DEFAULT = mpif90
ESMF_CXXDEFAULT = mpicxx
+ESMF_CXXLINKLIBS += $(shell $(ESMF_DIR)/scripts/libs.mvapich2f90)
ESMF_MPIRUNDEFAULT = mpirun $(ESMF_MPILAUNCHOPTIONS)
ESMF_MPIMPMDRUNDEFAULT = mpiexec $(ESMF_MPILAUNCHOPTIONS)
else
diff --git a/build_config/Darwin.gfortran.default/build_rules.mk b/build_config/Darwin.gfortran.default/build_rules.mk
index 96a2a4f..2e05248 100644
--- a/build_config/Darwin.gfortran.default/build_rules.mk
+++ b/build_config/Darwin.gfortran.default/build_rules.mk
@@ -53,6 +53,7 @@ ifeq ($(ESMF_COMM),mvapich2)
# Mvapich2 ---------------------------------------------------
ESMF_F90DEFAULT = mpif90
ESMF_CXXDEFAULT = mpicxx
+ESMF_CXXLINKLIBS += $(shell $(ESMF_DIR)/scripts/libs.mvapich2f90)
ESMF_MPIRUNDEFAULT = mpirun $(ESMF_MPILAUNCHOPTIONS)
ESMF_MPIMPMDRUNDEFAULT = mpiexec $(ESMF_MPILAUNCHOPTIONS)
else
diff --git a/build_config/Darwin.gfortranclang.default/build_rules.mk b/build_config/Darwin.gfortranclang.default/build_rules.mk
index da52f08..cf90636 100644
--- a/build_config/Darwin.gfortranclang.default/build_rules.mk
+++ b/build_config/Darwin.gfortranclang.default/build_rules.mk
@@ -56,6 +56,7 @@ ifeq ($(ESMF_COMM),mvapich2)
# Mvapich2 ---------------------------------------------------
ESMF_F90DEFAULT = mpif90
ESMF_CXXDEFAULT = mpicxx
+ESMF_CXXLINKLIBS += $(shell $(ESMF_DIR)/scripts/libs.mvapich2f90)
ESMF_MPIRUNDEFAULT = mpirun $(ESMF_MPILAUNCHOPTIONS)
ESMF_MPIMPMDRUNDEFAULT = mpiexec $(ESMF_MPILAUNCHOPTIONS)
else
diff --git a/build_config/Darwin.intel.default/build_rules.mk b/build_config/Darwin.intel.default/build_rules.mk
index f6593f1..b851691 100644
--- a/build_config/Darwin.intel.default/build_rules.mk
+++ b/build_config/Darwin.intel.default/build_rules.mk
@@ -53,6 +53,7 @@ ifeq ($(ESMF_COMM),mvapich2)
# Mvapich2 ---------------------------------------------------
ESMF_F90DEFAULT = mpif90
ESMF_CXXDEFAULT = mpicxx
+ESMF_CXXLINKLIBS += $(shell $(ESMF_DIR)/scripts/libs.mvapich2f90)
ESMF_MPIRUNDEFAULT = mpirun $(ESMF_MPILAUNCHOPTIONS)
ESMF_MPIMPMDRUNDEFAULT = mpiexec $(ESMF_MPILAUNCHOPTIONS)
else
diff --git a/build_config/Darwin.nag.default/build_rules.mk b/build_config/Darwin.nag.default/build_rules.mk
index 4ee8689..1dd172d 100644
--- a/build_config/Darwin.nag.default/build_rules.mk
+++ b/build_config/Darwin.nag.default/build_rules.mk
@@ -53,6 +53,7 @@ ifeq ($(ESMF_COMM),mvapich2)
# Mvapich2 ---------------------------------------------------
ESMF_F90DEFAULT = mpif90
ESMF_CXXDEFAULT = mpicxx
+ESMF_CXXLINKLIBS += $(shell $(ESMF_DIR)/scripts/libs.mvapich2f90)
ESMF_MPIRUNDEFAULT = mpirun $(ESMF_MPILAUNCHOPTIONS)
ESMF_MPIMPMDRUNDEFAULT = mpiexec $(ESMF_MPILAUNCHOPTIONS)
else
diff --git a/build_config/Linux.absoft.default/build_rules.mk b/build_config/Linux.absoft.default/build_rules.mk
index 7a2314e..43231c9 100644
--- a/build_config/Linux.absoft.default/build_rules.mk
+++ b/build_config/Linux.absoft.default/build_rules.mk
@@ -53,6 +53,7 @@ ifeq ($(ESMF_COMM),mvapich2)
# Mvapich2 ---------------------------------------------------
ESMF_F90DEFAULT = mpif90
ESMF_CXXDEFAULT = mpicxx
+ESMF_CXXLINKLIBS += $(shell $(ESMF_DIR)/scripts/libs.mvapich2f90)
ESMF_MPIRUNDEFAULT = mpirun $(ESMF_MPILAUNCHOPTIONS)
ESMF_MPIMPMDRUNDEFAULT = mpiexec $(ESMF_MPILAUNCHOPTIONS)
else
diff --git a/build_config/Linux.g95.default/build_rules.mk b/build_config/Linux.g95.default/build_rules.mk
index 5f45593..5d71e59 100644
--- a/build_config/Linux.g95.default/build_rules.mk
+++ b/build_config/Linux.g95.default/build_rules.mk
@@ -54,6 +54,7 @@ ifeq ($(ESMF_COMM),mvapich2)
# Mvapich2 ---------------------------------------------------
ESMF_F90DEFAULT = mpif90
ESMF_CXXDEFAULT = mpicxx
+ESMF_CXXLINKLIBS += $(shell $(ESMF_DIR)/scripts/libs.mvapich2f90)
ESMF_MPIRUNDEFAULT = mpirun $(ESMF_MPILAUNCHOPTIONS)
ESMF_MPIMPMDRUNDEFAULT = mpiexec $(ESMF_MPILAUNCHOPTIONS)
else
diff --git a/build_config/Linux.gfortran.default/build_rules.mk b/build_config/Linux.gfortran.default/build_rules.mk
index 47b55de..2954eab 100644
--- a/build_config/Linux.gfortran.default/build_rules.mk
+++ b/build_config/Linux.gfortran.default/build_rules.mk
@@ -61,6 +61,7 @@ ifeq ($(ESMF_COMM),mvapich2)
# Mvapich2 ---------------------------------------------------
ESMF_F90DEFAULT = mpif90
ESMF_CXXDEFAULT = mpicxx
+ESMF_CXXLINKLIBS += $(shell $(ESMF_DIR)/scripts/libs.mvapich2f90)
ESMF_MPIRUNDEFAULT = mpirun $(ESMF_MPILAUNCHOPTIONS)
ESMF_MPIMPMDRUNDEFAULT = mpiexec $(ESMF_MPILAUNCHOPTIONS)
else
diff --git a/build_config/Linux.gfortranclang.default/build_rules.mk b/build_config/Linux.gfortranclang.default/build_rules.mk
index 4c58349..6a68841 100644
--- a/build_config/Linux.gfortranclang.default/build_rules.mk
+++ b/build_config/Linux.gfortranclang.default/build_rules.mk
@@ -64,6 +64,7 @@ ifeq ($(ESMF_COMM),mvapich2)
# Mvapich2 ---------------------------------------------------
ESMF_F90DEFAULT = mpif90
ESMF_CXXDEFAULT = mpicxx
+ESMF_CXXLINKLIBS += $(shell $(ESMF_DIR)/scripts/libs.mvapich2f90)
ESMF_MPIRUNDEFAULT = mpirun $(ESMF_MPILAUNCHOPTIONS)
ESMF_MPIMPMDRUNDEFAULT = mpiexec $(ESMF_MPILAUNCHOPTIONS)
else
diff --git a/build_config/Linux.intel.default/build_rules.mk b/build_config/Linux.intel.default/build_rules.mk
index abb2873..55dd61a 100644
--- a/build_config/Linux.intel.default/build_rules.mk
+++ b/build_config/Linux.intel.default/build_rules.mk
@@ -60,6 +60,7 @@ ifeq ($(ESMF_COMM),mvapich2)
# Mvapich2 ---------------------------------------------------
ESMF_F90DEFAULT = mpif90
ESMF_CXXDEFAULT = mpicxx
+ESMF_CXXLINKLIBS += $(shell $(ESMF_DIR)/scripts/libs.mvapich2f90)
ESMF_MPIRUNDEFAULT = mpirun $(ESMF_MPILAUNCHOPTIONS)
ESMF_MPIMPMDRUNDEFAULT = mpiexec $(ESMF_MPILAUNCHOPTIONS)
else
diff --git a/build_config/Linux.intelgcc.default/build_rules.mk b/build_config/Linux.intelgcc.default/build_rules.mk
index 7c0e5c9..135c822 100644
--- a/build_config/Linux.intelgcc.default/build_rules.mk
+++ b/build_config/Linux.intelgcc.default/build_rules.mk
@@ -60,6 +60,7 @@ ifeq ($(ESMF_COMM),mvapich2)
# Mvapich2 ---------------------------------------------------
ESMF_F90DEFAULT = mpif90
ESMF_CXXDEFAULT = mpicxx
+ESMF_CXXLINKLIBS += $(shell $(ESMF_DIR)/scripts/libs.mvapich2f90)
ESMF_MPIRUNDEFAULT = mpirun $(ESMF_MPILAUNCHOPTIONS)
ESMF_MPIMPMDRUNDEFAULT = mpiexec $(ESMF_MPILAUNCHOPTIONS)
else
diff --git a/build_config/Linux.lahey.default/build_rules.mk b/build_config/Linux.lahey.default/build_rules.mk
index 9959bda..7a83264 100644
--- a/build_config/Linux.lahey.default/build_rules.mk
+++ b/build_config/Linux.lahey.default/build_rules.mk
@@ -57,6 +57,7 @@ ifeq ($(ESMF_COMM),mvapich2)
ESMF_F90DEFAULT = mpif90
ESMF_F90LINKERDEFAULT = mpicxx
ESMF_CXXDEFAULT = mpicxx
+ESMF_CXXLINKLIBS += $(shell $(ESMF_DIR)/scripts/libs.mvapich2f90)
ESMF_MPIRUNDEFAULT = mpirun $(ESMF_MPILAUNCHOPTIONS)
ESMF_MPIMPMDRUNDEFAULT = mpiexec $(ESMF_MPILAUNCHOPTIONS)
else
diff --git a/build_config/Linux.nag.default/build_rules.mk b/build_config/Linux.nag.default/build_rules.mk
index 0fd6435..41a7e60 100644
--- a/build_config/Linux.nag.default/build_rules.mk
+++ b/build_config/Linux.nag.default/build_rules.mk
@@ -53,6 +53,7 @@ ifeq ($(ESMF_COMM),mvapich2)
# Mvapich2 ---------------------------------------------------
ESMF_F90DEFAULT = mpif90
ESMF_CXXDEFAULT = mpicxx
+ESMF_CXXLINKLIBS += $(shell $(ESMF_DIR)/scripts/libs.mvapich2f90)
ESMF_MPIRUNDEFAULT = mpirun $(ESMF_MPILAUNCHOPTIONS)
ESMF_MPIMPMDRUNDEFAULT = mpiexec $(ESMF_MPILAUNCHOPTIONS)
else
diff --git a/build_config/Linux.pgi.default/build_rules.mk b/build_config/Linux.pgi.default/build_rules.mk
index f6380b1..052a1cb 100644
--- a/build_config/Linux.pgi.default/build_rules.mk
+++ b/build_config/Linux.pgi.default/build_rules.mk
@@ -80,6 +80,7 @@ ifeq ($(ESMF_COMM),mvapich2)
# Mvapich2 ---------------------------------------------------
ESMF_F90DEFAULT = mpif90
ESMF_CXXDEFAULT = mpicxx
+ESMF_CXXLINKLIBS += $(shell $(ESMF_DIR)/scripts/libs.mvapich2f90)
ESMF_MPIRUNDEFAULT = mpirun $(ESMF_MPILAUNCHOPTIONS)
ESMF_MPIMPMDRUNDEFAULT = mpiexec $(ESMF_MPILAUNCHOPTIONS)
else
diff --git a/scripts/libs.mvapich2f90 b/scripts/libs.mvapich2f90
new file mode 100755
index 0000000..e4b6f27
--- /dev/null
+++ b/scripts/libs.mvapich2f90
@@ -0,0 +1,10 @@
+#!/bin/sh
+# this scripts determines the correct MVAPICH2 Fortran bindings library to
+# use when mpicxx is used for linking. If libmpifort, use it.
+PATHEXE=`which mpicxx`
+MVAPICH2_LIBDIR=`dirname ${PATHEXE}`/../lib*
+ls -1 ${MVAPICH2_LIBDIR} | grep mpifort > /dev/null 2>&1
+if [ $? = 0 ]; then
+ echo -lmpifort;
+fi
+
--
2.7.4

View File

@ -138,24 +138,10 @@ class Esmf(MakefilePackage, PythonExtension):
conflicts("%aocc", when="@:8.3") conflicts("%aocc", when="@:8.3")
# Make esmf build with newer intel versions
patch("intel.patch", when="@:7.0 %intel@17:")
# Make esmf build with newer gcc versions
# https://sourceforge.net/p/esmf/esmf/ci/3706bf758012daebadef83d6575c477aeff9c89b/
patch("gcc.patch", when="@:7.0 %gcc@6:")
# Fix undefined reference errors with mvapich2
# https://sourceforge.net/p/esmf/esmf/ci/34de0ccf556ba75d35c9687dae5d9f666a1b2a18/
patch("mvapich2.patch", when="@:7.0")
# explicit type cast of variables from long to int # explicit type cast of variables from long to int
patch("longtoint.patch", when="@:8.3.2 %cce@14:") patch("longtoint.patch", when="@:8.3.2 %cce@14:")
patch("longtoint.patch", when="@:8.3.2 %oneapi@2022:") patch("longtoint.patch", when="@:8.3.2 %oneapi@2022:")
# Allow different directories for creation and
# installation of dynamic libraries on OSX:
patch("darwin_dylib_install_name.patch", when="platform=darwin @:7.0")
# Missing include file for newer gcc compilers # Missing include file for newer gcc compilers
# https://trac.macports.org/ticket/57493 # https://trac.macports.org/ticket/57493
patch("cstddef.patch", when="@7.1.0r %gcc@8:") patch("cstddef.patch", when="@7.1.0r %gcc@8:")
@ -195,13 +181,6 @@ class MakefileBuilder(spack.build_systems.makefile.MakefileBuilder):
# below sets the compilers to the MPI wrappers. # below sets the compilers to the MPI wrappers.
filter_compiler_wrappers("esmf.mk", relative_root="lib") filter_compiler_wrappers("esmf.mk", relative_root="lib")
# Make script from mvapich2.patch executable
@when("@:7.0")
@run_before("build")
def chmod_scripts(self):
chmod = which("chmod")
chmod("+x", "scripts/libs.mvapich2f90")
def url_for_version(self, version): def url_for_version(self, version):
if version < Version("8.0.0"): if version < Version("8.0.0"):
# Older ESMF releases had a custom tag format ESMF_x_y_z # Older ESMF releases had a custom tag format ESMF_x_y_z