Add type hints to all setup_*environment functions (#49985)
This commit is contained in:
@@ -91,7 +91,7 @@ there are any other variables you need to set, you can do this in the
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("PREFIX", prefix)
|
||||
env.set("BLASLIB", spec["blas"].libs.ld_flags)
|
||||
|
||||
|
@@ -128,7 +128,7 @@ depend on the spec:
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
if self.spec.satisfies("+foo"):
|
||||
env.set("FOO", "bar")
|
||||
|
||||
@@ -142,7 +142,7 @@ For example, a simplified version of the ``python`` package could look like this
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
def setup_dependent_run_environment(self, env, dependent_spec):
|
||||
def setup_dependent_run_environment(self, env: EnvironmentModifications, dependent_spec: Spec) -> None:
|
||||
if dependent_spec.package.extends(self.spec):
|
||||
env.prepend_path("PYTHONPATH", dependent_spec.prefix.lib.python)
|
||||
|
||||
|
@@ -16,6 +16,7 @@
|
||||
import spack.package_base
|
||||
import spack.phase_callbacks
|
||||
import spack.spec
|
||||
import spack.util.environment
|
||||
import spack.util.prefix
|
||||
from spack.directives import build_system, conflicts, depends_on
|
||||
from spack.multimethod import when
|
||||
@@ -846,7 +847,9 @@ def _remove_libtool_archives(self) -> None:
|
||||
with open(self._removed_la_files_log, mode="w", encoding="utf-8") as f:
|
||||
f.write("\n".join(libtool_files))
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(
|
||||
self, env: spack.util.environment.EnvironmentModifications
|
||||
) -> None:
|
||||
if self.spec.platform == "darwin" and macos_version() >= Version("11"):
|
||||
# Many configure files rely on matching '10.*' for macOS version
|
||||
# detection and fail to add flags if it shows as version 11.
|
||||
|
@@ -8,6 +8,7 @@
|
||||
import spack.package_base
|
||||
import spack.phase_callbacks
|
||||
import spack.spec
|
||||
import spack.util.environment
|
||||
import spack.util.prefix
|
||||
from spack.directives import build_system, depends_on
|
||||
from spack.multimethod import when
|
||||
@@ -86,7 +87,9 @@ def check_args(self):
|
||||
"""Argument for ``cargo test`` during check phase"""
|
||||
return []
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(
|
||||
self, env: spack.util.environment.EnvironmentModifications
|
||||
) -> None:
|
||||
env.set("CARGO_HOME", self.stage.path)
|
||||
|
||||
def build(
|
||||
|
@@ -8,6 +8,7 @@
|
||||
import spack.package_base
|
||||
import spack.phase_callbacks
|
||||
import spack.spec
|
||||
import spack.util.environment
|
||||
import spack.util.prefix
|
||||
from spack.directives import build_system, depends_on
|
||||
from spack.multimethod import when
|
||||
@@ -68,7 +69,9 @@ class GoBuilder(BuilderWithDefaults):
|
||||
#: Callback names for install-time test
|
||||
install_time_test_callbacks = ["check"]
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(
|
||||
self, env: spack.util.environment.EnvironmentModifications
|
||||
) -> None:
|
||||
env.set("GO111MODULE", "on")
|
||||
env.set("GOTOOLCHAIN", "local")
|
||||
env.set("GOPATH", fs.join_path(self.pkg.stage.path, "go"))
|
||||
|
@@ -23,6 +23,7 @@
|
||||
|
||||
import spack.error
|
||||
import spack.phase_callbacks
|
||||
import spack.spec
|
||||
from spack.build_environment import dso_suffix
|
||||
from spack.error import InstallError
|
||||
from spack.util.environment import EnvironmentModifications
|
||||
@@ -1016,7 +1017,7 @@ def libs(self):
|
||||
debug_print(result)
|
||||
return result
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
"""Adds environment variables to the generated module file.
|
||||
|
||||
These environment variables come from running:
|
||||
@@ -1049,7 +1050,9 @@ def setup_run_environment(self, env):
|
||||
env.set("F77", self.prefix.bin.ifort)
|
||||
env.set("F90", self.prefix.bin.ifort)
|
||||
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
def setup_dependent_build_environment(
|
||||
self, env: EnvironmentModifications, dependent_spec: spack.spec.Spec
|
||||
) -> None:
|
||||
# NB: This function is overwritten by 'mpi' provider packages:
|
||||
#
|
||||
# var/spack/repos/builtin/packages/intel-mpi/package.py
|
||||
@@ -1061,7 +1064,12 @@ def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
# Handle everything in a callback version.
|
||||
self._setup_dependent_env_callback(env, dependent_spec)
|
||||
|
||||
def _setup_dependent_env_callback(self, env, dependent_spec, compilers_of_client={}):
|
||||
def _setup_dependent_env_callback(
|
||||
self,
|
||||
env: EnvironmentModifications,
|
||||
dependent_spec: spack.spec.Spec,
|
||||
compilers_of_client={},
|
||||
) -> None:
|
||||
# Expected to be called from a client's
|
||||
# setup_dependent_build_environment(),
|
||||
# with args extended to convey the client's compilers as needed.
|
||||
|
@@ -8,6 +8,7 @@
|
||||
import spack.builder
|
||||
import spack.package_base
|
||||
import spack.spec
|
||||
import spack.util.environment
|
||||
import spack.util.executable
|
||||
import spack.util.prefix
|
||||
from spack.directives import build_system, depends_on, extends
|
||||
@@ -114,5 +115,7 @@ def install(
|
||||
def _luarocks_config_path(self):
|
||||
return os.path.join(self.pkg.stage.source_path, "spack_luarocks.lua")
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(
|
||||
self, env: spack.util.environment.EnvironmentModifications
|
||||
) -> None:
|
||||
env.set("LUAROCKS_CONFIG", self._luarocks_config_path())
|
||||
|
@@ -4,6 +4,7 @@
|
||||
import spack.builder
|
||||
import spack.package_base
|
||||
import spack.spec
|
||||
import spack.util.environment
|
||||
import spack.util.prefix
|
||||
from spack.directives import build_system, extends
|
||||
from spack.multimethod import when
|
||||
@@ -57,7 +58,9 @@ def install(
|
||||
"pkg prefix %s; pkg install %s" % (prefix, self.pkg.stage.archive_file),
|
||||
)
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(
|
||||
self, env: spack.util.environment.EnvironmentModifications
|
||||
) -> None:
|
||||
# octave does not like those environment variables to be set:
|
||||
env.unset("CC")
|
||||
env.unset("CXX")
|
||||
|
@@ -132,7 +132,7 @@ def install_component(self, installer_path):
|
||||
if not isdir(install_dir):
|
||||
raise RuntimeError("install failed to directory: {0}".format(install_dir))
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
"""Adds environment variables to the generated module file.
|
||||
|
||||
These environment variables come from running:
|
||||
|
@@ -185,10 +185,16 @@ def __init__(self, pkg):
|
||||
# These two methods don't follow the (self, spec, prefix) signature of phases nor
|
||||
# the (self) signature of methods, so they are added explicitly to avoid using a
|
||||
# catch-all (*args, **kwargs)
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(
|
||||
self, env: spack.util.environment.EnvironmentModifications
|
||||
) -> None:
|
||||
return self.pkg_with_dispatcher.setup_build_environment(env)
|
||||
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
def setup_dependent_build_environment(
|
||||
self,
|
||||
env: spack.util.environment.EnvironmentModifications,
|
||||
dependent_spec: spack.spec.Spec,
|
||||
) -> None:
|
||||
return self.pkg_with_dispatcher.setup_dependent_build_environment(env, dependent_spec)
|
||||
|
||||
return Adapter(pkg)
|
||||
@@ -402,7 +408,7 @@ def fixup_install(self):
|
||||
# do something after the package is installed
|
||||
pass
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("MY_ENV_VAR", "my_value")
|
||||
|
||||
class CMakeBuilder(cmake.CMakeBuilder, AnyBuilder):
|
||||
|
@@ -47,10 +47,10 @@ class Grads(AutotoolsPackage):
|
||||
depends_on('readline')
|
||||
depends_on('pkgconfig', type='build')
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set('SUPPLIBS', '/')
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set('GADDIR', self.prefix.data)
|
||||
|
||||
@run_after('install')
|
||||
|
@@ -517,7 +517,7 @@ class Llvm(CMakePackage, CudaPackage):
|
||||
return (None, flags, None)
|
||||
return (flags, None, None)
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
"""When using %clang, add only its ld.lld-$ver and/or ld.lld to our PATH"""
|
||||
if self.compiler.name in ["clang", "apple-clang"]:
|
||||
for lld in "ld.lld-{0}".format(self.compiler.version.version[0]), "ld.lld":
|
||||
@@ -528,7 +528,7 @@ class Llvm(CMakePackage, CudaPackage):
|
||||
os.symlink(bin, sym)
|
||||
env.prepend_path("PATH", self.stage.path)
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
if "+clang" in self.spec:
|
||||
env.set("CC", join_path(self.spec.prefix.bin, "clang"))
|
||||
env.set("CXX", join_path(self.spec.prefix.bin, "clang++"))
|
||||
|
@@ -318,7 +318,7 @@ class Mfem(Package, CudaPackage, ROCmPackage):
|
||||
patch('mfem-4.0.0-makefile-syntax-fix.patch', when='@4.0.0')
|
||||
phases = ['configure', 'build', 'install']
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.unset('MFEM_DIR')
|
||||
env.unset('MFEM_BUILD_DIR')
|
||||
|
||||
|
@@ -281,7 +281,7 @@ class PyTorch(PythonPackage, CudaPackage):
|
||||
"caffe2/CMakeLists.txt",
|
||||
)
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
"""Set environment variables used to control the build.
|
||||
|
||||
PyTorch's ``setup.py`` is a thin wrapper around ``cmake``.
|
||||
|
@@ -440,7 +440,7 @@ class Trilinos(CMakePackage, CudaPackage):
|
||||
url = "https://github.com/trilinos/Trilinos/archive/trilinos-release-{0}.tar.gz"
|
||||
return url.format(version.dashed)
|
||||
|
||||
def setup_dependent_run_environment(self, env, dependent_spec):
|
||||
def setup_dependent_run_environment(self, env: EnvironmentModifications, dependent_spec: Spec) -> None:
|
||||
if "+cuda" in self.spec:
|
||||
# currently Trilinos doesn't perform the memory fence so
|
||||
# it relies on blocking CUDA kernel launch. This is needed
|
||||
@@ -453,7 +453,7 @@ class Trilinos(CMakePackage, CudaPackage):
|
||||
else:
|
||||
self.spec.kokkos_cxx = spack_cxx
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
spec = self.spec
|
||||
if "+cuda" in spec and "+wrapper" in spec:
|
||||
if "+mpi" in spec:
|
||||
@@ -847,7 +847,7 @@ class Trilinos(CMakePackage, CudaPackage):
|
||||
)
|
||||
filter_file(r"-lpytrilinos", "", "%s/Makefile.export.Trilinos" % self.prefix.include)
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
if "+exodus" in self.spec:
|
||||
env.prepend_path("PYTHONPATH", self.prefix.lib)
|
||||
|
||||
|
@@ -334,20 +334,20 @@ def test_remove_complex_package_logic_filtered():
|
||||
"package_spec,expected_hash",
|
||||
[
|
||||
("amdfftw", "tivb752zddjgvfkogfs7cnnvp5olj6co"),
|
||||
("grads", "rrlmwml3f2frdnqavmro3ias66h5b2ce"),
|
||||
("llvm", "nufffum5dabmaf4l5tpfcblnbfjknvd3"),
|
||||
("grads", "lomrsppasfxegyamz4r33zgwiqkveftv"),
|
||||
("llvm", "paicamlvy5jkgxw4xnacaxahrixe3f3i"),
|
||||
# has @when("@4.1.0") and raw unicode literals
|
||||
("mfem", "whwftpqbjvzncmb52oz6izkanbha2uji"),
|
||||
("mfem@4.0.0", "whwftpqbjvzncmb52oz6izkanbha2uji"),
|
||||
("mfem@4.1.0", "bpi7of3xelo7fr3ta2lm6bmiruijnxcg"),
|
||||
("mfem", "slf5qyyyhuj66mo5lpuhkrs35akh2zck"),
|
||||
("mfem@4.0.0", "slf5qyyyhuj66mo5lpuhkrs35akh2zck"),
|
||||
("mfem@4.1.0", "yo3ymaulytctas67zjn663ixw5cfyh5u"),
|
||||
# has @when("@1.5.0:")
|
||||
("py-torch", "qs7djgqn7dy7r3ps4g7hv2pjvjk4qkhd"),
|
||||
("py-torch@1.0", "qs7djgqn7dy7r3ps4g7hv2pjvjk4qkhd"),
|
||||
("py-torch@1.6", "p4ine4hc6f2ik2f2wyuwieslqbozll5w"),
|
||||
("py-torch", "m3ucsddqr7hjevtgx4cad34nrtqgyjfg"),
|
||||
("py-torch@1.0", "m3ucsddqr7hjevtgx4cad34nrtqgyjfg"),
|
||||
("py-torch@1.6", "insaxs6bq34rvyhajdbyr4wddqeqb2t3"),
|
||||
# has a print with multiple arguments
|
||||
("legion", "bq2etsik5l6pbryxmbhfhzynci56ruy4"),
|
||||
# has nested `with when()` blocks and loops
|
||||
("trilinos", "vqrgscjrla4hi7bllink7v6v6dwxgc2p"),
|
||||
("trilinos", "ojbtbu3p6gpa42sbilblo2ioanvhouxu"),
|
||||
],
|
||||
)
|
||||
def test_package_hash_consistency(package_spec, expected_hash):
|
||||
|
@@ -11,7 +11,7 @@ class BuildEnvCompilerVarB(Package):
|
||||
url = "https://www.example.com"
|
||||
version("1.0", md5="0123456789abcdef0123456789abcdef")
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("CC", "this-should-be-dropped")
|
||||
env.set("CXX", "this-should-be-dropped")
|
||||
env.set("FC", "this-should-be-dropped")
|
||||
|
@@ -22,5 +22,5 @@ def install(self, spec, prefix):
|
||||
mkdirp(prefix)
|
||||
touch(join_path(prefix, "dummyfile"))
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("FOOBAR", self.name)
|
||||
|
@@ -67,7 +67,9 @@ def setup_build_environment(self, spack_env):
|
||||
"link arg on dependency spec not readable from " "setup_build_environment.",
|
||||
)
|
||||
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
def setup_dependent_build_environment(
|
||||
self, env: EnvironmentModifications, dependent_spec: Spec
|
||||
) -> None:
|
||||
spack_cc # Ensure spack module-scope variable is avaiable
|
||||
check(
|
||||
from_cmake == "from_cmake",
|
||||
|
@@ -36,11 +36,13 @@ class Cmake(Package):
|
||||
url="https://cmake.org/files/v3.4/cmake-3.4.3.tar.gz",
|
||||
)
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
spack_cc # Ensure spack module-scope variable is avaiable
|
||||
env.set("for_install", "for_install")
|
||||
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
def setup_dependent_build_environment(
|
||||
self, env: EnvironmentModifications, dependent_spec: Spec
|
||||
) -> None:
|
||||
spack_cc # Ensure spack module-scope variable is avaiable
|
||||
env.set("from_cmake", "from_cmake")
|
||||
|
||||
|
@@ -23,5 +23,5 @@ def install(self, spec, prefix):
|
||||
make()
|
||||
make("install")
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("FOOBAR", self.name)
|
||||
|
@@ -24,5 +24,5 @@ def install(self, spec, prefix):
|
||||
make()
|
||||
make("install")
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("FOOBAR", self.name)
|
||||
|
@@ -27,7 +27,9 @@ class HashTest1(Package):
|
||||
variant("variantx", default=False, description="Test variant X")
|
||||
variant("varianty", default=False, description="Test variant Y")
|
||||
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
def setup_dependent_build_environment(
|
||||
self, env: EnvironmentModifications, dependent_spec: Spec
|
||||
) -> None:
|
||||
pass
|
||||
|
||||
@when("@:1.4")
|
||||
|
@@ -23,7 +23,9 @@ class HashTest2(Package):
|
||||
variant("variantx", default=False, description="Test variant X")
|
||||
variant("varianty", default=False, description="Test variant Y")
|
||||
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
def setup_dependent_build_environment(
|
||||
self, env: EnvironmentModifications, dependent_spec: Spec
|
||||
) -> None:
|
||||
pass
|
||||
|
||||
def install(self, spec, prefix):
|
||||
|
@@ -22,7 +22,9 @@ class HashTest3(Package):
|
||||
variant("variantx", default=False, description="Test variant X")
|
||||
variant("varianty", default=False, description="Test variant Y")
|
||||
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
def setup_dependent_build_environment(
|
||||
self, env: EnvironmentModifications, dependent_spec: Spec
|
||||
) -> None:
|
||||
pass
|
||||
|
||||
@when("@:1.4")
|
||||
|
@@ -13,7 +13,7 @@ class ModifiesRunEnv(Package):
|
||||
|
||||
version("1.0", md5="0123456789abcdef0123456789abcdef")
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("DEPENDENCY_ENV_VAR", "1")
|
||||
|
||||
def install(self, spec, prefix):
|
||||
|
@@ -14,5 +14,5 @@ class ModuleLongHelp(Package):
|
||||
|
||||
version("1.0", "0123456789abcdef0123456789abcdef")
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("FOO", "bar")
|
||||
|
@@ -11,5 +11,5 @@ class ModuleManpathAppend(Package):
|
||||
|
||||
version("1.0", "0123456789abcdef0123456789abcdef")
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.append_path("MANPATH", "/path/to/man")
|
||||
|
@@ -11,6 +11,6 @@ class ModuleManpathPrepend(Package):
|
||||
|
||||
version("1.0", "0123456789abcdef0123456789abcdef")
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.prepend_path("MANPATH", "/path/to/man")
|
||||
env.prepend_path("MANPATH", "/path/to/share/man")
|
||||
|
@@ -11,5 +11,5 @@ class ModuleManpathSetenv(Package):
|
||||
|
||||
version("1.0", "0123456789abcdef0123456789abcdef")
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("MANPATH", "/path/to/man")
|
||||
|
@@ -11,7 +11,7 @@ class ModulePathSeparator(Package):
|
||||
|
||||
version("1.0", md5="0123456789abcdef0123456789abcdef")
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.append_path("COLON", "foo")
|
||||
env.prepend_path("COLON", "foo")
|
||||
env.remove_path("COLON", "foo")
|
||||
|
@@ -11,5 +11,5 @@ class ModuleSetenvRaw(Package):
|
||||
|
||||
version("1.0", "0123456789abcdef0123456789abcdef")
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("FOO", "{{name}}, {name}, {{}}, {}", raw=True)
|
||||
|
@@ -33,5 +33,5 @@ def install(self, spec, prefix):
|
||||
touch(prefix.mpileaks)
|
||||
mkdirp(prefix.man)
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("FOOBAR", self.name)
|
||||
|
@@ -35,7 +35,7 @@ def libs(self):
|
||||
shared = "+shared" in self.spec
|
||||
return find_libraries(["libz"], root=self.prefix, recursive=True, shared=shared)
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
if "+pic" in self.spec:
|
||||
env.append_flags("CFLAGS", self.compiler.cc_pic_flag)
|
||||
if "+optimize" in self.spec:
|
||||
|
@@ -68,7 +68,7 @@ class _3dtk(CMakePackage):
|
||||
|
||||
patch("homebrew.patch", when="platform=darwin")
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.prepend_path("CPATH", self.spec["eigen"].prefix.include)
|
||||
|
||||
def cmake_args(self):
|
||||
|
@@ -20,7 +20,7 @@ class Acct(AutotoolsPackage, GNUMirrorPackage):
|
||||
depends_on("c", type="build") # generated
|
||||
depends_on("cxx", type="build") # generated
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.prepend_path("PATH", self.prefix.sbin)
|
||||
|
||||
def installcheck(self):
|
||||
|
@@ -458,7 +458,7 @@ def headers(self):
|
||||
hlist.directories = [incdir]
|
||||
return hlist
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
arm_dir = get_acfl_prefix(self.spec)
|
||||
armpl_dir = get_armpl_prefix(self.spec)
|
||||
|
||||
|
@@ -25,8 +25,8 @@ class Activeharmony(MakefilePackage):
|
||||
|
||||
cflags = ["-O3", "-fPIC"]
|
||||
|
||||
def setup_build_environment(self, spack_env):
|
||||
spack_env.set("CFLAGS", " ".join(self.cflags))
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("CFLAGS", " ".join(self.cflags))
|
||||
|
||||
@when("@:4.5")
|
||||
def install(self, spec, prefix):
|
||||
|
@@ -25,7 +25,7 @@ def url_for_version(self, version):
|
||||
license_files = ["license.txt"]
|
||||
license_vars = ["SCMLICENSE"]
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("ADFHOME", self.prefix)
|
||||
env.set("ADFBIN", self.prefix.bin)
|
||||
env.set("ADFRESOURCES", self.prefix.atomicdata)
|
||||
|
@@ -113,7 +113,7 @@ def with_or_without_hdf5(self, activated):
|
||||
|
||||
return "--without-phdf5"
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
# https://github.com/ornladios/ADIOS/issues/206
|
||||
if self.spec.satisfies("+fortran %gcc@10:"):
|
||||
env.set("FCFLAGS", "-fallow-argument-mismatch")
|
||||
|
@@ -257,7 +257,7 @@ def patch(self):
|
||||
filter_file("mpc++_r)", "mpcc_r mpiFCC)", f, string=True)
|
||||
filter_file("mpf77_r", "mpf77_r mpifrt", f, string=True)
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
# https://github.com/ornladios/ADIOS2/issues/2228
|
||||
if self.spec.satisfies("+fortran %gcc@10:"):
|
||||
env.set("FFLAGS", "-fallow-argument-mismatch")
|
||||
@@ -358,7 +358,7 @@ def libs(self):
|
||||
list(libs_to_seek), root=self.spec.prefix, shared=("+shared" in spec), recursive=True
|
||||
)
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
try:
|
||||
all_libs = self.libs
|
||||
idx = all_libs.basenames.index("libadios2_h5vol.so")
|
||||
|
@@ -29,7 +29,7 @@ class Adlbx(AutotoolsPackage):
|
||||
depends_on("m4", type="build", when="@master")
|
||||
depends_on("mpi")
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
spec = self.spec
|
||||
env.set("CC", spec["mpi"].mpicc)
|
||||
env.set("CXX", spec["mpi"].mpicxx)
|
||||
|
@@ -18,14 +18,18 @@ class AdwaitaIconTheme(AutotoolsPackage):
|
||||
depends_on("gdk-pixbuf", type="build")
|
||||
depends_on("librsvg", type="build")
|
||||
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
def setup_dependent_build_environment(
|
||||
self, env: EnvironmentModifications, dependent_spec: Spec
|
||||
) -> None:
|
||||
env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
||||
|
||||
def setup_dependent_run_environment(self, env, dependent_spec):
|
||||
def setup_dependent_run_environment(
|
||||
self, env: EnvironmentModifications, dependent_spec: Spec
|
||||
) -> None:
|
||||
env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
||||
|
@@ -153,7 +153,7 @@ def url_for_version(self, version):
|
||||
url = "file://{0}/Amber{1}.tar.bz2".format(os.getcwd(), version)
|
||||
return url
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
amber_src = self.stage.source_path
|
||||
env.set("AMBERHOME", amber_src)
|
||||
|
||||
@@ -242,7 +242,7 @@ def install(self, spec, prefix):
|
||||
# just install everything that was built
|
||||
install_tree(".", prefix)
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("AMBER_PREFIX", self.prefix)
|
||||
env.set("AMBERHOME", self.prefix)
|
||||
# CUDA
|
||||
|
@@ -63,11 +63,11 @@ def cmake_args(self):
|
||||
]
|
||||
return args
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("AMBER_PREFIX", self.prefix)
|
||||
env.set("AMBERHOME", self.prefix)
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("AMBER_PREFIX", self.prefix)
|
||||
env.set("AMBERHOME", self.prefix)
|
||||
|
||||
|
@@ -250,6 +250,8 @@ def install(self, pkg, spec, prefix):
|
||||
# make install in parallel fails with message 'File already exists'
|
||||
make("install", parallel=False)
|
||||
|
||||
def setup_dependent_run_environment(self, env, dependent_spec):
|
||||
def setup_dependent_run_environment(
|
||||
self, env: EnvironmentModifications, dependent_spec: Spec
|
||||
) -> None:
|
||||
if self.spec.external:
|
||||
env.prepend_path("LD_LIBRARY_PATH", self.prefix.lib)
|
||||
|
@@ -135,6 +135,8 @@ def cmake_args(self):
|
||||
|
||||
return args
|
||||
|
||||
def setup_dependent_run_environment(self, env, dependent_spec):
|
||||
def setup_dependent_run_environment(
|
||||
self, env: EnvironmentModifications, dependent_spec: Spec
|
||||
) -> None:
|
||||
if self.spec.external:
|
||||
env.prepend_path("LD_LIBRARY_PATH", self.prefix.lib)
|
||||
|
@@ -85,7 +85,7 @@ class Ampl(Package):
|
||||
def url_for_version(self, version):
|
||||
return "file://{0}/ampl.linux-intel64.{1}.tgz".format(os.getcwd(), version)
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.prepend_path("PATH", self.prefix)
|
||||
if self.spec.satisfies("+ide"):
|
||||
env.prepend_path("PATH", join_path(self.prefix, "amplide"))
|
||||
|
@@ -23,7 +23,7 @@ class Ampliconnoise(MakefilePackage):
|
||||
|
||||
patch("Fix-return-type.patch")
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.prepend_path("PATH", self.prefix.Scripts)
|
||||
env.set("PYRO_LOOKUP_FILE", os.path.join(self.prefix, "Data", "LookUp_E123.dat"))
|
||||
env.set("SEQ_LOOKUP_FILE", os.path.join(self.prefix, "Data", "Tran.dat"))
|
||||
|
@@ -276,7 +276,7 @@ class AmrWind(CMakePackage, CudaPackage, ROCmPackage):
|
||||
"openfast@4.0.0:4.0.1", msg="OpenFAST 4.0.0:4.0.1 contains a bug. Use OpenFAST >= 4.0.2."
|
||||
)
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
# Avoid compile errors with Intel interprocedural optimization
|
||||
if self.spec.satisfies("%intel"):
|
||||
env.append_flags("CXXFLAGS", "-no-ipo")
|
||||
|
@@ -29,7 +29,7 @@ class Amrfinder(MakefilePackage):
|
||||
depends_on("hmmer")
|
||||
depends_on("curl")
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("INSTALL_DIR", prefix.bin)
|
||||
env.set("DEFAULT_DB_DIR", prefix.share)
|
||||
|
||||
|
@@ -143,7 +143,7 @@ def edit(self, spec, prefix):
|
||||
with open("GNUmakefile", "w") as file:
|
||||
file.writelines(contents)
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
# We don't want an AMREX_HOME the user may have set already
|
||||
env.unset("AMREX_HOME")
|
||||
# Help force Amrvis to not pick up random system compilers
|
||||
|
@@ -220,6 +220,6 @@ def install(self, spec, prefix):
|
||||
bash = which("bash")
|
||||
bash(anaconda_script, "-b", "-f", "-p", self.prefix)
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
filename = self.prefix.etc.join("profile.d").join("conda.sh")
|
||||
env.extend(EnvironmentModifications.from_sourcing_file(filename))
|
||||
|
@@ -35,7 +35,7 @@ class Angsd(MakefilePackage):
|
||||
|
||||
depends_on("r", type="run", when="+r")
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("R_LIBS", self.prefix.R)
|
||||
|
||||
def install(self, spec, prefix):
|
||||
|
@@ -33,7 +33,7 @@ class Antlr(AutotoolsPackage):
|
||||
extends("python", when="+python")
|
||||
depends_on("java", type=("build", "run"), when="+java")
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
if self.spec.satisfies("+pic"):
|
||||
env.set("CXXFLAGS", "-fPIC")
|
||||
|
||||
|
@@ -56,7 +56,7 @@ def install(self, spec, prefix):
|
||||
rename(glob.glob("antlr-*-complete.jar")[0], "antlr-complete.jar")
|
||||
install("antlr-complete.jar", prefix.bin)
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("ANTLR4_JAR_LOCATION", join_path(self.prefix.bin, "antlr-complete.jar"))
|
||||
env.set("ANTLR_JAR_LOCATION", join_path(self.prefix.bin, "antlr-complete.jar"))
|
||||
env.set("ANTLR_EXECUTABLE", join_path(self.prefix.bin, "antlr-complete.jar"))
|
||||
|
@@ -42,5 +42,5 @@ def install(self, spec, prefix):
|
||||
make("install")
|
||||
install_tree("Scripts", prefix.bin)
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("ANTSPATH", self.prefix.bin)
|
||||
|
@@ -86,13 +86,13 @@ class AoclDa(CMakePackage):
|
||||
depends_on("py-pytest", type="test")
|
||||
depends_on("py-scikit-learn", type=("test", "run"))
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
if self.spec.satisfies("%aocc"):
|
||||
cc = self.compiler.cc
|
||||
compiler_install_dir = os.path.dirname(os.path.dirname(cc))
|
||||
env.append_path("LD_LIBRARY_PATH", join_path(compiler_install_dir, "lib"))
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.prepend_path("PYTHONPATH", join_path(self.prefix, "python_package"))
|
||||
|
||||
def cmake_args(self):
|
||||
|
@@ -55,7 +55,7 @@ def patch(self):
|
||||
string=True,
|
||||
)
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
"""Set environment variables used to control the build"""
|
||||
if self.spec.satisfies("%clang"):
|
||||
env.set("TRITON_HIP_LLD_PATH", self.spec["llvm-amdgpu"].prefix / bin / ld.lld)
|
||||
|
@@ -20,7 +20,7 @@ class Apktool(Package):
|
||||
|
||||
depends_on("java@8:", type=("build", "run"))
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("LC_ALL", "en_US.UTF-8")
|
||||
|
||||
def install(self, spec, prefix):
|
||||
|
@@ -9,7 +9,9 @@ class AppleGlBase(BundlePackage):
|
||||
|
||||
maintainers("aphecetche")
|
||||
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
def setup_dependent_build_environment(
|
||||
self, env: EnvironmentModifications, dependent_spec: Spec
|
||||
) -> None:
|
||||
# we try to setup a build environment with enough hints
|
||||
# for the build system to pick up on the Apple framework version
|
||||
# of OpenGL.
|
||||
|
@@ -322,7 +322,7 @@ def install(self, spec, prefix):
|
||||
install_tree(f"opt/rocm-{spec.version}/share/", prefix.share)
|
||||
install_tree(f"opt/rocm-{spec.version}/lib/", prefix.lib)
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.prepend_path("LD_LIBRARY_PATH", self.spec["hsa-rocr-dev"].prefix.lib)
|
||||
|
||||
# This package is installed from binaries, and we haven't patched rpaths.
|
||||
|
@@ -205,7 +205,7 @@ def install(self, spec, prefix):
|
||||
probe = join_path(prefix, "bin", "forge-probe")
|
||||
subprocess.call([probe, "--install", "global"])
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
# Only PATH is needed for Forge.
|
||||
# Adding lib to LD_LIBRARY_PATH can cause conflicts with Forge's internal libs.
|
||||
env.clear()
|
||||
|
@@ -46,5 +46,7 @@ def configure_args(self):
|
||||
args.extend(self.with_or_without("progress"))
|
||||
return args
|
||||
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
def setup_dependent_build_environment(
|
||||
self, env: EnvironmentModifications, dependent_spec: Spec
|
||||
) -> None:
|
||||
env.set("ARMCIMPI_DIR", self.prefix)
|
||||
|
@@ -121,7 +121,7 @@ def build_args(self, spec, prefix):
|
||||
|
||||
return args
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
# Spack compiler wrapper inject -mcpu flag for some targets.
|
||||
# This can conflict with -march set in scons script, so override it here.
|
||||
env.set("SPACK_TARGET_ARGS", "")
|
||||
|
@@ -495,7 +495,7 @@ def headers(self):
|
||||
hlist.directories = [incdir]
|
||||
return hlist
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
armpl_dir = get_armpl_prefix(self.spec)
|
||||
if self.spec.platform == "darwin":
|
||||
env.prepend_path("DYLD_LIBRARY_PATH", join_path(armpl_dir, "lib"))
|
||||
@@ -526,7 +526,9 @@ def make_pkgconfig_files(self):
|
||||
for f in find(join_path(armpl_dir, "pkgconfig"), "*"):
|
||||
symlink(f, f + ".pc")
|
||||
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
def setup_dependent_build_environment(
|
||||
self, env: EnvironmentModifications, dependent_spec: Spec
|
||||
) -> None:
|
||||
armpl_dir = get_armpl_prefix(self.spec)
|
||||
if self.spec.satisfies("@:22"):
|
||||
# pkgconfig directory is not in standard ("lib", "lib64", "share") location
|
||||
|
@@ -149,7 +149,7 @@ def configure_args(self):
|
||||
return options
|
||||
|
||||
@when("@:3.7.0 %gcc@10:")
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
# version up to and including 3.7.0 are not ported to gcc 10
|
||||
# https://github.com/opencollab/arpack-ng/issues/242
|
||||
env.set("FFLAGS", "-fallow-argument-mismatch")
|
||||
|
@@ -350,7 +350,7 @@ def patch(self):
|
||||
$<$<OR:$<COMPILE_LANGUAGE:CXX>,$<COMPILE_LANGUAGE:HIP>>:-std=c++17>)"""
|
||||
)
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("CTEST_OUTPUT_ON_FAILURE", "1")
|
||||
|
||||
####################################################################
|
||||
|
@@ -49,5 +49,5 @@ class Aspect(CMakePackage):
|
||||
def cmake_args(self):
|
||||
return [self.define_from_variant("ASPECT_USE_FP_EXCEPTIONS", "fpe")]
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("Aspect_DIR", self.prefix)
|
||||
|
@@ -33,5 +33,5 @@ def make_missing_files(self):
|
||||
make("gen/dirs.h")
|
||||
make("gen/static_filters.src.cpp")
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("ASPELL_CONF", f"prefix {self.prefix}")
|
||||
|
@@ -20,7 +20,7 @@ class AsperaCli(Package):
|
||||
expand=False,
|
||||
)
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.prepend_path("PATH", self.prefix.cli.bin)
|
||||
|
||||
def install(self, spec, prefix):
|
||||
|
@@ -46,5 +46,5 @@ def install(self, spec, prefix):
|
||||
filter_file("^java", java, script, **kwargs)
|
||||
filter_file("astral.jar", join_path(prefix.tools, jar_file), script, **kwargs)
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("ASTRAL_HOME", self.prefix.tools)
|
||||
|
@@ -56,15 +56,19 @@ def url_for_version(self, version):
|
||||
url = "http://ftp.gnome.org/pub/gnome/sources/at-spi2-core"
|
||||
return url + f"/{version.up_to(2)}/at-spi2-core-{version}.tar.xz"
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.prepend_path("GI_TYPELIB_PATH", join_path(self.prefix.lib, "girepository-1.0"))
|
||||
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
def setup_dependent_build_environment(
|
||||
self, env: EnvironmentModifications, dependent_spec: Spec
|
||||
) -> None:
|
||||
env.prepend_path("GI_TYPELIB_PATH", join_path(self.prefix.lib, "girepository-1.0"))
|
||||
|
||||
def setup_dependent_run_environment(self, env, dependent_spec):
|
||||
def setup_dependent_run_environment(
|
||||
self, env: EnvironmentModifications, dependent_spec: Spec
|
||||
) -> None:
|
||||
env.prepend_path("GI_TYPELIB_PATH", join_path(self.prefix.lib, "girepository-1.0"))
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
# this avoids an "import site" error in the build
|
||||
env.unset("PYTHONHOME")
|
||||
|
@@ -179,7 +179,7 @@ class Athena(AutotoolsPackage):
|
||||
|
||||
patch("missing-separator.patch")
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
spec = self.spec
|
||||
|
||||
env.set("OPT", "-O3")
|
||||
|
@@ -39,10 +39,12 @@ def url_for_version(self, version):
|
||||
f"{version.up_to(2)}/atk-{version}.tar.xz"
|
||||
)
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
||||
env.prepend_path("GI_TYPELIB_PATH", join_path(self.prefix.lib, "girepository-1.0"))
|
||||
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
def setup_dependent_build_environment(
|
||||
self, env: EnvironmentModifications, dependent_spec: Spec
|
||||
) -> None:
|
||||
env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
||||
env.prepend_path("GI_TYPELIB_PATH", join_path(self.prefix.lib, "girepository-1.0"))
|
||||
|
@@ -25,7 +25,7 @@ class Atop(Package):
|
||||
depends_on("ncurses")
|
||||
depends_on("gmake", type="build")
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.append_flags("LDFLAGS", "-ltinfo")
|
||||
|
||||
def install(self, spec, prefix):
|
||||
|
@@ -173,7 +173,7 @@ def filter_sbang(self):
|
||||
files = glob.glob("*.py")
|
||||
filter_file(pattern, repl, *files, backup=False)
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
htslib = self.spec["htslib"].prefix
|
||||
bamtools = self.spec["bamtools"].prefix
|
||||
|
||||
@@ -184,6 +184,6 @@ def setup_build_environment(self, env):
|
||||
env.set("HTSLIB_INSTALL_DIR", htslib)
|
||||
env.set("BAMTOOLS_INSTALL_DIR", bamtools)
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("AUGUSTUS_CONFIG_PATH", join_path(self.prefix, "config"))
|
||||
env.prepend_path("PATH", join_path(self.prefix, "scripts"))
|
||||
|
@@ -19,7 +19,7 @@ class Authd(MakefilePackage):
|
||||
|
||||
depends_on("c", type="build") # generated
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.prepend_path("PATH", self.prefix.sbin)
|
||||
|
||||
def install(self, spec, prefix):
|
||||
|
@@ -34,6 +34,8 @@ class AutoconfArchive(AutotoolsPackage, GNUMirrorPackage):
|
||||
# The package does not produce any libraries and does not use libtool:
|
||||
patch_libtool = False
|
||||
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
def setup_dependent_build_environment(
|
||||
self, env: EnvironmentModifications, dependent_spec: Spec
|
||||
) -> None:
|
||||
"""Adds the ACLOCAL path for autotools."""
|
||||
env.append_path("ACLOCAL_PATH", self.prefix.share.aclocal)
|
||||
|
@@ -31,6 +31,6 @@ def patch(self):
|
||||
def install(self, spec, prefix):
|
||||
install_tree(self.stage.source_path, prefix)
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.prepend_path("PATH", self.prefix.scripts)
|
||||
env.set("PATH2AUTOFACT", self.prefix)
|
||||
|
@@ -62,7 +62,7 @@ class Avizo(Package):
|
||||
license_files = ["share/license/password.dat"]
|
||||
license_vars = ["MCSLMD_LICENSE_FILE"]
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("MCSLMD_LICENSE_FILE", join_path(self.prefix.share.license, "password.dat"))
|
||||
|
||||
def install(self, spec, prefix):
|
||||
|
@@ -55,11 +55,13 @@ def url_for_version(self, version):
|
||||
return url_fmt.format(version)
|
||||
|
||||
# To enable this plug-in to work with NCCL add it to the LD_LIBRARY_PATH
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.append_path("LD_LIBRARY_PATH", self.prefix.lib)
|
||||
|
||||
# To enable this plug-in to work with NCCL add it to the LD_LIBRARY_PATH
|
||||
def setup_dependent_run_environment(self, env, dependent_spec):
|
||||
def setup_dependent_run_environment(
|
||||
self, env: EnvironmentModifications, dependent_spec: Spec
|
||||
) -> None:
|
||||
env.append_path("LD_LIBRARY_PATH", self.prefix.lib)
|
||||
|
||||
def configure_args(self):
|
||||
|
@@ -36,11 +36,13 @@ class AwsOfiRccl(AutotoolsPackage):
|
||||
depends_on("libtool", type="build")
|
||||
|
||||
# To enable this plug-in to work with RCCL add it to the LD_LIBRARY_PATH
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.prepend_path("LD_LIBRARY_PATH", self.prefix.lib)
|
||||
|
||||
# To enable this plug-in to work with RCCL add it to the LD_LIBRARY_PATH
|
||||
def setup_dependent_run_environment(self, env, dependent_spec):
|
||||
def setup_dependent_run_environment(
|
||||
self, env: EnvironmentModifications, dependent_spec: Spec
|
||||
) -> None:
|
||||
env.prepend_path("LD_LIBRARY_PATH", self.prefix.lib)
|
||||
|
||||
def configure_args(self):
|
||||
|
@@ -30,7 +30,7 @@ class Babelflow(CMakePackage):
|
||||
|
||||
# Fix missing implicit includes
|
||||
@when("%gcc@7:")
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.append_flags("CXXFLAGS", "-include limits")
|
||||
|
||||
def cmake_args(self):
|
||||
|
@@ -831,7 +831,7 @@ def edit(self, pkg, spec, prefix):
|
||||
for key in config:
|
||||
inc.write("{0} = {1}\n".format(key, config[key]))
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
######################################
|
||||
# Build and Installation Directories #
|
||||
######################################
|
||||
|
@@ -36,8 +36,12 @@ class Babl(MesonPackage):
|
||||
depends_on("lcms")
|
||||
depends_on("gobject-introspection")
|
||||
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
def setup_dependent_build_environment(
|
||||
self, env: EnvironmentModifications, dependent_spec: Spec
|
||||
) -> None:
|
||||
env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
||||
|
||||
def setup_dependent_run_environment(self, env, dependent_spec):
|
||||
def setup_dependent_run_environment(
|
||||
self, env: EnvironmentModifications, dependent_spec: Spec
|
||||
) -> None:
|
||||
env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
||||
|
@@ -22,5 +22,5 @@ class Backupninja(AutotoolsPackage):
|
||||
depends_on("bash", type="build")
|
||||
depends_on("gawk", type="build")
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.prepend_path("PATH", self.prefix.sbin)
|
||||
|
@@ -19,5 +19,5 @@ class BamReadcount(CMakePackage):
|
||||
depends_on("c", type="build")
|
||||
depends_on("cxx", type="build") # generated
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.append_flags("CFLAGS", self.compiler.cc_pic_flag)
|
||||
|
@@ -19,6 +19,6 @@ class Bamaddrg(MakefilePackage):
|
||||
|
||||
depends_on("bamtools", type="build")
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("BAMTOOLS_ROOT", self.spec["bamtools"].prefix)
|
||||
env.set("PREFIX", self.prefix)
|
||||
|
@@ -85,5 +85,5 @@ def install(self, spec, prefix):
|
||||
install("python/bartview.py", join_path(prefix.bin, "bartview"))
|
||||
filter_file(r"#!/usr/bin/python", "#!/usr/bin/env python", prefix.bin.bartview)
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("TOOLBOX_PATH", self.prefix)
|
||||
|
@@ -25,7 +25,7 @@ class Barvinok(AutotoolsPackage):
|
||||
depends_on("llvm +clang", when="+pet")
|
||||
depends_on("libyaml", when="+pet")
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("CFLAGS", "-pthread")
|
||||
|
||||
def configure_args(self):
|
||||
|
@@ -256,7 +256,7 @@ def determine_version(cls, exe):
|
||||
match = re.search(r"Build label: ([\d.]+)", output)
|
||||
return match.group(1) if match else None
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
# fix the broken linking (on power9)
|
||||
# https://github.com/bazelbuild/bazel/issues/10327
|
||||
env.set("BAZEL_LINKOPTS", "")
|
||||
|
@@ -25,6 +25,6 @@ class Bbmap(Package, SourceforgePackage):
|
||||
def install(self, spec, prefix):
|
||||
install_tree(".", prefix.bin)
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("BBMAP_CONFIG", self.prefix.bin.config)
|
||||
env.set("BBMAP_RESOURCES", self.prefix.bin.resources)
|
||||
|
@@ -133,5 +133,5 @@ def install(self, spec, prefix):
|
||||
install("plugins/*.so", self.prefix.libexec.bcftools)
|
||||
|
||||
@when("@1.2")
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("BCFTOOLS_PLUGINS", self.prefix.libexec.bcftools)
|
||||
|
@@ -25,7 +25,7 @@ def url_for_version(self, ver):
|
||||
base = "https://github.com/beast-dev/beast-mcmc/releases/download"
|
||||
return "{0}/v{1}/BEASTv{1}.tgz".format(base, ver.dotted)
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("BEAST1", self.prefix)
|
||||
env.set("BEAST_LIB", self.prefix.lib)
|
||||
|
||||
|
@@ -49,7 +49,7 @@ def patch(self):
|
||||
r"(beast\.pkgmgmt.*\b)|(viz.*\b)", "{0} {1} \\1".format(javafx, modules), i
|
||||
)
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("BEAST", self.prefix)
|
||||
|
||||
def install(self, spec, prefix):
|
||||
|
@@ -63,7 +63,7 @@ class Biopieces(Package):
|
||||
def install(self, spec, prefix):
|
||||
install_tree(".", prefix)
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
def setup_run_environment(self, env: EnvironmentModifications) -> None:
|
||||
# Note: user will need to set environment variables on their own,
|
||||
# dependent on where they will want data to be located:
|
||||
# BP_DATA - Contains genomic data etc.
|
||||
|
@@ -30,5 +30,5 @@ def patch(self):
|
||||
def configure_args(self):
|
||||
return ["--with-QDpath=" + self.spec["qd"].prefix, "--enable-pythoninterface=no"]
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.append_flags("CXXFLAGS", "-Wno-deprecated")
|
||||
|
@@ -32,7 +32,7 @@ def flag_handler(self, name, flags):
|
||||
flags.append("-fcommon")
|
||||
return (flags, None, None)
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
env.set("MACHTYPE", "x86_64")
|
||||
|
||||
def install(self, spec, prefix):
|
||||
|
@@ -55,7 +55,7 @@ class Bml(CMakePackage):
|
||||
)
|
||||
depends_on("cuda", when="+cusolver")
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
def setup_build_environment(self, env: EnvironmentModifications) -> None:
|
||||
if "+magma" in self.spec:
|
||||
env.set("MAGMA_ROOT", self.spec["magma"].prefix)
|
||||
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user