Compare commits
5 Commits
before-com
...
e4s-25.06
Author | SHA1 | Date | |
---|---|---|---|
![]() |
f00c80eae8 | ||
![]() |
82978251fa | ||
![]() |
a9c879d53e | ||
![]() |
f42f59c84b | ||
![]() |
313b7d4cdb |
@@ -3432,8 +3432,7 @@ def __init__(self):
|
||||
self.asp_problem = []
|
||||
|
||||
def fact(self, atom: AspFunction) -> None:
|
||||
symbol = atom.symbol() if hasattr(atom, "symbol") else atom
|
||||
self.asp_problem.append(f"{str(symbol)}.\n")
|
||||
self.asp_problem.append(f"{atom}.\n")
|
||||
|
||||
def append(self, rule: str) -> None:
|
||||
self.asp_problem.append(rule)
|
||||
|
@@ -31,16 +31,19 @@ class AspObject:
|
||||
"""Object representing a piece of ASP code."""
|
||||
|
||||
|
||||
def _id(thing: Any) -> Union[str, AspObject]:
|
||||
def _id(thing: Any) -> Union[str, int, AspObject]:
|
||||
"""Quote string if needed for it to be a valid identifier."""
|
||||
if isinstance(thing, AspObject):
|
||||
if isinstance(thing, bool):
|
||||
return f'"{thing}"'
|
||||
elif isinstance(thing, (AspObject, int)):
|
||||
return thing
|
||||
elif isinstance(thing, bool):
|
||||
return f'"{str(thing)}"'
|
||||
elif isinstance(thing, int):
|
||||
return str(thing)
|
||||
else:
|
||||
return f'"{str(thing)}"'
|
||||
if isinstance(thing, str):
|
||||
# escape characters that cannot be in clingo strings
|
||||
thing = thing.replace("\\", r"\\")
|
||||
thing = thing.replace("\n", r"\n")
|
||||
thing = thing.replace('"', r"\"")
|
||||
return f'"{thing}"'
|
||||
|
||||
|
||||
class AspVar(AspObject):
|
||||
@@ -90,26 +93,9 @@ def __call__(self, *args: Any) -> "AspFunction":
|
||||
"""
|
||||
return AspFunction(self.name, self.args + args)
|
||||
|
||||
def _argify(self, arg: Any) -> Any:
|
||||
"""Turn the argument into an appropriate clingo symbol"""
|
||||
if isinstance(arg, bool):
|
||||
return clingo().String(str(arg))
|
||||
elif isinstance(arg, int):
|
||||
return clingo().Number(arg)
|
||||
elif isinstance(arg, AspFunction):
|
||||
return clingo().Function(arg.name, [self._argify(x) for x in arg.args], positive=True)
|
||||
elif isinstance(arg, AspVar):
|
||||
return clingo().Variable(arg.name)
|
||||
return clingo().String(str(arg))
|
||||
|
||||
def symbol(self):
|
||||
"""Return a clingo symbol for this function"""
|
||||
return clingo().Function(
|
||||
self.name, [self._argify(arg) for arg in self.args], positive=True
|
||||
)
|
||||
|
||||
def __str__(self) -> str:
|
||||
return f"{self.name}({', '.join(str(_id(arg)) for arg in self.args)})"
|
||||
args = f"({','.join(str(_id(arg)) for arg in self.args)})"
|
||||
return f"{self.name}{args}"
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return str(self)
|
||||
|
@@ -11,36 +11,33 @@ class GdkPixbuf(MesonPackage):
|
||||
GTK+ 2 but it was split off into a separate package in preparation for the change to GTK+ 3."""
|
||||
|
||||
homepage = "https://gitlab.gnome.org/GNOME/gdk-pixbuf"
|
||||
url = "https://download.gnome.org/sources/gdk-pixbuf/2.42/gdk-pixbuf-2.42.12.tar.xz"
|
||||
git = "https://gitlab.gnome.org/GNOME/gdk-pixbuf"
|
||||
url = "https://gitlab.gnome.org/GNOME/gdk-pixbuf/-/archive/2.40.0/gdk-pixbuf-2.40.0.tar.gz"
|
||||
|
||||
# Falling back to the gitlab source since the mirror here seems to be broken
|
||||
# url = "https://ftp.acc.umu.se/pub/gnome/sources/gdk-pixbuf/2.40/gdk-pixbuf-2.40.0.tar.xz"
|
||||
# list_url = "https://ftp.acc.umu.se/pub/gnome/sources/gdk-pixbuf/"
|
||||
list_url = "https://download.gnome.org/sources/gdk-pixbuf/"
|
||||
list_depth = 1
|
||||
|
||||
license("LGPL-2.1-or-later", checked_by="wdconinc")
|
||||
|
||||
version("2.42.12", sha256="d41966831b3d291fcdfe31f683bea4b3f03241d591ddbe550b5db873af3da364")
|
||||
version("2.42.12", sha256="b9505b3445b9a7e48ced34760c3bcb73e966df3ac94c95a148cb669ab748e3c7")
|
||||
# https://nvd.nist.gov/vuln/detail/CVE-2022-48622
|
||||
version(
|
||||
"2.42.10",
|
||||
sha256="87a086c51d9705698b22bd598a795efaccf61e4db3a96f439dcb3cd90506dab8",
|
||||
sha256="ee9b6c75d13ba096907a2e3c6b27b61bcd17f5c7ebeab5a5b439d2f2e39fe44b",
|
||||
deprecated=True,
|
||||
)
|
||||
version(
|
||||
"2.42.9",
|
||||
sha256="226d950375907857b23c5946ae6d30128f08cd75f65f14b14334c7a9fb686e36",
|
||||
sha256="28f7958e7bf29a32d4e963556d241d0a41a6786582ff6a5ad11665e0347fc962",
|
||||
deprecated=True,
|
||||
)
|
||||
version(
|
||||
"2.42.6",
|
||||
sha256="c4f3a84a04bc7c5f4fbd97dce7976ab648c60628f72ad4c7b79edce2bbdb494d",
|
||||
sha256="c4a6b75b7ed8f58ca48da830b9fa00ed96d668d3ab4b1f723dcf902f78bde77f",
|
||||
deprecated=True,
|
||||
)
|
||||
version(
|
||||
"2.42.2",
|
||||
sha256="249b977279f761979104d7befbb5ee23f1661e29d19a36da5875f3a97952d13f",
|
||||
sha256="83c66a1cfd591d7680c144d2922c5955d38b4db336d7cd3ee109f7bcf9afef15",
|
||||
deprecated=True,
|
||||
)
|
||||
|
||||
@@ -69,7 +66,7 @@ class GdkPixbuf(MesonPackage):
|
||||
patch("docbook-cdn.patch", when="+man")
|
||||
|
||||
def url_for_version(self, version):
|
||||
url = "https://ftp.acc.umu.se/pub/gnome/sources/gdk-pixbuf/{0}/gdk-pixbuf-{1}.tar.xz"
|
||||
url = "https://download.gnome.org/sources/gdk-pixbuf/{0}/gdk-pixbuf-{1}.tar.xz"
|
||||
return url.format(version.up_to(2), version)
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
|
@@ -24,6 +24,9 @@ class NaluWind(CMakePackage, CudaPackage, ROCmPackage):
|
||||
tags = ["ecp", "ecp-apps"]
|
||||
|
||||
version("master", branch="master", submodules=True)
|
||||
version(
|
||||
"2.2.2", tag="v2.2.2", commit="6e98cb004e5cc2dcb60d09b155182a7095007c8e", submodules=True
|
||||
)
|
||||
version(
|
||||
"2.2.1", tag="v2.2.1", commit="ffa9de729df2a11b5241fdeb7628e7fab9f48f9b", submodules=True
|
||||
)
|
||||
|
@@ -206,6 +206,8 @@ class Tau(Package):
|
||||
|
||||
# https://github.com/UO-OACISS/tau2/commit/1d2cb6b
|
||||
patch("tau-rocm-disable-llvm-plugin.patch", when="@2.33.2 +rocm")
|
||||
# https://github.com/UO-OACISS/tau2/commit/523df968dd17ffad74f0d944ecbb958ba0e8c6e8
|
||||
patch("tau-rocm-disable-rocprofiler-default.patch", when="@2.34 +rocm")
|
||||
|
||||
filter_compiler_wrappers("Makefile", relative_root="include")
|
||||
filter_compiler_wrappers("Makefile.tau*", relative_root="lib")
|
||||
|
@@ -0,0 +1,21 @@
|
||||
spack-src/configure spack-src-patched/configurediff -ruN
|
||||
--- spack-src/configure 2024-11-05 17:07:38.000000000 -0800
|
||||
+++ spack-src-patched/configure 2025-05-19 08:56:22.311253328 -0700
|
||||
@@ -3191,7 +3191,7 @@
|
||||
#fixmakeargs="$fixmakeargs rocmdir=$rocmdir ROCM ROCPROFILER"
|
||||
fixmakeargs="$fixmakeargs rocmdir=$rocmdir ROCM"
|
||||
rocm=yes
|
||||
- rocprofiler=yes
|
||||
+ #rocprofiler=yes
|
||||
tauoptions="${tauoptions}-rocm"
|
||||
pthread=yes
|
||||
shift
|
||||
@@ -3207,7 +3207,7 @@
|
||||
rocm=yes
|
||||
fi
|
||||
#fixmakeargs="$fixmakeargs ROCPROFILER"
|
||||
- rocprofiler=yes
|
||||
+ #rocprofiler=yes
|
||||
tauoptions="${tauoptions}-rocm"
|
||||
pthread=yes
|
||||
shift
|
@@ -12,14 +12,14 @@ class Variorum(CMakePackage):
|
||||
|
||||
homepage = "https://variorum.readthedocs.io"
|
||||
git = "https://github.com/llnl/variorum.git"
|
||||
url = "https://github.com/llnl/variorum/archive/v0.1.0.tar.gz"
|
||||
url = "https://github.com/llnl/variorum/archive/v0.8.0.tar.gz"
|
||||
|
||||
maintainers("slabasan", "rountree")
|
||||
|
||||
license("MIT")
|
||||
|
||||
version("dev", branch="dev")
|
||||
version("0.8.0", sha256="0e7288d523488b2a585af8ffeb7874721526f46df563b21fc51e8846bf65f7d8")
|
||||
version("0.8.0", sha256="0e7288d523488b2a585af8ffeb7874721526f46df563b21fc51e8846bf65f7d8", preferred=True)
|
||||
version("0.7.0", sha256="36ec0219379ea2b7c8f9770b3271335c776ff5a3de71585714c33356345b2f0c")
|
||||
version("0.6.0", sha256="c0928a0e6901808ee50142d1034de15edc2c90d7d1b9fbce43757226e7c04306")
|
||||
version("0.5.0", sha256="de331762e7945ee882d08454ff9c66436e2b6f87f761d2b31c6ab3028723bfed")
|
||||
@@ -29,33 +29,38 @@ class Variorum(CMakePackage):
|
||||
version("0.2.0", sha256="b8c010b26aad8acc75d146c4461532cf5d9d3d24d6fc30ee68f6330a68e65744")
|
||||
version("0.1.0", tag="v0.1.0", commit="7747ee48cc60567bb3f09e732f24c041ecac894d")
|
||||
|
||||
depends_on("c", type="build") # generated
|
||||
depends_on("cxx", type="build") # generated
|
||||
depends_on("fortran", type="build") # generated
|
||||
|
||||
############
|
||||
# Variants #
|
||||
############
|
||||
variant("shared", default=True, description="Build Variorum as shared lib")
|
||||
variant("docs", default=False, description="Build Variorum's documentation")
|
||||
variant(
|
||||
"build_type",
|
||||
default="Release",
|
||||
description="CMake build type",
|
||||
values=("Debug", "Release"),
|
||||
)
|
||||
variant( "cpu", default="Intel", description="Supported CPU architecture",
|
||||
values=("Intel", "INTEL", "intel", "AMD", "amd", "IBM", "ibm", "ARM", "arm"), multi=False )
|
||||
variant( "gpu", default="none", description="Supported GPU architecture",
|
||||
values=("Intel", "INTEL", "intel", "AMD", "amd", "NVIDIA", "nvidia", "none" ), multi=False )
|
||||
|
||||
########################
|
||||
# Package dependencies #
|
||||
########################
|
||||
depends_on("cmake@2.8:", type="build")
|
||||
depends_on("hwloc")
|
||||
depends_on("jansson", type="link")
|
||||
|
||||
#########################
|
||||
# Documentation related #
|
||||
#########################
|
||||
depends_on("py-sphinx", when="+docs", type="build")
|
||||
# cuda@10.1.243 works, as does 12.4.1
|
||||
|
||||
depends_on("cuda", type=("build","link"), when="gpu=nvidia") # required for nvml
|
||||
depends_on("cuda", type=("build","link"), when="gpu=NVIDIA")
|
||||
|
||||
depends_on("hwloc +nvml", type=("build", "link"), when="gpu=nvidia")
|
||||
depends_on("hwloc +nvml", type=("build", "link"), when="gpu=NVIDIA")
|
||||
depends_on("hwloc", type=("build", "link"), when="gpu=none")
|
||||
depends_on("hwloc", type=("build", "link"), when="gpu=AMD")
|
||||
depends_on("hwloc", type=("build", "link"), when="gpu=amd")
|
||||
|
||||
|
||||
|
||||
root_cmakelists_dir = "src"
|
||||
|
||||
@@ -65,31 +70,59 @@ def cmake_args(self):
|
||||
|
||||
cmake_args.append("-DJANSSON_DIR={0}".format(spec["jansson"].prefix))
|
||||
|
||||
# The examples remain in the build directory
|
||||
cmake_args.append("-DBUILD_EXAMPLES=ON")
|
||||
cmake_args.append("-DBUILD_TESTS=ON")
|
||||
|
||||
if spec.satisfies("%cce"):
|
||||
cmake_args.append("-DCMAKE_C_FLAGS=-fcommon")
|
||||
cmake_args.append("-DCMAKE_CCC_FLAGS=-fcommon")
|
||||
cmake_args.append("-DCMAKE_Fortran_FLAGS=-ef")
|
||||
|
||||
if "+shared" in spec:
|
||||
cmake_args.append("-DBUILD_SHARED_LIBS=ON")
|
||||
else:
|
||||
cmake_args.append("-DBUILD_SHARED_LIBS=OFF")
|
||||
# CPU architecture selection.
|
||||
if any( s in spec for s in ("cpu_Intel", "cpu=INTEL", "cpu=intel") ):
|
||||
cmake_args.append("-DVARIORUM_WITH_INTEL_CPU=ON")
|
||||
cmake_args.append("-DVARIORUM_WITH_AMD_CPU=OFF")
|
||||
cmake_args.append("-DVARIORUM_WITH_IBM_CPU=OFF")
|
||||
cmake_args.append("-DVARIORUM_WITH_ARM_CPU=OFF")
|
||||
elif any( s in spec for s in ("cpu_AMD", "cpu=amd") ):
|
||||
cmake_args.append("-DVARIORUM_WITH_INTEL_CPU=OFF")
|
||||
cmake_args.append("-DVARIORUM_WITH_AMD_CPU=ON")
|
||||
cmake_args.append("-DVARIORUM_WITH_IBM_CPU=OFF")
|
||||
cmake_args.append("-DVARIORUM_WITH_ARM_CPU=OFF")
|
||||
elif any( s in spec for s in ("cpu_IBM", "cpu=ibm") ):
|
||||
cmake_args.append("-DVARIORUM_WITH_INTEL_CPU=OFF")
|
||||
cmake_args.append("-DVARIORUM_WITH_AMD_CPU=OFF")
|
||||
cmake_args.append("-DVARIORUM_WITH_IBM_CPU=ON")
|
||||
cmake_args.append("-DVARIORUM_WITH_ARM_CPU=OFF")
|
||||
elif any( s in spec for s in ("cpu_ARM", "cpu=arm") ):
|
||||
cmake_args.append("-DVARIORUM_WITH_INTEL_CPU=OFF")
|
||||
cmake_args.append("-DVARIORUM_WITH_AMD_CPU=OFF")
|
||||
cmake_args.append("-DVARIORUM_WITH_IBM_CPU=OFF")
|
||||
cmake_args.append("-DVARIORUM_WITH_ARM_CPU=ON")
|
||||
|
||||
if "+docs" in spec:
|
||||
cmake_args.append("-DBUILD_DOCS=ON")
|
||||
sphinx_build_exe = join_path(spec["py-sphinx"].prefix.bin, "sphinx-build")
|
||||
cmake_args.append("-DSPHINX_EXECUTABLE=" + sphinx_build_exe)
|
||||
# GPU architecture selection.
|
||||
if any( s in spec for s in ("gpu_Intel", "gpu=INTEL", "gpu=intel") ):
|
||||
cmake_args.append("-DVARIORUM_WITH_INTEL_GPU=ON")
|
||||
cmake_args.append("-DVARIORUM_WITH_AMD_GPU=OFF")
|
||||
cmake_args.append("-DVARIORUM_WITH_NVIDIA_GPU=OFF")
|
||||
elif any( s in spec for s in ("gpu_AMD", "gpu=amd") ):
|
||||
cmake_args.append("-DVARIORUM_WITH_INTEL_GPU=OFF")
|
||||
cmake_args.append("-DVARIORUM_WITH_AMD_GPU=ON")
|
||||
cmake_args.append("-DVARIORUM_WITH_NVIDIA_GPU=OFF")
|
||||
elif any( s in spec for s in ("gpu_NVIDIA", "gpu=nvidia") ):
|
||||
cmake_args.append("-DVARIORUM_WITH_INTEL_GPU=OFF")
|
||||
cmake_args.append("-DVARIORUM_WITH_AMD_GPU=OFF")
|
||||
cmake_args.append("-DVARIORUM_WITH_NVIDIA_GPU=ON")
|
||||
cmake_args.append("-DNVML_DIR={0}".format(spec["cuda"].prefix))
|
||||
else:
|
||||
cmake_args.append("-DBUILD_DOCS=OFF")
|
||||
cmake_args.append("-DVARIORUM_WITH_INTEL_GPU=OFF")
|
||||
cmake_args.append("-DVARIORUM_WITH_AMD_GPU=OFF")
|
||||
cmake_args.append("-DVARIORUM_WITH_NVIDIA_GPU=OFF")
|
||||
|
||||
if "build_type=Debug" in spec:
|
||||
cmake_args.append("-DVARIORUM_DEBUG=ON")
|
||||
else:
|
||||
cmake_args.append("-DVARIORUM_DEBUG=OFF")
|
||||
|
||||
if self.run_tests:
|
||||
cmake_args.append("-DBUILD_TESTS=ON")
|
||||
else:
|
||||
cmake_args.append("-DBUILD_TESTS=OFF")
|
||||
|
||||
return cmake_args
|
||||
|
Reference in New Issue
Block a user