Skip to content

Commit

Permalink
Merge branch 'spack:develop' into develop
Browse files Browse the repository at this point in the history
  • Loading branch information
prudhomm authored Oct 27, 2024
2 parents 9b202ae + fea2171 commit eda1c44
Show file tree
Hide file tree
Showing 12 changed files with 229 additions and 6 deletions.
3 changes: 3 additions & 0 deletions var/spack/repos/builtin/packages/adios2/package.py
Original file line number Diff line number Diff line change
Expand Up @@ -200,6 +200,9 @@ class Adios2(CMakePackage, CudaPackage, ROCmPackage):
depends_on("aws-sdk-cpp", when="+aws")
depends_on("libcatalyst@2", when="+libcatalyst")

# error: invalid use of incomplete type 'PyFrameObject' {aka 'struct _frame'}
conflicts("^[email protected]:", when="@:2.7")

# Fix findmpi when called by dependees
# See https://github.com/ornladios/ADIOS2/pull/1632
patch("cmake-update-findmpi.patch", when="@2.4.0")
Expand Down
29 changes: 29 additions & 0 deletions var/spack/repos/builtin/packages/byte-lite/package.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# Copyright 2013-2024 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 ByteLite(CMakePackage):
"""byte lite - A C++17-like byte type for C++98, C++11 and later
in a single-file header-only library"""

homepage = "https://github.com/martinmoene/byte-lite"
url = "https://github.com/martinmoene/byte-lite/archive/refs/tags/v0.3.0.tar.gz"

license("BSL-1.0", checked_by="pranav-sivaraman")

version("0.3.0", sha256="1a19e237b12bb098297232b0a74ec08c18ac07ac5ac6e659c1d5d8a4ed0e4813")

depends_on("cxx", type="build")
depends_on("[email protected]:", type="build")

conflicts("%gcc@:4.7")
conflicts("%clang@:3.4")
conflicts("%apple-clang@:5")
conflicts("%mvsc@:5")

def cmake_args(self):
return [self.define("BYTE_LITE_OPT_BUILD_TESTS", self.run_tests)]
70 changes: 70 additions & 0 deletions var/spack/repos/builtin/packages/gem5/package.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
# Copyright 2013-2024 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 Gem5(SConsPackage):
"""The gem5 simulator is a modular platform for computer-system
architecture research, encompassing system-level architecture as
well as processor microarchitecture. gem5 is a community led
project with an open governance model. gem5 was originally
conceived for computer architecture research in academia, but it
has grown to be used in computer system design by academia,
industry for research, and in teaching."""

homepage = "https://www.gem5.org"
git = "https://github.com/gem5/gem5"
url = "https://github.com/gem5/gem5/archive/refs/tags/v24.0.0.0.tar.gz"

version("24.0.0.1", tag="v24.0.0.1", commit="b1a44b89c7bae73fae2dc547bc1f871452075b85")
version("24.0.0.0", tag="v24.0.0.0", commit="43769abaf05120fed1e4e0cfbb34619edbc10f3f")

depends_on("c", type="build")
depends_on("cxx", type="build")
depends_on("scons", type="build")
depends_on("py-mypy", type="build")
depends_on("py-pybind11", type="build")
depends_on("python")
depends_on("gettext")
depends_on("hdf5+cxx")
depends_on("protobuf")
depends_on("gperftools")
depends_on("graphviz+pangocairo", type=("build", "run"))
depends_on("py-pydot", type=("build", "run"))
depends_on("capstone")

def patch(self):
filter_file(
" Environment(tools=[",
" Environment(ENV=os.environ, tools=[",
"SConstruct",
string=True,
)
filter_file(
"""conf.env['CONF']['HAVE_PERF_ATTR_EXCLUDE_HOST'] = conf.CheckMember(""",
"""conf.env['CONF']['HAVE_PERF_ATTR_EXCLUDE_HOST'] = bool(conf.CheckMember(""",
"src/cpu/kvm/SConsopts",
string=True,
)
filter_file(
"""perf_event_attr', 'exclude_host')""",
"""perf_event_attr', 'exclude_host'))""",
"src/cpu/kvm/SConsopts",
string=True,
)

def install(self, spec, prefix):
mkdirp(prefix.bin)
install("build/ALL/gem5.opt", prefix.bin)

def build_args(self, spec, prefix):
args = []
args.append("build/ALL/gem5.opt")
args.append(f"-j{spack.config.determine_number_of_jobs(parallel=True)}")
args.append("--ignore-style")

return args
12 changes: 12 additions & 0 deletions var/spack/repos/builtin/packages/nwchem/package.py
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@ class Nwchem(Package):
depends_on("fortran", type="build") # generated

