From e12f2c18557e67d927d351c36b0760e9b7826956 Mon Sep 17 00:00:00 2001 From: "Adam J. Stewart" Date: Wed, 19 Apr 2017 23:33:14 -0500 Subject: Set proper deptypes for certain build systems (#3866) * Set proper deptypes for certain build systems * Add depends_on to namespace --- lib/spack/spack/build_systems/perl.py | 6 ++++-- lib/spack/spack/build_systems/python.py | 4 +++- lib/spack/spack/build_systems/r.py | 4 +++- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/lib/spack/spack/build_systems/perl.py b/lib/spack/spack/build_systems/perl.py index 78184c85dc..2f272373d2 100644 --- a/lib/spack/spack/build_systems/perl.py +++ b/lib/spack/spack/build_systems/perl.py @@ -27,7 +27,7 @@ import inspect import os from llnl.util.filesystem import join_path -from spack.directives import extends +from spack.directives import depends_on, extends from spack.package import PackageBase, run_after from spack.util.executable import Executable @@ -64,6 +64,8 @@ class PerlPackage(PackageBase): extends('perl') + depends_on('perl', type=('build', 'run')) + def configure_args(self): """Produces a list containing the arguments that must be passed to :py:meth:`~.PerlPackage.configure`. Arguments should not include @@ -85,7 +87,7 @@ class PerlPackage(PackageBase): self.build_executable = inspect.getmodule(self).make elif os.path.isfile('Build.PL'): self.build_method = 'Build.PL' - self.build_executable = Executable( + self.build_executable = Executable( join_path(self.stage.source_path, 'Build')) else: raise RuntimeError('Unknown build_method for perl package') diff --git a/lib/spack/spack/build_systems/python.py b/lib/spack/spack/build_systems/python.py index 2c8ccebae6..904f0dbaa0 100644 --- a/lib/spack/spack/build_systems/python.py +++ b/lib/spack/spack/build_systems/python.py @@ -26,7 +26,7 @@ import inspect import os -from spack.directives import extends +from spack.directives import depends_on, extends from spack.package import PackageBase, run_after from llnl.util.filesystem import working_dir @@ -114,6 +114,8 @@ class PythonPackage(PackageBase): extends('python') + depends_on('python', type=('build', 'run')) + def setup_file(self): """Returns the name of the setup file to use.""" return 'setup.py' diff --git a/lib/spack/spack/build_systems/r.py b/lib/spack/spack/build_systems/r.py index cde3dc9fdd..618ba398e1 100644 --- a/lib/spack/spack/build_systems/r.py +++ b/lib/spack/spack/build_systems/r.py @@ -25,7 +25,7 @@ import inspect -from spack.directives import extends +from spack.directives import depends_on, extends from spack.package import PackageBase, run_after @@ -47,6 +47,8 @@ class RPackage(PackageBase): extends('r') + depends_on('r', type=('build', 'run')) + def install(self, spec, prefix): """Installs an R package.""" inspect.getmodule(self).R( -- cgit v1.2.3-60-g2f50