From 92593fecd536ed87c9cfd19f9f4d2d5f6653ac72 Mon Sep 17 00:00:00 2001 From: Jerome Soumagne Date: Mon, 12 Jun 2023 10:51:22 -0500 Subject: mercury: add v2.3.0 (#38279) * fix Boost dependency * fix testing and move psm2/sockets as unsupported * fix style to separate maintainers/tags/version --- .../repos/builtin/packages/mercury/package.py | 22 +++++++++------------- 1 file changed, 9 insertions(+), 13 deletions(-) diff --git a/var/spack/repos/builtin/packages/mercury/package.py b/var/spack/repos/builtin/packages/mercury/package.py index ac6d8d9f43..1c531277d7 100644 --- a/var/spack/repos/builtin/packages/mercury/package.py +++ b/var/spack/repos/builtin/packages/mercury/package.py @@ -3,7 +3,6 @@ # # SPDX-License-Identifier: (Apache-2.0 OR MIT) from spack.package import * -from spack.pkg.builtin.boost import Boost class Mercury(CMakePackage): @@ -14,8 +13,11 @@ class Mercury(CMakePackage): git = "https://github.com/mercury-hpc/mercury.git" maintainers("soumagne") + tags = ["e4s"] + version("master", branch="master", submodules=True) + version("2.3.0", sha256="e9e62ce1bb2fd482f0e85ad75fa255d9750c6fed50ba441a03de93b3b8eae742") version("2.2.0", sha256="e66490cf63907c3959bbb2932b5aaf51d96a481b17f0935f409f3a862eff97f6") version("2.1.0", sha256="9a58437161e9273b1b1c484d2f1a477a89eea9afe84575415025d47656f3761b") version("2.0.1", sha256="335946d9620ac669643ffd9861a5fb3ee486834bab674b7779eaac9d6662e3fa") @@ -59,17 +61,9 @@ class Mercury(CMakePackage): depends_on("libfabric@1.7:", when="@2.1.0:") # openpa dependency is removed in 2.1.0 depends_on("openpa@1.0.3:", when="@:2.0.1%gcc@:4.8") + # We only need Boost preprocessor headers depends_on("boost@1.48:", when="+boostsys") - - # TODO: replace this with an explicit list of components of Boost, - # for instance depends_on('boost +filesystem') - # See https://github.com/spack/spack/pull/22303 for reference - depends_on(Boost.with_default_variants, when="+boostsys") depends_on("boost", when="@:0.9") # internal boost headers were added in 1.0.0 - # TODO: replace this with an explicit list of components of Boost, - # for instance depends_on('boost +filesystem') - # See https://github.com/spack/spack/pull/22303 for reference - depends_on(Boost.with_default_variants, when="@:0.9") depends_on("ucx+thread_multiple", when="+ucx") # Fix CMake check_symbol_exists @@ -91,7 +85,6 @@ class Mercury(CMakePackage): cmake_args = [ define_from_variant("BUILD_SHARED_LIBS", "shared"), - define("BUILD_TESTING", self.run_tests), define("MERCURY_USE_BOOST_PP", True), define_from_variant("MERCURY_USE_CHECKSUMS", "checksum"), define("MERCURY_USE_SYSTEM_MCHECKSUM", False), @@ -101,6 +94,9 @@ class Mercury(CMakePackage): define_from_variant("NA_USE_SM", "sm"), ] + if "@2.3.0:" in spec: + cmake_args.append(define("BUILD_TESTING_UNIT", self.run_tests)) + if "@2.2.0:" in spec: cmake_args.extend( [ @@ -147,7 +143,7 @@ class Mercury(CMakePackage): if "gni" in ofi_fabrics: cmake_args.append(define_from_variant("NA_OFI_GNI_USE_UDREG", "udreg")) if self.run_tests: - supported = ["sockets", "tcp", "verbs", "psm2", "gni"] + supported = ["tcp", "verbs", "gni", "cxi"] ofi_test_fabrics = list(filter(lambda x: x in supported, ofi_fabrics)) cmake_args.append( define("NA_OFI_TESTING_PROTOCOL", format(";".join(ofi_test_fabrics))) @@ -158,5 +154,5 @@ class Mercury(CMakePackage): def check(self): """Unit tests fail when run in parallel.""" - with working_dir(self.build_directory): + with working_dir(self.builder.build_directory): make("test", parallel=False) -- cgit v1.2.3-60-g2f50