variant("openmp", default=False, description="Enables OpenMP support")
variant("f90allocatable", default=False, description="Use F90 allocatable instead of MA")
variant(
"armci",
values=("mpi-ts", "mpi-pr", "armcimpi", "mpi3", "openib", "ofi"),
Expand All @@ -57,6 +58,7 @@ class Nwchem(Package):
default=False,
description="Enables rarely-used TCE features (CCSDTQ, CCSDTLR, EACCSD, IPCCSD, MRCC)",
)
variant("tcecuda", default=False, description="Enable TCE CCSD(T) CUDA support")
variant("fftw3", default=False, description="Link against the FFTW library")
variant("libxc", default=False, description="Support additional functionals via libxc")
variant(
Expand Down Expand Up @@ -86,6 +88,7 @@ class Nwchem(Package):
depends_on("blas")
depends_on("lapack")
depends_on("mpi")
depends_on("cuda", when="+tcecuda")
depends_on("armcimpi", when="armci=armcimpi")
depends_on("libfabric", when="armci=ofi")
depends_on("rdma-core", when="armci=openib")
Expand Down Expand Up @@ -155,9 +158,18 @@ def install(self, spec, prefix):
args.extend(["CCSDTLR=y"])
args.extend(["CCSDTQ=y"])

if spec.satisfies("+tcecuda"):
args.extend(["TCE_CUDA=y"])
args.extend(["CUDA_INCLUDE=-I{0}".format(self.spec["cuda"].headers.directories[0])])
# args.extend(["CUDA_LIBS={0}".format(self.spec["cuda"].libs)])
args.extend(["CUDA_LIBS=-L{0} -lcudart".format(self.spec["cuda"].libs.directories[0])])

if spec.satisfies("+openmp"):
args.extend(["USE_OPENMP=y"])

if spec.satisfies("+f90allocatable"):
args.extend(["USE_F90_ALLOCATABLE=1"])

if self.spec.variants["armci"].value == "armcimpi":
armcimpi = spec["armci"]
args.extend(["ARMCI_NETWORK=ARMCI"])
Expand Down
39 changes: 39 additions & 0 deletions var/spack/repos/builtin/packages/opencolorio/package.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# Copyright 2013-2024 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 Opencolorio(CMakePackage):
"""OpenColorIO (OCIO) is a complete color management solution geared towards motion
picture production with an emphasis on visual effects and computer animation."""

homepage = "https://opencolorio.readthedocs.io"
git = "https://github.com/AcademySoftwareFoundation/OpenColorIO"
url = (
"https://github.com/AcademySoftwareFoundation/OpenColorIO/archive/refs/tags/v2.4.0.tar.gz"
)
license("Apache-2.0")

version("2.4.0", sha256="0ff3966b9214da0941b2b1cbdab3975a00a51fc6f3417fa860f98f5358f2c282")

# Core dependencies
depends_on("[email protected]:", type="build")
depends_on("[email protected]:")
depends_on("[email protected]:")
depends_on("[email protected]:")
depends_on("[email protected]:")

# Optional dependencies
variant("lcms", default=False, description="Little CMS for ociobakelut")
depends_on("[email protected]:", when="+lcms")

variant("python", default=False, description="Build python bindings")
extends("python", when="+python")
depends_on("py-pybind11", when="+python", type=("build", "run"))

def cmake_args(self):
args = ["-DOCIO_BUILD_PYTHON={0}".format("ON" if "+python" in self.spec else "OFF")]
return args
3 changes: 3 additions & 0 deletions var/spack/repos/builtin/packages/openimageio/package.py
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,9 @@ class Openimageio(CMakePackage):
variant("qt", default=False, description="Build qt viewer")
depends_on("[email protected]:+opengl", when="+qt")

variant("ocio", default=False, description="Support video frames")
depends_on("[email protected]:", when="+ocio")

def url_for_version(self, version):
if version >= Version("2"):
return super().url_for_version(version)
Expand Down
10 changes: 8 additions & 2 deletions var/spack/repos/builtin/packages/pango/package.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,14 @@ class Pango(MesonPackage):
version("1.47.0", sha256="730db8652fc43188e03218c3374db9d152351f51fc7011b9acae6d0a6c92c367")
version("1.46.2", sha256="d89fab5f26767261b493279b65cfb9eb0955cd44c07c5628d36094609fc51841")
version("1.45.5", sha256="f61dd911de2d3318b43bbc56bd271637a46f9118a1ee4378928c06df8a1c1705")
version("1.44.6", sha256="3e1e41ba838737e200611ff001e3b304c2ca4cdbba63d200a20db0b0ddc0f86c")
version("1.42.4", sha256="1d2b74cd63e8bd41961f2f8d952355aa0f9be6002b52c8aa7699d9f5da597c9d")
with default_args(deprecated=True):
# https://nvd.nist.gov/vuln/detail/CVE-2019-1010238
version(
"1.44.6", sha256="3e1e41ba838737e200611ff001e3b304c2ca4cdbba63d200a20db0b0ddc0f86c"
)
version(
"1.42.4", sha256="1d2b74cd63e8bd41961f2f8d952355aa0f9be6002b52c8aa7699d9f5da597c9d"
)

depends_on("c", type="build") # generated
depends_on("cxx", type="build") # generated
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ class PyAliveProgress(PythonPackage):
version("2.4.1", sha256="089757c8197f27ad972ba27e1060f6db92368d83c736884e159034fd74865323")
version("1.6.2", sha256="642e1ce98becf226c8c36bf24e10221085998c5465a357a66fb83b7dc618b43e")

depends_on("[email protected]:3.8", type=("build", "run"))
depends_on("[email protected]:3", type=("build", "run"))
depends_on("[email protected]:3", type=("build", "run"), when="@2:")
depends_on("[email protected]:3", type=("build", "run"), when="@2.2:")
depends_on("py-setuptools", type="build")
Expand Down
30 changes: 30 additions & 0 deletions var/spack/repos/builtin/packages/py-olcf-velocity/package.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# Copyright 2013-2024 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 PyOlcfVelocity(PythonPackage):
"""A tool to help with the maintenance of container build scripts on multiple systems,
backends (e.g podman or apptainer) and distros."""

homepage = "https://olcf.github.io/velocity/index.html"
pypi = "olcf_velocity/olcf_velocity-0.1.3.tar.gz"

maintainers("AcerP-py")

license("UNKNOWN", checked_by="AcerP-py")

version("0.1.3", sha256="08bd82d464e8cab6c61cab095d460b927a18e082cadb663bd5f935cf651b5c03")

depends_on("[email protected]:", type=("build", "run"))

depends_on("py-pyyaml", type="run")
depends_on("py-networkx", type="run")
depends_on("py-colorama", type="run")
depends_on("py-loguru", type="run")
depends_on("py-typing-extensions", type="run")

depends_on("py-setuptools", type="build")
21 changes: 21 additions & 0 deletions var/spack/repos/builtin/packages/pystring/package.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# Copyright 2013-2024 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 Pystring(CMakePackage):
"""Pystring is a collection of C++ functions which match the interface and behavior
of python's string class methods using std::string."""

git = "https://github.com/imageworks/pystring"
url = "https://github.com/imageworks/pystring/archive/refs/tags/v1.1.4.tar.gz"

license("Apache-2.0")

version("1.1.4", sha256="49da0fe2a049340d3c45cce530df63a2278af936003642330287b68cefd788fb")

# Core dependencies
depends_on("[email protected]:", type="build")
10 changes: 8 additions & 2 deletions var/spack/repos/builtin/packages/silo/package.py
Original file line number Diff line number Diff line change
Expand Up @@ -142,8 +142,14 @@ def flag_handler(self, name, flags):
# presented with an HDF5 API consistent with the HDF5 version.
# Use the latest even-numbered API version, i.e. v1.13.1 uses
# API v1.12
maj_ver = int(spec["hdf5"].version[0])
min_ver = int(spec["hdf5"].version[1])

# hdf5 support branches have a `develop` prefix
if "develop" in str(spec["hdf5"].version):
maj_ver = int(spec["hdf5"].version[1])
min_ver = int(spec["hdf5"].version[2])
else:
maj_ver = int(spec["hdf5"].version[0])
min_ver = int(spec["hdf5"].version[1])
min_apiver = int(min_ver / 2) * 2
flags.append("-DH5_USE_{0}{1}_API".format(maj_ver, min_apiver))

Expand Down
6 changes: 5 additions & 1 deletion var/spack/repos/builtin/packages/yosys/package.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ class Yosys(MakefilePackage):
"""

homepage = "https://yosyshq.net/yosys"
url = "https://github.com/YosysHQ/yosys/archive/refs/tags/yosys-0.42.tar.gz"
url = "https://github.com/YosysHQ/yosys/archive/refs/tags/yosys-0.46.tar.gz"
git = "https://github.com/YosysHQ/yosys.git"

maintainers("davekeeshan")
Expand All @@ -29,6 +29,10 @@ class Yosys(MakefilePackage):

version("master", branch="master")

version("0.46", commit="e97731b9dda91fa5fa53ed87df7c34163ba59a41", submodules=True)
version("0.45", commit="9ed031ddd588442f22be13ce608547a5809b62f0", submodules=True)
version("0.44", commit="80ba43d26264738c93900129dc0aab7fab36c53f", submodules=True)
version("0.43", commit="ead4718e567aed2e552dcfe46294b132aa04c158", submodules=True)
version("0.42", commit="9b6afcf3f83fea413b57c3790c25ba43b9914ce2", submodules=True)
version("0.41", sha256="b0037d0a5864550a07a72ba81346e52a7d5f76b3027ef1d7c71b975d2c8bd2b2")
version("0.40", sha256="c1d42ad90d587b587210b40cf3c5584e41e20f656e8630c33b6583322e8b764e")
Expand Down

0 comments on commit eda1c44

Please sign in to comment.