Executable.add_default_arg: multiple (#40801)

This commit is contained in:
Harmen Stoppels 2023-11-01 09:14:37 +01:00 committed by GitHub
parent ac976a4bf4
commit 2ea8e6c820
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 8 additions and 13 deletions

View file

@ -773,8 +773,7 @@ def git(self):
# Disable advice for a quieter fetch # Disable advice for a quieter fetch
# https://github.com/git/git/blob/master/Documentation/RelNotes/1.7.2.txt # https://github.com/git/git/blob/master/Documentation/RelNotes/1.7.2.txt
if self.git_version >= spack.version.Version("1.7.2"): if self.git_version >= spack.version.Version("1.7.2"):
self._git.add_default_arg("-c") self._git.add_default_arg("-c", "advice.detachedHead=false")
self._git.add_default_arg("advice.detachedHead=false")
# If the user asked for insecure fetching, make that work # If the user asked for insecure fetching, make that work
# with git as well. # with git as well.

View file

@ -35,9 +35,9 @@ def __init__(self, name):
if not self.exe: if not self.exe:
raise ProcessError("Cannot construct executable for '%s'" % name) raise ProcessError("Cannot construct executable for '%s'" % name)
def add_default_arg(self, arg): def add_default_arg(self, *args):
"""Add a default argument to the command.""" """Add default argument(s) to the command."""
self.exe.append(arg) self.exe.extend(args)
def add_default_env(self, key, value): def add_default_env(self, key, value):
"""Set an environment variable when the command is run. """Set an environment variable when the command is run.

View file

@ -24,7 +24,6 @@ def git(required: bool = False):
# If we're running under pytest, add this to ignore the fix for CVE-2022-39253 in # If we're running under pytest, add this to ignore the fix for CVE-2022-39253 in
# git 2.38.1+. Do this in one place; we need git to do this in all parts of Spack. # git 2.38.1+. Do this in one place; we need git to do this in all parts of Spack.
if git and "pytest" in sys.modules: if git and "pytest" in sys.modules:
git.add_default_arg("-c") git.add_default_arg("-c", "protocol.file.allow=always")
git.add_default_arg("protocol.file.allow=always")
return git return git

View file

@ -226,8 +226,7 @@ def install(self, spec, prefix):
def inject_rpaths(self): def inject_rpaths(self):
# Sets rpath so the compilers can work without setting LD_LIBRARY_PATH. # Sets rpath so the compilers can work without setting LD_LIBRARY_PATH.
patchelf = which("patchelf") patchelf = which("patchelf")
patchelf.add_default_arg("--set-rpath") patchelf.add_default_arg("--set-rpath", ":".join(self._ld_library_path()))
patchelf.add_default_arg(":".join(self._ld_library_path()))
for pd in ["bin", "lib", join_path("compiler", "lib", "intel64_lin")]: for pd in ["bin", "lib", join_path("compiler", "lib", "intel64_lin")]:
for file in find(self.component_prefix.linux.join(pd), "*", recursive=False): for file in find(self.component_prefix.linux.join(pd), "*", recursive=False):
# Try to patch all files, patchelf will do nothing and fail if file # Try to patch all files, patchelf will do nothing and fail if file

View file

@ -40,6 +40,5 @@ def install(self, spec, prefix):
def setup_dependent_package(self, module, dependent_spec): def setup_dependent_package(self, module, dependent_spec):
installer = dependent_spec["python"].command installer = dependent_spec["python"].command
installer.add_default_arg("-m") installer.add_default_arg("-m", "installer")
installer.add_default_arg("installer")
setattr(module, "installer", installer) setattr(module, "installer", installer)

View file

@ -110,6 +110,5 @@ def install(self, spec, prefix):
def setup_dependent_package(self, module, dependent_spec): def setup_dependent_package(self, module, dependent_spec):
pip = dependent_spec["python"].command pip = dependent_spec["python"].command
pip.add_default_arg("-m") pip.add_default_arg("-m", "pip")
pip.add_default_arg("pip")
setattr(module, "pip", pip) setattr(module, "pip", pip)