Remove unused values (#48795)
Signed-off-by: Todd Gamblin <tgamblin@llnl.gov> Co-authored-by: Todd Gamblin <tgamblin@llnl.gov>
This commit is contained in:
parent
2c51b5853f
commit
6b13017ded
@ -177,16 +177,15 @@ def test_run(args):
|
|||||||
matching = spack.store.STORE.db.query_local(spec, hashes=hashes, explicit=explicit)
|
matching = spack.store.STORE.db.query_local(spec, hashes=hashes, explicit=explicit)
|
||||||
if spec and not matching:
|
if spec and not matching:
|
||||||
tty.warn("No {0}installed packages match spec {1}".format(explicit_str, spec))
|
tty.warn("No {0}installed packages match spec {1}".format(explicit_str, spec))
|
||||||
"""
|
|
||||||
TODO: Need to write out a log message and/or CDASH Testing
|
|
||||||
output that package not installed IF continue to process
|
|
||||||
these issues here.
|
|
||||||
|
|
||||||
if args.log_format:
|
# TODO: Need to write out a log message and/or CDASH Testing
|
||||||
# Proceed with the spec assuming the test process
|
# output that package not installed IF continue to process
|
||||||
# to ensure report package as skipped (e.g., for CI)
|
# these issues here.
|
||||||
specs_to_test.append(spec)
|
|
||||||
"""
|
# if args.log_format:
|
||||||
|
# # Proceed with the spec assuming the test process
|
||||||
|
# # to ensure report package as skipped (e.g., for CI)
|
||||||
|
# specs_to_test.append(spec)
|
||||||
|
|
||||||
specs_to_test.extend(matching)
|
specs_to_test.extend(matching)
|
||||||
|
|
||||||
|
@ -163,7 +163,7 @@ def format_help_sections(self, level):
|
|||||||
# lazily add all commands to the parser when needed.
|
# lazily add all commands to the parser when needed.
|
||||||
add_all_commands(self)
|
add_all_commands(self)
|
||||||
|
|
||||||
"""Print help on subcommands in neatly formatted sections."""
|
# Print help on subcommands in neatly formatted sections.
|
||||||
formatter = self._get_formatter()
|
formatter = self._get_formatter()
|
||||||
|
|
||||||
# Create a list of subcommand actions. Argparse internals are nasty!
|
# Create a list of subcommand actions. Argparse internals are nasty!
|
||||||
|
@ -66,10 +66,6 @@
|
|||||||
]
|
]
|
||||||
FLAG_HANDLER_TYPE = Callable[[str, Iterable[str]], FLAG_HANDLER_RETURN_TYPE]
|
FLAG_HANDLER_TYPE = Callable[[str, Iterable[str]], FLAG_HANDLER_RETURN_TYPE]
|
||||||
|
|
||||||
"""Allowed URL schemes for spack packages."""
|
|
||||||
_ALLOWED_URL_SCHEMES = ["http", "https", "ftp", "file", "git"]
|
|
||||||
|
|
||||||
|
|
||||||
#: Filename for the Spack build/install log.
|
#: Filename for the Spack build/install log.
|
||||||
_spack_build_logfile = "spack-build-out.txt"
|
_spack_build_logfile = "spack-build-out.txt"
|
||||||
|
|
||||||
|
@ -4726,7 +4726,10 @@ def __str__(self):
|
|||||||
bool_keys = []
|
bool_keys = []
|
||||||
kv_keys = []
|
kv_keys = []
|
||||||
for key in sorted_keys:
|
for key in sorted_keys:
|
||||||
bool_keys.append(key) if isinstance(self[key].value, bool) else kv_keys.append(key)
|
if isinstance(self[key].value, bool):
|
||||||
|
bool_keys.append(key)
|
||||||
|
else:
|
||||||
|
kv_keys.append(key)
|
||||||
|
|
||||||
# add spaces before and after key/value variants.
|
# add spaces before and after key/value variants.
|
||||||
string = io.StringIO()
|
string = io.StringIO()
|
||||||
|
@ -328,16 +328,14 @@ def test_get_spec_filter_list(mutable_mock_env_path, mutable_mock_repo):
|
|||||||
e1.add("hypre")
|
e1.add("hypre")
|
||||||
e1.concretize()
|
e1.concretize()
|
||||||
|
|
||||||
"""
|
# Concretizing the above environment results in the following graphs:
|
||||||
Concretizing the above environment results in the following graphs:
|
|
||||||
|
|
||||||
mpileaks -> mpich (provides mpi virtual dep of mpileaks)
|
# mpileaks -> mpich (provides mpi virtual dep of mpileaks)
|
||||||
-> callpath -> dyninst -> libelf
|
# -> callpath -> dyninst -> libelf
|
||||||
-> libdwarf -> libelf
|
# -> libdwarf -> libelf
|
||||||
-> mpich (provides mpi dep of callpath)
|
# -> mpich (provides mpi dep of callpath)
|
||||||
|
|
||||||
hypre -> openblas-with-lapack (provides lapack and blas virtual deps of hypre)
|
# hypre -> openblas-with-lapack (provides lapack and blas virtual deps of hypre)
|
||||||
"""
|
|
||||||
|
|
||||||
touched = ["libdwarf"]
|
touched = ["libdwarf"]
|
||||||
|
|
||||||
|
@ -139,7 +139,7 @@ def test_gc_except_specific_environments(mutable_database, mutable_mock_env_path
|
|||||||
def test_gc_except_nonexisting_dir_env(mutable_database, mutable_mock_env_path, tmpdir):
|
def test_gc_except_nonexisting_dir_env(mutable_database, mutable_mock_env_path, tmpdir):
|
||||||
output = gc("-ye", tmpdir.strpath, fail_on_error=False)
|
output = gc("-ye", tmpdir.strpath, fail_on_error=False)
|
||||||
assert "No such environment" in output
|
assert "No such environment" in output
|
||||||
gc.returncode == 1
|
assert gc.returncode == 1
|
||||||
|
|
||||||
|
|
||||||
@pytest.mark.db
|
@pytest.mark.db
|
||||||
|
@ -26,9 +26,9 @@ def test_manpath_trailing_colon(
|
|||||||
else ("--sh", "export %s=%s", ";")
|
else ("--sh", "export %s=%s", ";")
|
||||||
)
|
)
|
||||||
|
|
||||||
"""Test that the commands generated by load add the MANPATH prefix
|
# Test that the commands generated by load add the MANPATH prefix
|
||||||
inspections. Also test that Spack correctly preserves the default/existing
|
# inspections. Also test that Spack correctly preserves the default/existing
|
||||||
manpath search path via a trailing colon"""
|
# manpath search path via a trailing colon
|
||||||
install("mpileaks")
|
install("mpileaks")
|
||||||
|
|
||||||
sh_out = load(shell, "mpileaks")
|
sh_out = load(shell, "mpileaks")
|
||||||
@ -81,7 +81,9 @@ def extract_value(output, variable):
|
|||||||
|
|
||||||
# Finally, do we list them in topo order?
|
# Finally, do we list them in topo order?
|
||||||
for i, pkg in enumerate(pkgs):
|
for i, pkg in enumerate(pkgs):
|
||||||
set(s.name for s in mpileaks_spec[pkg].traverse(direction="parents")) in set(pkgs[:i])
|
assert {s.name for s in mpileaks_spec[pkg].traverse(direction="parents")}.issubset(
|
||||||
|
pkgs[: i + 1]
|
||||||
|
)
|
||||||
|
|
||||||
# Lastly, do we keep track that mpileaks was loaded?
|
# Lastly, do we keep track that mpileaks was loaded?
|
||||||
assert (
|
assert (
|
||||||
|
@ -1,17 +1,6 @@
|
|||||||
# Copyright Spack Project Developers. See COPYRIGHT file for details.
|
# Copyright Spack Project Developers. See COPYRIGHT file for details.
|
||||||
#
|
#
|
||||||
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
|
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
|
||||||
import pathlib
|
|
||||||
|
|
||||||
import pytest
|
|
||||||
|
|
||||||
import spack.concretize
|
|
||||||
import spack.config
|
|
||||||
import spack.environment as ev
|
|
||||||
import spack.paths
|
|
||||||
import spack.repo
|
|
||||||
import spack.spec
|
|
||||||
import spack.util.spack_yaml as syaml
|
|
||||||
|
|
||||||
"""
|
"""
|
||||||
These tests include the following package DAGs:
|
These tests include the following package DAGs:
|
||||||
@ -42,6 +31,18 @@
|
|||||||
y
|
y
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
import pathlib
|
||||||
|
|
||||||
|
import pytest
|
||||||
|
|
||||||
|
import spack.concretize
|
||||||
|
import spack.config
|
||||||
|
import spack.environment as ev
|
||||||
|
import spack.paths
|
||||||
|
import spack.repo
|
||||||
|
import spack.spec
|
||||||
|
import spack.util.spack_yaml as syaml
|
||||||
|
|
||||||
|
|
||||||
@pytest.fixture
|
@pytest.fixture
|
||||||
def test_repo(mutable_config, monkeypatch, mock_stage):
|
def test_repo(mutable_config, monkeypatch, mock_stage):
|
||||||
|
@ -93,28 +93,26 @@
|
|||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
"""This is a list of filesystem locations to test locks in. Paths are
|
#: This is a list of filesystem locations to test locks in. Paths are
|
||||||
expanded so that %u is replaced with the current username. '~' is also
|
#: expanded so that %u is replaced with the current username. '~' is also
|
||||||
legal and will be expanded to the user's home directory.
|
#: legal and will be expanded to the user's home directory.
|
||||||
|
#:
|
||||||
Tests are skipped for directories that don't exist, so you'll need to
|
#: Tests are skipped for directories that don't exist, so you'll need to
|
||||||
update this with the locations of NFS, Lustre, and other mounts on your
|
#: update this with the locations of NFS, Lustre, and other mounts on your
|
||||||
system.
|
#: system.
|
||||||
"""
|
|
||||||
locations = [
|
locations = [
|
||||||
tempfile.gettempdir(),
|
tempfile.gettempdir(),
|
||||||
os.path.join("/nfs/tmp2/", getpass.getuser()),
|
os.path.join("/nfs/tmp2/", getpass.getuser()),
|
||||||
os.path.join("/p/lscratch*/", getpass.getuser()),
|
os.path.join("/p/lscratch*/", getpass.getuser()),
|
||||||
]
|
]
|
||||||
|
|
||||||
"""This is the longest a failed multiproc test will take.
|
#: This is the longest a failed multiproc test will take.
|
||||||
Barriers will time out and raise an exception after this interval.
|
#: Barriers will time out and raise an exception after this interval.
|
||||||
In MPI mode, barriers don't time out (they hang). See mpi_multiproc_test.
|
#: In MPI mode, barriers don't time out (they hang). See mpi_multiproc_test.
|
||||||
"""
|
|
||||||
barrier_timeout = 5
|
barrier_timeout = 5
|
||||||
|
|
||||||
"""This is the lock timeout for expected failures.
|
#: This is the lock timeout for expected failures.
|
||||||
This may need to be higher for some filesystems."""
|
#: This may need to be higher for some filesystems.
|
||||||
lock_fail_timeout = 0.1
|
lock_fail_timeout = 0.1
|
||||||
|
|
||||||
|
|
||||||
@ -286,9 +284,8 @@ def wait(self):
|
|||||||
comm.Barrier() # barrier after each MPI test.
|
comm.Barrier() # barrier after each MPI test.
|
||||||
|
|
||||||
|
|
||||||
"""``multiproc_test()`` should be called by tests below.
|
#: ``multiproc_test()`` should be called by tests below.
|
||||||
``multiproc_test()`` will work for either MPI runs or for local runs.
|
#: ``multiproc_test()`` will work for either MPI runs or for local runs.
|
||||||
"""
|
|
||||||
multiproc_test = mpi_multiproc_test if mpi else local_multiproc_test
|
multiproc_test = mpi_multiproc_test if mpi else local_multiproc_test
|
||||||
|
|
||||||
|
|
||||||
|
@ -132,7 +132,8 @@ def test_reporters_extract_skipped(state):
|
|||||||
parts = spack.reporters.extract.extract_test_parts("fake", outputs)
|
parts = spack.reporters.extract.extract_test_parts("fake", outputs)
|
||||||
|
|
||||||
assert len(parts) == 1
|
assert len(parts) == 1
|
||||||
parts[0]["completed"] == expected
|
|
||||||
|
assert parts[0]["completed"] == spack.reporters.extract.completed["skipped"]
|
||||||
|
|
||||||
|
|
||||||
def test_reporters_skip_new():
|
def test_reporters_skip_new():
|
||||||
|
@ -198,7 +198,7 @@ def script_dir(sbang_line):
|
|||||||
],
|
],
|
||||||
)
|
)
|
||||||
def test_shebang_interpreter_regex(shebang, interpreter):
|
def test_shebang_interpreter_regex(shebang, interpreter):
|
||||||
sbang.get_interpreter(shebang) == interpreter
|
assert sbang.get_interpreter(shebang) == interpreter
|
||||||
|
|
||||||
|
|
||||||
def test_shebang_handling(script_dir, sbang_line):
|
def test_shebang_handling(script_dir, sbang_line):
|
||||||
|
@ -428,31 +428,29 @@ def test_copy_through_spec_build_interface(self):
|
|||||||
c2 = s["mpileaks"]["mpileaks"].copy()
|
c2 = s["mpileaks"]["mpileaks"].copy()
|
||||||
assert c0 == c1 == c2 == s
|
assert c0 == c1 == c2 == s
|
||||||
|
|
||||||
"""
|
# Here is the graph with deptypes labeled (assume all packages have a 'dt'
|
||||||
Here is the graph with deptypes labeled (assume all packages have a 'dt'
|
# prefix). Arrows are marked with the deptypes ('b' for 'build', 'l' for
|
||||||
prefix). Arrows are marked with the deptypes ('b' for 'build', 'l' for
|
# 'link', 'r' for 'run').
|
||||||
'link', 'r' for 'run').
|
|
||||||
|
|
||||||
use -bl-> top
|
# use -bl-> top
|
||||||
|
|
||||||
top -b-> build1
|
# top -b-> build1
|
||||||
top -bl-> link1
|
# top -bl-> link1
|
||||||
top -r-> run1
|
# top -r-> run1
|
||||||
|
|
||||||
build1 -b-> build2
|
# build1 -b-> build2
|
||||||
build1 -bl-> link2
|
# build1 -bl-> link2
|
||||||
build1 -r-> run2
|
# build1 -r-> run2
|
||||||
|
|
||||||
link1 -bl-> link3
|
# link1 -bl-> link3
|
||||||
|
|
||||||
run1 -bl-> link5
|
# run1 -bl-> link5
|
||||||
run1 -r-> run3
|
# run1 -r-> run3
|
||||||
|
|
||||||
link3 -b-> build2
|
# link3 -b-> build2
|
||||||
link3 -bl-> link4
|
# link3 -bl-> link4
|
||||||
|
|
||||||
run3 -b-> build3
|
# run3 -b-> build3
|
||||||
"""
|
|
||||||
|
|
||||||
@pytest.mark.parametrize(
|
@pytest.mark.parametrize(
|
||||||
"spec_str,deptypes,expected",
|
"spec_str,deptypes,expected",
|
||||||
|
@ -125,7 +125,7 @@ def check_expand_archive(stage, stage_name, expected_file_list):
|
|||||||
|
|
||||||
assert os.path.isfile(fn)
|
assert os.path.isfile(fn)
|
||||||
with open(fn, encoding="utf-8") as _file:
|
with open(fn, encoding="utf-8") as _file:
|
||||||
_file.read() == contents
|
assert _file.read() == contents
|
||||||
|
|
||||||
|
|
||||||
def check_fetch(stage, stage_name):
|
def check_fetch(stage, stage_name):
|
||||||
|
@ -20,12 +20,7 @@
|
|||||||
|
|
||||||
datadir = os.path.join(spack_root, "lib", "spack", "spack", "test", "data", "compression")
|
datadir = os.path.join(spack_root, "lib", "spack", "spack", "test", "data", "compression")
|
||||||
|
|
||||||
ext_archive = {}
|
ext_archive = {ext: f"Foo.{ext}" for ext in llnl.url.ALLOWED_ARCHIVE_TYPES if "TAR" not in ext}
|
||||||
[
|
|
||||||
ext_archive.update({ext: ".".join(["Foo", ext])})
|
|
||||||
for ext in llnl.url.ALLOWED_ARCHIVE_TYPES
|
|
||||||
if "TAR" not in ext
|
|
||||||
]
|
|
||||||
# Spack does not use Python native handling for tarballs or zip
|
# Spack does not use Python native handling for tarballs or zip
|
||||||
# Don't test tarballs or zip in native test
|
# Don't test tarballs or zip in native test
|
||||||
native_archive_list = [
|
native_archive_list = [
|
||||||
|
@ -100,10 +100,8 @@ def install(self, spec, prefix):
|
|||||||
for ext in exts:
|
for ext in exts:
|
||||||
glob_str = os.path.join(pth, ext)
|
glob_str = os.path.join(pth, ext)
|
||||||
files = glob.glob(glob_str)
|
files = glob.glob(glob_str)
|
||||||
[
|
for x in files:
|
||||||
shutil.copy(
|
shutil.copy(
|
||||||
os.path.join(self._7z_src_dir, x),
|
os.path.join(self._7z_src_dir, x),
|
||||||
os.path.join(prefix, os.path.basename(x)),
|
os.path.join(prefix, os.path.basename(x)),
|
||||||
)
|
)
|
||||||
for x in files
|
|
||||||
]
|
|
||||||
|
@ -202,8 +202,8 @@ def configure_args(self):
|
|||||||
args.append("--enable-void-return-complex")
|
args.append("--enable-void-return-complex")
|
||||||
|
|
||||||
if spec.satisfies("@3.0:3.1 %aocc"):
|
if spec.satisfies("@3.0:3.1 %aocc"):
|
||||||
"""To enabled Fortran to C calling convention for
|
# To enable Fortran to C calling convention for complex types when compiling with
|
||||||
complex types when compiling with aocc flang"""
|
# aocc flang
|
||||||
args.append("--enable-f2c-dotc")
|
args.append("--enable-f2c-dotc")
|
||||||
|
|
||||||
if spec.satisfies("@3.0.1: +ilp64"):
|
if spec.satisfies("@3.0.1: +ilp64"):
|
||||||
|
@ -63,8 +63,9 @@ class Dyninst(CMakePackage):
|
|||||||
|
|
||||||
variant("stat_dysect", default=False, description="Patch for STAT's DySectAPI")
|
variant("stat_dysect", default=False, description="Patch for STAT's DySectAPI")
|
||||||
|
|
||||||
boost_libs = "+atomic+chrono+date_time+filesystem+system+thread+timer"
|
boost_libs = (
|
||||||
"+container+random+exception"
|
"+atomic+chrono+date_time+filesystem+system+thread+timer+container+random+exception"
|
||||||
|
)
|
||||||
|
|
||||||
depends_on("boost@1.61.0:" + boost_libs, when="@10.1.0:")
|
depends_on("boost@1.61.0:" + boost_libs, when="@10.1.0:")
|
||||||
depends_on("boost@1.61.0:1.69" + boost_libs, when="@:10.0")
|
depends_on("boost@1.61.0:1.69" + boost_libs, when="@:10.0")
|
||||||
|
@ -150,7 +150,7 @@ def cmake_args(self):
|
|||||||
),
|
),
|
||||||
"-DCUSTOM_BLAS_SUFFIX:BOOL=TRUE",
|
"-DCUSTOM_BLAS_SUFFIX:BOOL=TRUE",
|
||||||
]
|
]
|
||||||
),
|
)
|
||||||
if spec.satisfies("+scalapack"):
|
if spec.satisfies("+scalapack"):
|
||||||
args.extend(
|
args.extend(
|
||||||
[
|
[
|
||||||
@ -159,7 +159,7 @@ def cmake_args(self):
|
|||||||
),
|
),
|
||||||
"-DCUSTOM_LAPACK_SUFFIX:BOOL=TRUE",
|
"-DCUSTOM_LAPACK_SUFFIX:BOOL=TRUE",
|
||||||
]
|
]
|
||||||
),
|
)
|
||||||
else:
|
else:
|
||||||
math_libs = spec["lapack"].libs + spec["blas"].libs
|
math_libs = spec["lapack"].libs + spec["blas"].libs
|
||||||
|
|
||||||
|
@ -80,7 +80,7 @@ def cmake_args(self):
|
|||||||
avx512_suffix = ""
|
avx512_suffix = ""
|
||||||
if spec.satisfies("@:3.12"):
|
if spec.satisfies("@:3.12"):
|
||||||
avx512_suffix = "SKX"
|
avx512_suffix = "SKX"
|
||||||
args.append(self.define("EMBREE_ISA_AVX512" + avx512_suffix, True)),
|
args.append(self.define("EMBREE_ISA_AVX512" + avx512_suffix, True))
|
||||||
if spec.satisfies("%gcc@:7"):
|
if spec.satisfies("%gcc@:7"):
|
||||||
# remove unsupported -mprefer-vector-width=256, otherwise copied
|
# remove unsupported -mprefer-vector-width=256, otherwise copied
|
||||||
# from common/cmake/gnu.cmake
|
# from common/cmake/gnu.cmake
|
||||||
|
@ -170,7 +170,7 @@ def setup_run_environment(self, env):
|
|||||||
if minimal:
|
if minimal:
|
||||||
# pre-build or minimal environment
|
# pre-build or minimal environment
|
||||||
tty.info("foam-extend minimal env {0}".format(self.prefix))
|
tty.info("foam-extend minimal env {0}".format(self.prefix))
|
||||||
env.set("FOAM_INST_DIR", os.path.dirname(self.projectdir)),
|
env.set("FOAM_INST_DIR", os.path.dirname(self.projectdir))
|
||||||
env.set("FOAM_PROJECT_DIR", self.projectdir)
|
env.set("FOAM_PROJECT_DIR", self.projectdir)
|
||||||
env.set("WM_PROJECT_DIR", self.projectdir)
|
env.set("WM_PROJECT_DIR", self.projectdir)
|
||||||
for d in ["wmake", self.archbin]: # bin added automatically
|
for d in ["wmake", self.archbin]: # bin added automatically
|
||||||
|
@ -53,7 +53,7 @@ def patch(self):
|
|||||||
def setup_run_environment(self, env):
|
def setup_run_environment(self, env):
|
||||||
env.set("GUROBI_HOME", self.prefix)
|
env.set("GUROBI_HOME", self.prefix)
|
||||||
env.set("GRB_LICENSE_FILE", join_path(self.prefix, "gurobi.lic"))
|
env.set("GRB_LICENSE_FILE", join_path(self.prefix, "gurobi.lic"))
|
||||||
env.prepend_path("LD_LIBRARY_PATH", self.prefix.lib),
|
env.prepend_path("LD_LIBRARY_PATH", self.prefix.lib)
|
||||||
|
|
||||||
def install(self, spec, prefix):
|
def install(self, spec, prefix):
|
||||||
install_tree("linux64", prefix)
|
install_tree("linux64", prefix)
|
||||||
|
@ -74,8 +74,8 @@ def setup_build_tests(self):
|
|||||||
filter_file("mpirun", f"{launcher}", filename)
|
filter_file("mpirun", f"{launcher}", filename)
|
||||||
filter_file(r"-n 2", "-n 1 --timeout 240", filename)
|
filter_file(r"-n 2", "-n 1 --timeout 240", filename)
|
||||||
|
|
||||||
"""Copy the example source files after the package is installed to an
|
# Copy the example source files after the package is installed to an
|
||||||
install test subdirectory for use during `spack test run`."""
|
# install test subdirectory for use during `spack test run`.
|
||||||
cache_extra_test_sources(self, ["tests", "samples"])
|
cache_extra_test_sources(self, ["tests", "samples"])
|
||||||
|
|
||||||
def mpi_launcher(self):
|
def mpi_launcher(self):
|
||||||
|
@ -666,12 +666,12 @@ def cmake_args(self):
|
|||||||
if self.spec.satisfies("@5.6.0:"):
|
if self.spec.satisfies("@5.6.0:"):
|
||||||
args.append(self.define("ROCCLR_PATH", self.stage.source_path + "/clr/rocclr"))
|
args.append(self.define("ROCCLR_PATH", self.stage.source_path + "/clr/rocclr"))
|
||||||
args.append(self.define("AMD_OPENCL_PATH", self.stage.source_path + "/clr/opencl"))
|
args.append(self.define("AMD_OPENCL_PATH", self.stage.source_path + "/clr/opencl"))
|
||||||
args.append(self.define("CLR_BUILD_HIP", True)),
|
args.append(self.define("CLR_BUILD_HIP", True))
|
||||||
args.append(self.define("CLR_BUILD_OCL", False)),
|
args.append(self.define("CLR_BUILD_OCL", False))
|
||||||
if self.spec.satisfies("@5.6:5.7"):
|
if self.spec.satisfies("@5.6:5.7"):
|
||||||
args.append(self.define("HIPCC_BIN_DIR", self.stage.source_path + "/hipcc/bin")),
|
args.append(self.define("HIPCC_BIN_DIR", self.stage.source_path + "/hipcc/bin"))
|
||||||
if self.spec.satisfies("@6.0:"):
|
if self.spec.satisfies("@6.0:"):
|
||||||
args.append(self.define("HIPCC_BIN_DIR", self.spec["hipcc"].prefix.bin)),
|
args.append(self.define("HIPCC_BIN_DIR", self.spec["hipcc"].prefix.bin))
|
||||||
return args
|
return args
|
||||||
|
|
||||||
test_src_dir_old = "samples"
|
test_src_dir_old = "samples"
|
||||||
|
@ -513,7 +513,7 @@ def setup_build_tests(self):
|
|||||||
cmake_source_path = join_path(self.stage.source_path, self.test_script_relative_path)
|
cmake_source_path = join_path(self.stage.source_path, self.test_script_relative_path)
|
||||||
if not os.path.exists(cmake_source_path):
|
if not os.path.exists(cmake_source_path):
|
||||||
return
|
return
|
||||||
"""Copy test."""
|
# Copy test
|
||||||
cmake_out_path = join_path(self.test_script_relative_path, "out")
|
cmake_out_path = join_path(self.test_script_relative_path, "out")
|
||||||
cmake_args = [
|
cmake_args = [
|
||||||
cmake_source_path,
|
cmake_source_path,
|
||||||
|
@ -10,7 +10,7 @@ def try_le(x, y):
|
|||||||
try:
|
try:
|
||||||
return int(x) < y
|
return int(x) < y
|
||||||
except ValueError:
|
except ValueError:
|
||||||
False
|
return False
|
||||||
|
|
||||||
|
|
||||||
class LcFramework(CMakePackage, CudaPackage):
|
class LcFramework(CMakePackage, CudaPackage):
|
||||||
|
@ -53,30 +53,35 @@ def build_targets(self):
|
|||||||
if self.compiler.name == "intel":
|
if self.compiler.name == "intel":
|
||||||
if arch == "MIC":
|
if arch == "MIC":
|
||||||
cxxflags += "-DLCALS_PLATFORM_X86_SSE -DLCALS_COMPILER_ICC "
|
cxxflags += "-DLCALS_PLATFORM_X86_SSE -DLCALS_COMPILER_ICC "
|
||||||
cxx_compile += "-g -O3 -mmic -vec-report3 "
|
cxx_compile += (
|
||||||
" -inline-max-total-size=10000 -inline-forceinline -ansi-alias"
|
"-g -O3 -mmic -vec-report3 "
|
||||||
|
" -inline-max-total-size=10000 -inline-forceinline -ansi-alias"
|
||||||
|
)
|
||||||
elif microarch == "sse" and arch == "x86":
|
elif microarch == "sse" and arch == "x86":
|
||||||
cxxflags += "-DLCALS_PLATFORM_X86_SSE -DLCALS_COMPILER_ICC "
|
cxxflags += "-DLCALS_PLATFORM_X86_SSE -DLCALS_COMPILER_ICC "
|
||||||
cxx_compile += "-O3 -msse4.1 -inline-max-total-size=10000"
|
cxx_compile += (
|
||||||
" -inline-forceinline -ansi-alias -std=c++0x "
|
"-O3 -msse4.1 -inline-max-total-size=10000"
|
||||||
|
" -inline-forceinline -ansi-alias -std=c++0x "
|
||||||
|
)
|
||||||
elif microarch == "avx" and arch == "x86":
|
elif microarch == "avx" and arch == "x86":
|
||||||
cxxflags += "-DLCALS_PLATFORM_X86_AVX -DLCALS_COMPILER_ICC "
|
cxxflags += "-DLCALS_PLATFORM_X86_AVX -DLCALS_COMPILER_ICC "
|
||||||
cxx_compile += "-O3 -mavx -inline-max-total-size=10000"
|
cxx_compile += (
|
||||||
" -inline-forceinline -ansi-alias -std=c++0x"
|
"-O3 -mavx -inline-max-total-size=10000"
|
||||||
|
" -inline-forceinline -ansi-alias -std=c++0x"
|
||||||
|
)
|
||||||
cxxflags += self.compiler.openmp_flag
|
cxxflags += self.compiler.openmp_flag
|
||||||
elif self.compiler.name == "gcc":
|
elif self.compiler.name == "gcc":
|
||||||
if arch == "MIC" or (microarch == "sse" and arch == "x86"):
|
if arch == "MIC" or (microarch == "sse" and arch == "x86"):
|
||||||
cxxflags += "-DLCALS_PLATFORM_X86_SSE -DLCALS_COMPILER_GNU "
|
cxxflags += "-DLCALS_PLATFORM_X86_SSE -DLCALS_COMPILER_GNU "
|
||||||
cxx_compile += "-Ofast -msse4.1 -finline-functions"
|
cxx_compile += (
|
||||||
" -finline-limit=10000 -std=c++11 "
|
"-Ofast -msse4.1 -finline-functions" " -finline-limit=10000 -std=c++11 "
|
||||||
|
)
|
||||||
elif microarch == "avx" and arch == "x86":
|
elif microarch == "avx" and arch == "x86":
|
||||||
cxxflags += "-DLCALS_PLATFORM_X86_AVX -DLCALS_COMPILER_GNU "
|
cxxflags += "-DLCALS_PLATFORM_X86_AVX -DLCALS_COMPILER_GNU "
|
||||||
cxx_compile += "-Ofast -mavx -finline-functions"
|
cxx_compile += "-Ofast -mavx -finline-functions" " -finline-limit=10000 -std=c++11"
|
||||||
" -finline-limit=10000 -std=c++11"
|
|
||||||
elif arch == "aarch64":
|
elif arch == "aarch64":
|
||||||
cxxflags += "-DLCALS_COMPILER_GNU "
|
cxxflags += "-DLCALS_COMPILER_GNU "
|
||||||
cxx_compile += "-Ofast -finline-functions"
|
cxx_compile += "-Ofast -finline-functions" " -finline-limit=10000 -std=c++11"
|
||||||
" -finline-limit=10000 -std=c++11"
|
|
||||||
cxxflags += self.compiler.openmp_flag
|
cxxflags += self.compiler.openmp_flag
|
||||||
|
|
||||||
targets.append("LCALS_ARCH=")
|
targets.append("LCALS_ARCH=")
|
||||||
|
@ -110,10 +110,10 @@ def install(self, spec, prefix):
|
|||||||
)
|
)
|
||||||
install_tree(
|
install_tree(
|
||||||
join_path(self.stage.source_path, "hm_cfg_files"), join_path(prefix, "hm_cfg_files")
|
join_path(self.stage.source_path, "hm_cfg_files"), join_path(prefix, "hm_cfg_files")
|
||||||
),
|
)
|
||||||
install_tree(
|
install_tree(
|
||||||
join_path(self.stage.source_path, "extlib", "h3d"), join_path(prefix, "extlib", "h3d")
|
join_path(self.stage.source_path, "extlib", "h3d"), join_path(prefix, "extlib", "h3d")
|
||||||
),
|
)
|
||||||
install_tree(
|
install_tree(
|
||||||
join_path(self.stage.source_path, "extlib", "hm_reader"),
|
join_path(self.stage.source_path, "extlib", "hm_reader"),
|
||||||
join_path(prefix, "extlib", "hm_reader"),
|
join_path(prefix, "extlib", "hm_reader"),
|
||||||
|
@ -96,10 +96,10 @@ def install(self, spec, prefix):
|
|||||||
)
|
)
|
||||||
install_tree(
|
install_tree(
|
||||||
join_path(self.stage.source_path, "hm_cfg_files"), join_path(prefix, "hm_cfg_files")
|
join_path(self.stage.source_path, "hm_cfg_files"), join_path(prefix, "hm_cfg_files")
|
||||||
),
|
)
|
||||||
install_tree(
|
install_tree(
|
||||||
join_path(self.stage.source_path, "extlib", "h3d"), join_path(prefix, "extlib", "h3d")
|
join_path(self.stage.source_path, "extlib", "h3d"), join_path(prefix, "extlib", "h3d")
|
||||||
),
|
)
|
||||||
install_tree(
|
install_tree(
|
||||||
join_path(self.stage.source_path, "extlib", "hm_reader"),
|
join_path(self.stage.source_path, "extlib", "hm_reader"),
|
||||||
join_path(prefix, "extlib", "hm_reader"),
|
join_path(prefix, "extlib", "hm_reader"),
|
||||||
|
@ -386,7 +386,7 @@ class Paraview(CMakePackage, CudaPackage, ROCmPackage):
|
|||||||
|
|
||||||
def url_for_version(self, version):
|
def url_for_version(self, version):
|
||||||
_urlfmt = "http://www.paraview.org/files/v{0}/ParaView-v{1}{2}.tar.{3}"
|
_urlfmt = "http://www.paraview.org/files/v{0}/ParaView-v{1}{2}.tar.{3}"
|
||||||
"""Handle ParaView version-based custom URLs."""
|
# Handle ParaView version-based custom URLs
|
||||||
if version < Version("5.1.0"):
|
if version < Version("5.1.0"):
|
||||||
return _urlfmt.format(version.up_to(2), version, "-source", "gz")
|
return _urlfmt.format(version.up_to(2), version, "-source", "gz")
|
||||||
elif version < Version("5.6.1"):
|
elif version < Version("5.6.1"):
|
||||||
|
@ -6,9 +6,8 @@
|
|||||||
|
|
||||||
|
|
||||||
class PyJupyterTelemetry(PythonPackage):
|
class PyJupyterTelemetry(PythonPackage):
|
||||||
"""Jupyter Telemetry enables Jupyter Applications to record events and transmit"""
|
"""Jupyter Telemetry enables Jupyter Applications to record events and transmit them to
|
||||||
|
destinations as structured data"""
|
||||||
""" them to destinations as structured data"""
|
|
||||||
|
|
||||||
pypi = "jupyter-telemetry/jupyter_telemetry-0.1.0.tar.gz"
|
pypi = "jupyter-telemetry/jupyter_telemetry-0.1.0.tar.gz"
|
||||||
|
|
||||||
|
@ -210,7 +210,7 @@ def setup_build_environment(self, env):
|
|||||||
env.set("LDFLAGS", "-fuse-ld=lld")
|
env.set("LDFLAGS", "-fuse-ld=lld")
|
||||||
|
|
||||||
def setup_run_environment(self, env):
|
def setup_run_environment(self, env):
|
||||||
env.prepend_path("LD_LIBRARY_PATH", self.prefix.lib),
|
env.prepend_path("LD_LIBRARY_PATH", self.prefix.lib)
|
||||||
env.set("OCL_ICD_VENDORS", self.prefix.vendors + "/")
|
env.set("OCL_ICD_VENDORS", self.prefix.vendors + "/")
|
||||||
|
|
||||||
@run_after("install")
|
@run_after("install")
|
||||||
|
@ -599,8 +599,10 @@ def install(self, spec, prefix):
|
|||||||
"-DNUMACTL_DIR={0}".format(numactl_prefix),
|
"-DNUMACTL_DIR={0}".format(numactl_prefix),
|
||||||
]
|
]
|
||||||
if self.spec.satisfies("@:6.2"):
|
if self.spec.satisfies("@:6.2"):
|
||||||
"-DHSAKMT_LIB={0}/lib".format(hsakmt_prefix),
|
openmp_common_args += [
|
||||||
"-DHSAKMT_LIB64={0}/lib64".format(hsakmt_prefix),
|
"-DHSAKMT_LIB={0}/lib".format(hsakmt_prefix),
|
||||||
|
"-DHSAKMT_LIB64={0}/lib64".format(hsakmt_prefix),
|
||||||
|
]
|
||||||
|
|
||||||
components["openmp"] = ["../rocm-openmp-extras/llvm-project/openmp"]
|
components["openmp"] = ["../rocm-openmp-extras/llvm-project/openmp"]
|
||||||
components["openmp"] += openmp_common_args
|
components["openmp"] += openmp_common_args
|
||||||
|
@ -154,8 +154,8 @@ def cmake_args(self):
|
|||||||
self.define("UT_INC", self.spec["googletest"].prefix.include),
|
self.define("UT_INC", self.spec["googletest"].prefix.include),
|
||||||
]
|
]
|
||||||
if self.spec.satisfies("@6.2.1:"):
|
if self.spec.satisfies("@6.2.1:"):
|
||||||
args.append(self.define("HIPRAND_DIR", self.spec["hiprand"].prefix)),
|
args.append(self.define("HIPRAND_DIR", self.spec["hiprand"].prefix))
|
||||||
args.append(self.define("ROCRAND_DIR", self.spec["rocrand"].prefix)),
|
args.append(self.define("ROCRAND_DIR", self.spec["rocrand"].prefix))
|
||||||
libloc = self.spec["googletest"].prefix.lib64
|
libloc = self.spec["googletest"].prefix.lib64
|
||||||
if not os.path.isdir(libloc):
|
if not os.path.isdir(libloc):
|
||||||
libloc = self.spec["googletest"].prefix.lib
|
libloc = self.spec["googletest"].prefix.lib
|
||||||
|
@ -165,8 +165,8 @@ def cmake_args(self):
|
|||||||
def cache_test_sources(self):
|
def cache_test_sources(self):
|
||||||
if self.spec.satisfies("@2020.10.00"):
|
if self.spec.satisfies("@2020.10.00"):
|
||||||
return
|
return
|
||||||
"""Copy the example source files after the package is installed to an
|
# Copy the example source files after the package is installed to an
|
||||||
install test subdirectory for use during `spack test run`."""
|
# install test subdirectory for use during `spack test run`.
|
||||||
cache_extra_test_sources(self, ["examples"])
|
cache_extra_test_sources(self, ["examples"])
|
||||||
|
|
||||||
def mpi_launcher(self):
|
def mpi_launcher(self):
|
||||||
|
@ -121,11 +121,9 @@ def _get_host_config_path(self, spec):
|
|||||||
|
|
||||||
@run_before("cmake")
|
@run_before("cmake")
|
||||||
def hostconfig(self):
|
def hostconfig(self):
|
||||||
|
"""This method creates a 'host-config' file that specifies all of the options used to
|
||||||
|
configure and build vtkh."""
|
||||||
spec = self.spec
|
spec = self.spec
|
||||||
"""
|
|
||||||
This method creates a 'host-config' file that specifies
|
|
||||||
all of the options used to configure and build vtkh.
|
|
||||||
"""
|
|
||||||
|
|
||||||
if not os.path.isdir(spec.prefix):
|
if not os.path.isdir(spec.prefix):
|
||||||
os.mkdir(spec.prefix)
|
os.mkdir(spec.prefix)
|
||||||
|
Loading…
Reference in New Issue
Block a user