Merge branch 'develop' into bugfix/compiler-flag-propagation
This commit is contained in:
commit
1740c575a2
@ -274,7 +274,6 @@ def std_args(pkg, generator=None):
|
||||
generator,
|
||||
define("CMAKE_INSTALL_PREFIX", pathlib.Path(pkg.prefix).as_posix()),
|
||||
define("CMAKE_BUILD_TYPE", build_type),
|
||||
define("BUILD_TESTING", pkg.run_tests),
|
||||
]
|
||||
|
||||
# CMAKE_INTERPROCEDURAL_OPTIMIZATION only exists for CMake >= 3.9
|
||||
@ -451,7 +450,6 @@ def cmake_args(self):
|
||||
|
||||
* CMAKE_INSTALL_PREFIX
|
||||
* CMAKE_BUILD_TYPE
|
||||
* BUILD_TESTING
|
||||
|
||||
which will be set automatically.
|
||||
"""
|
||||
|
@ -863,7 +863,6 @@ def add(fullpath, scope=None):
|
||||
has_existing_value = True
|
||||
path = ""
|
||||
override = False
|
||||
value = syaml.load_config(components[-1])
|
||||
for idx, name in enumerate(components[:-1]):
|
||||
# First handle double colons in constructing path
|
||||
colon = "::" if override else ":" if path else ""
|
||||
@ -884,14 +883,14 @@ def add(fullpath, scope=None):
|
||||
existing = get_valid_type(path)
|
||||
|
||||
# construct value from this point down
|
||||
value = syaml.load_config(components[-1])
|
||||
for component in reversed(components[idx + 1 : -1]):
|
||||
value = {component: value}
|
||||
break
|
||||
|
||||
if override:
|
||||
path += "::"
|
||||
|
||||
if has_existing_value:
|
||||
path, _, value = fullpath.rpartition(":")
|
||||
value = syaml.load_config(value)
|
||||
existing = get(path, scope=scope)
|
||||
|
||||
# append values to lists
|
||||
@ -1232,17 +1231,11 @@ def they_are(t):
|
||||
return copy.copy(source)
|
||||
|
||||
|
||||
#
|
||||
# Process a path argument to config.set() that may contain overrides ('::' or
|
||||
# trailing ':')
|
||||
#
|
||||
def process_config_path(path):
|
||||
"""Process a path argument to config.set() that may contain overrides ('::' or
|
||||
trailing ':')
|
||||
|
||||
Note: quoted value path components will be processed as a single value (escaping colons)
|
||||
quoted path components outside of the value will be considered ill formed and will
|
||||
raise.
|
||||
e.g. `this:is:a:path:'value:with:colon'` will yield:
|
||||
|
||||
[this, is, a, path, value:with:colon]
|
||||
"""
|
||||
result = []
|
||||
if path.startswith(":"):
|
||||
raise syaml.SpackYAMLError("Illegal leading `:' in path `{0}'".format(path), "")
|
||||
@ -1269,16 +1262,6 @@ def process_config_path(path):
|
||||
front = syaml.syaml_str(front)
|
||||
front.append = True
|
||||
|
||||
quote = "['\"]"
|
||||
not_quote = "[^'\"]"
|
||||
|
||||
if re.match(f"^{quote}", path):
|
||||
m = re.match(rf"^{quote}({not_quote}+){quote}$", path)
|
||||
if not m:
|
||||
raise ValueError("Quotes indicate value, but there are additional path entries")
|
||||
result.append(m.group(1))
|
||||
break
|
||||
|
||||
result.append(front)
|
||||
return result
|
||||
|
||||
|
@ -277,12 +277,6 @@ def test_add_config_path(mutable_config):
|
||||
compilers = spack.config.get("packages")["all"]["compiler"]
|
||||
assert "gcc" in compilers
|
||||
|
||||
# Try with an escaped colon
|
||||
path = 'config:install_tree:root:"C:/path/to/config.yaml"'
|
||||
spack.config.add(path)
|
||||
set_value = spack.config.get("config")["install_tree"]["root"]
|
||||
assert set_value == "C:/path/to/config.yaml"
|
||||
|
||||
|
||||
@pytest.mark.regression("17543,23259")
|
||||
def test_add_config_path_with_enumerated_type(mutable_config):
|
||||
|
@ -1,5 +1,9 @@
|
||||
stages: [ "generate", "build", "publish" ]
|
||||
|
||||
variables:
|
||||
SPACK_DISABLE_LOCAL_CONFIG: "1"
|
||||
SPACK_USER_CACHE_PATH: "${CI_PROJECT_DIR}/tmp/_user_cache/"
|
||||
|
||||
default:
|
||||
image: { "name": "ghcr.io/spack/e4s-ubuntu-18.04:v2021-10-18", "entrypoint": [""] }
|
||||
|
||||
@ -65,8 +69,6 @@ default:
|
||||
.base-job:
|
||||
variables:
|
||||
SPACK_BUILDCACHE_DESTINATION: "s3://spack-binaries/${CI_COMMIT_REF_NAME}/${SPACK_CI_STACK_NAME}"
|
||||
SPACK_DISABLE_LOCAL_CONFIG: "1"
|
||||
SPACK_USER_CACHE_PATH: "${CI_PROJECT_DIR}/tmp/_user_cache/"
|
||||
rules:
|
||||
- if: $CI_COMMIT_REF_NAME == "develop"
|
||||
# Pipelines on develop only rebuild what is missing from the mirror
|
||||
|
@ -40,6 +40,8 @@ class Axom(CachedCMakePackage, CudaPackage, ROCmPackage):
|
||||
|
||||
version("main", branch="main")
|
||||
version("develop", branch="develop")
|
||||
version("0.8.1", tag="v0.8.1", commit="0da8a5b1be596887158ac2fcd321524ba5259e15")
|
||||
version("0.8.0", tag="v0.8.0", commit="71fab3262eb7e1aa44a04c21d072b77f06362f7b")
|
||||
version("0.7.0", tag="v0.7.0", commit="ea5158191181c137117ae37959879bdc8b107f35")
|
||||
version("0.6.1", tag="v0.6.1", commit="ee240d3963d7879ae0e9c392902195bd7b04e37d")
|
||||
version("0.6.0", tag="v0.6.0", commit="65287dc00bc7c271a08cb86c632f5909c30e3506")
|
||||
|
@ -44,7 +44,7 @@ class Cabana(CMakePackage):
|
||||
|
||||
depends_on("cmake@3.9:", type="build", when="@:0.4.0")
|
||||
depends_on("cmake@3.16:", type="build", when="@0.5.0:")
|
||||
depends_on("googletest", type="build", when="testing")
|
||||
depends_on("googletest", type="test", when="+testing")
|
||||
_versions = {":0.2": "-legacy", "0.3:": "@3.1:", "0.4:": "@3.2:", "master": "@3.4:"}
|
||||
for _version in _versions:
|
||||
_kk_version = _versions[_version]
|
||||
|
16
var/spack/repos/builtin/packages/cmdlime/package.py
Normal file
16
var/spack/repos/builtin/packages/cmdlime/package.py
Normal file
@ -0,0 +1,16 @@
|
||||
# Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
|
||||
# Spack Project Developers. See the top-level COPYRIGHT file for details.
|
||||
#
|
||||
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
|
||||
|
||||
from spack.package import *
|
||||
|
||||
|
||||
class Cmdlime(CMakePackage):
|
||||
"""cmdlime is a C++17 header-only library for command line parsing that
|
||||
provides a concise, declarative interface without many details to remember."""
|
||||
|
||||
homepage = "https://github.com/kamchatka-volcano/cmdlime"
|
||||
url = "https://github.com/kamchatka-volcano/cmdlime/archive/refs/tags/v2.5.0.tar.gz"
|
||||
|
||||
version("2.5.0", sha256="d5188d7f075142fcb546099a4ee2a967f8248109c0bee8c084e0e00f37603481")
|
@ -12,13 +12,14 @@ class Exaca(CMakePackage):
|
||||
|
||||
homepage = "https://github.com/LLNL/ExaCA"
|
||||
git = "https://github.com/LLNL/ExaCA.git"
|
||||
url = "https://github.com/LLNL/ExaCA/archive/1.0.0.tar.gz"
|
||||
url = "https://github.com/LLNL/ExaCA/archive/1.2.0.tar.gz"
|
||||
|
||||
maintainers("streeve", "MattRolchigo")
|
||||
|
||||
tags = ["ecp"]
|
||||
|
||||
version("master", branch="master")
|
||||
version("1.2.0", sha256="5038d63de96c6142ddea956998e1f4ebffbc4a5723caa4da0e73eb185e6623e4")
|
||||
version("1.1.0", sha256="10106fb1836964a19bc5bab3f374baa24188ba786c768e554442ab896b31ff24")
|
||||
version("1.0.0", sha256="48556233360a5e15e1fc20849e57dd60739c1991c7dfc7e6b2956af06688b96a")
|
||||
|
||||
@ -34,8 +35,9 @@ class Exaca(CMakePackage):
|
||||
depends_on("cmake@3.12:", type="build", when="@master")
|
||||
depends_on("googletest@1.10:", type="test", when="@1.1:+testing")
|
||||
depends_on("kokkos@3.0:", when="@:1.1")
|
||||
depends_on("kokkos@3.2:", when="@master")
|
||||
depends_on("kokkos@3.2:", when="@1.2:")
|
||||
depends_on("mpi")
|
||||
depends_on("nlohmann-json", when="@1.2:")
|
||||
|
||||
def cmake_args(self):
|
||||
options = [self.define_from_variant("BUILD_SHARED_LIBS", "shared")]
|
||||
|
@ -7,22 +7,40 @@
|
||||
|
||||
|
||||
class G2(CMakePackage):
|
||||
"""Utilities for coding/decoding GRIB2 messages. This library contains
|
||||
Fortran 90 decoder/encoder routines for GRIB edition 2, as well as
|
||||
indexing/searching utility routines.
|
||||
"""The NCEPLIBS-g2 library reads and writes GRIB2 files. GRIdded Binary or General
|
||||
Regularly-distributed Information in Binary form (GRIB) is a data format for
|
||||
meteorological and forecast data, standardized by the World Meteorological
|
||||
Organization (WMO).
|
||||
|
||||
This is part of the NCEPLIBS project."""
|
||||
|
||||
homepage = "https://noaa-emc.github.io/NCEPLIBS-g2"
|
||||
url = "https://github.com/NOAA-EMC/NCEPLIBS-g2/archive/refs/tags/v3.4.3.tar.gz"
|
||||
|
||||
maintainers("t-brown", "AlexanderRichert-NOAA", "Hang-Lei-NOAA", "edwardhartnett")
|
||||
maintainers("AlexanderRichert-NOAA", "Hang-Lei-NOAA", "edwardhartnett")
|
||||
|
||||
version("3.4.6", sha256="c4b03946365ce0bacf1e10e8412a5debd72d8671d1696aa4fb3f3adb119175fe")
|
||||
version("3.4.5", sha256="c18e991c56964953d778632e2d74da13c4e78da35e8d04cb742a2ca4f52737b6")
|
||||
version("3.4.3", sha256="679ea99b225f08b168cbf10f4b29f529b5b011232f298a5442ce037ea84de17c")
|
||||
|
||||
depends_on("jasper@:2.0.32")
|
||||
variant(
|
||||
"build_with_w3emc",
|
||||
description="Enable GRIB1 conversion routine",
|
||||
default=True,
|
||||
when="@3.4.5:",
|
||||
)
|
||||
|
||||
depends_on("libpng")
|
||||
depends_on("bacio")
|
||||
depends_on("jasper@:2.0.32", when="@:3.4.5")
|
||||
depends_on("jasper", when="@3.4.6:")
|
||||
depends_on("w3emc", when="@:3.4.5")
|
||||
|
||||
def cmake_args(self):
|
||||
args = []
|
||||
|
||||
if self.spec.satisfies("@3.4.5:"):
|
||||
args.append(self.define_from_variant("BUILD_WITH_W3EMC", "build_with_w3emc"))
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
for suffix in ("4", "d"):
|
||||
|
@ -22,6 +22,8 @@ class Libfabric(AutotoolsPackage):
|
||||
executables = ["^fi_info$"]
|
||||
|
||||
version("main", branch="main")
|
||||
version("1.19.0", sha256="f14c764be9103e80c46223bde66e530e5954cb28b3835b57c8e728479603ef9e")
|
||||
version("1.18.2", sha256="64d7837853ca84d2a413fdd96534b6a81e6e777cc13866e28cf86cd0ccf1b93e")
|
||||
version("1.18.1", sha256="4615ae1e22009e59c72ae03c20adbdbd4a3dce95aeefbc86cc2bf1acc81c9e38")
|
||||
version("1.18.0", sha256="912fb7c7b3cf2a91140520962b004a1c5d2f39184adbbd98ae5919b0178afd43")
|
||||
version("1.17.1", sha256="8b372ddb3f46784c53fdad50a701a6eb0e661239aee45a42169afbedf3644035")
|
||||
|
@ -17,6 +17,7 @@ class Pika(CMakePackage, CudaPackage, ROCmPackage):
|
||||
git = "https://github.com/pika-org/pika.git"
|
||||
maintainers("msimberg", "albestro", "teonnik", "aurianer")
|
||||
|
||||
version("0.18.0", sha256="f34890e0594eeca6ac57f2b988d0807b502782817e53a7f7043c3f921b08c99f")
|
||||
version("0.17.0", sha256="717429fc1bc986d62cbec190a69939e91608122d09d54bda1b028871c9ca9ad4")
|
||||
version("0.16.0", sha256="59f2baec91cc9bf71ca96d21d0da1ec0092bf59da106efa51789089e0d7adcbb")
|
||||
version("0.15.1", sha256="b68b87cf956ad1448f5c2327a72ba4d9fb339ecabeabb0a87b8ea819457e293b")
|
||||
|
@ -24,6 +24,12 @@ class Umpire(CachedCMakePackage, CudaPackage, ROCmPackage):
|
||||
|
||||
version("develop", branch="develop", submodules=False)
|
||||
version("main", branch="main", submodules=False)
|
||||
version(
|
||||
"2022.10.0",
|
||||
tag="v2022.10.0",
|
||||
commit="93b1441aaa258c1dcd211a552b75cff6461a2a8a",
|
||||
submodules=False,
|
||||
)
|
||||
version(
|
||||
"2022.03.1",
|
||||
tag="v2022.03.1",
|
||||
@ -130,6 +136,20 @@ class Umpire(CachedCMakePackage, CudaPackage, ROCmPackage):
|
||||
when="@:5.0.1 ^blt@0.4:",
|
||||
)
|
||||
|
||||
# https://github.com/LLNL/Umpire/pull/805
|
||||
patch(
|
||||
"https://github.com/LLNL/Umpire/pull/805/commits/47ff0aa1f7a01a917c3b7ac618e8a9e44a10fd25.patch?full_index=1",
|
||||
sha256="7ed5d2c315a3b31e339f664f6108e32d7cb4cb8e9f22e5c78a65ba02625ccc09",
|
||||
when="@2022.10.0",
|
||||
)
|
||||
|
||||
# https://github.com/LLNL/Umpire/pull/816
|
||||
patch(
|
||||
"https://github.com/LLNL/Umpire/pull/816/commits/2292d1d6078f6d9523b7ad0886ffa053644569d5.patch?full_index=1",
|
||||
sha256="0f43cad7cdaec3c225ab6414ab9f81bd405a1157abf5a508e515bcb6ca53326d",
|
||||
when="@2022.10.0",
|
||||
)
|
||||
|
||||
variant("fortran", default=False, description="Build C/Fortran API")
|
||||
variant("c", default=True, description="Build C API")
|
||||
variant("numa", default=False, description="Enable NUMA support")
|
||||
@ -150,6 +170,7 @@ class Umpire(CachedCMakePackage, CudaPackage, ROCmPackage):
|
||||
depends_on("cmake@3.9:", when="+cuda", type="build")
|
||||
depends_on("cmake@3.14:", when="@2022.03.0:")
|
||||
|
||||
depends_on("blt@0.5.2:", type="build", when="@2022.10.0:")
|
||||
depends_on("blt@0.5.0:", type="build", when="@2022.03.0:")
|
||||
depends_on("blt@0.4.1", type="build", when="@6.0.0")
|
||||
depends_on("blt@0.4.0:", type="build", when="@4.1.3:5.0.1")
|
||||
|
46
var/spack/repos/builtin/packages/yade/package.py
Normal file
46
var/spack/repos/builtin/packages/yade/package.py
Normal file
@ -0,0 +1,46 @@
|
||||
# Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
|
||||
# Spack Project Developers. See the top-level COPYRIGHT file for details.
|
||||
#
|
||||
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
|
||||
|
||||
from spack.package import *
|
||||
|
||||
|
||||
class Yade(CMakePackage):
|
||||
"""Yade is an free software for particle based simulations."""
|
||||
|
||||
homepage = "https://gitlab.com/yade-dev/trunk"
|
||||
url = "https://gitlab.com/yade-dev/trunk/-/archive/2023.02a/trunk-2023.02a.tar.gz"
|
||||
|
||||
maintainers("lmagdanello")
|
||||
|
||||
version("2023.02a", sha256="f76b5a0aa7f202716efa94cd730e4bc442ffcb40a99caaf6e579ab8695efb0c1")
|
||||
version("2022.01a", sha256="3b76185b706aba6113d1e932c5b883cd772e8d8c6b4e5230a01f3370e2b6904c")
|
||||
version("2021.01a", sha256="3afab3380e8f5d185af7929213f63341445d6a5ee6bc21bbae102d8ffd93df1d")
|
||||
version("2020.01a", sha256="e4856aaa0141c32404355ce9de4f25076fe3940dbc8d0fdbc8ace8020c5191f1")
|
||||
version("2019.01a", sha256="7cb80b912cdc8752850de54ef3c084768c5ab69ce6af4b85dc3921674d7134a5")
|
||||
version("2018.02b", sha256="d1b2ed3751cd4661af1ad4058196adb16eb227845d874e1c221074a699876634")
|
||||
version("2018.02a", sha256="629a83ab71e2f47f2a7a83fd2c18ab5ce5573bf239445be0d4ff34ce08c11263")
|
||||
version("2017.01a", sha256="cd35caa6b6a017ee82f894e7d6f0826fddc1d921aea04b5896d3f1da95cb649b")
|
||||
version("2016.06a", sha256="6e7374d2dcb7c90026be9229a6b30373f9d82fdefd3dc1f952aa6262924f2579")
|
||||
|
||||
depends_on("cmake", type="build")
|
||||
depends_on("gcc@11.4:", type=("build", "run"))
|
||||
depends_on("boost@1.47:", type=("build", "run"))
|
||||
depends_on("qt", type=("build", "run"))
|
||||
depends_on("freeglut", type=("build", "run"))
|
||||
depends_on("libqglviewer", type=("build", "run"))
|
||||
depends_on("python", type=("build", "run"))
|
||||
depends_on("py-numpy", type=("build", "run"))
|
||||
depends_on("py-ipython", type=("build", "run"))
|
||||
depends_on("py-sphinx", type=("build", "run"))
|
||||
depends_on("py-matplotlib", type=("build", "run"))
|
||||
depends_on("eigen@3.2.1:", type=("build", "run"))
|
||||
depends_on("gdb", type=("build", "run"))
|
||||
depends_on("sqlite", type=("build", "run"))
|
||||
|
||||
def cmake_args(self):
|
||||
args = [self.define("CMAKE_BUILD_TYPE", "Release")]
|
||||
|
||||
args.append("-DCMAKE_INSTALL_PREFIX={0}".format(self.stage.source_path))
|
||||
return args
|
Loading…
Reference in New Issue
Block a user