From ca226f3506d1feffe2c310c25a64b3025acf4335 Mon Sep 17 00:00:00 2001 From: David Ozog Date: Fri, 21 Mar 2025 09:28:16 -0400 Subject: [PATCH] sos: (and tests-sos:) update to v1.5.3, add main branch (#49613) * sos/tests-sos: update to v1.5.3 & add main branch * [@spackbot] updating style on behalf of davidozog * sos: cleanup try/except around cloning tests --------- Co-authored-by: davidozog --- .../repos/builtin/packages/sos/package.py | 31 +++++++++++++++++-- .../builtin/packages/tests-sos/package.py | 7 +++-- 2 files changed, 34 insertions(+), 4 deletions(-) diff --git a/var/spack/repos/builtin/packages/sos/package.py b/var/spack/repos/builtin/packages/sos/package.py index 4a4fa7a9a0c..f0d9c62fe50 100644 --- a/var/spack/repos/builtin/packages/sos/package.py +++ b/var/spack/repos/builtin/packages/sos/package.py @@ -2,6 +2,8 @@ # # SPDX-License-Identifier: (Apache-2.0 OR MIT) +import warnings + from spack.package import * @@ -9,13 +11,16 @@ class Sos(AutotoolsPackage): """Sandia OpenSHMEM.""" homepage = "https://github.com/Sandia-OpenSHMEM/SOS" - url = "https://github.com/Sandia-OpenSHMEM/SOS/archive/refs/tags/v1.5.0.zip" + url = "https://github.com/Sandia-OpenSHMEM/SOS/archive/refs/tags/v1.5.3.zip" + git = "https://github.com/Sandia-OpenSHMEM/SOS.git" # notify when the package is updated. - maintainers("rscohn2") + maintainers("rscohn2", "davidozog") license("BSD-3-Clause") + version("main", branch="main") + version("1.5.3", sha256="e4bb1e4fe7d1f571a4b14ae81a6bf64fa0c260467d1ac8e333e406235cbcce0a") version("1.5.2", sha256="c9df8c6ab43890e5d8970467c188ae2fad736845875ca4c370ff047dbb37d017") version("1.5.1", sha256="0a6303dcbdd713ef2d83c617c1eb821227603c98cb9816c53585fd993da8a984") version("1.5.0", sha256="02679da6085cca2919f900022c46bad48479690586cb4e7f971ec3a735bab4d4") @@ -58,6 +63,7 @@ class Sos(AutotoolsPackage): ) variant("rpath", default=True, description="Use rpath in compiler wrappers ") variant("hard-polling", default=False, description="Enable hard polling of wait calls") + variant("fortran", default=False, description="Enable fortran API") depends_on("autoconf", type="build") depends_on("automake", type="build") @@ -81,6 +87,26 @@ def setup_dependent_build_environment(self, env, dependent_spec): def autoreconf(self, spec, prefix): bash = Executable("bash") + if spec.satisfies("@main") or spec.satisfies("@1.5.3:"): + branch_name = str(spec.version) + if spec.satisfies("@1.5.3:"): + branch_name = "v" + branch_name + try: + git = which("git") + git( + "clone", + "--depth", + "1", + "-b", + branch_name, + "https://github.com/openshmem-org/tests-sos.git", + "./modules/tests-sos", + ) + except ProcessError: + warnings.warn( + "Unable to clone tests-sos submodule, which is required for sos " + + str(spec.version) + ) bash("./autogen.sh") def configure_args(self): @@ -98,5 +124,6 @@ def configure_args(self): args.extend(self.enable_or_disable("manual-progress")) args.extend(self.enable_or_disable("ofi-manual-progress")) args.extend(self.enable_or_disable("hard-polling")) + args.extend(self.enable_or_disable("fortran")) args.append("--enable-pmi-simple") return args diff --git a/var/spack/repos/builtin/packages/tests-sos/package.py b/var/spack/repos/builtin/packages/tests-sos/package.py index 5241944d0b3..01120113192 100644 --- a/var/spack/repos/builtin/packages/tests-sos/package.py +++ b/var/spack/repos/builtin/packages/tests-sos/package.py @@ -9,10 +9,13 @@ class TestsSos(AutotoolsPackage): """Sandia OpenSHMEM unit tests and performance testing suite.""" homepage = "https://github.com/openshmem-org/tests-sos" - url = "https://github.com/openshmem-org/tests-sos/archive/refs/tags/v1.5.2.tar.gz" + url = "https://github.com/openshmem-org/tests-sos/archive/refs/tags/v1.5.3.tar.gz" + git = "https://github.com/openshmem-org/tests-sos.git" - maintainers("jack-morrison") + maintainers("jack-morrison", "davidozog") + version("main", branch="main") + version("1.5.3", sha256="073d003951d341cd1253b30bcdb76a834b00a9b914c25548ef8735d278d58b69") version("1.5.2", sha256="3a063963ef779419aadc6b21ff2f1e4dcdd3e95fa8ed23545434e56757f3187f") depends_on("c", type="build") # generated