summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/spack/spack/build_systems/makefile.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/lib/spack/spack/build_systems/makefile.py b/lib/spack/spack/build_systems/makefile.py
index 7274384478..a014ed7c15 100644
--- a/lib/spack/spack/build_systems/makefile.py
+++ b/lib/spack/spack/build_systems/makefile.py
@@ -72,6 +72,9 @@ class MakefilePackage(PackageBase):
#: phase
install_targets = ['install']
+ #: Callback names for build-time test
+ build_time_test_callbacks = ['check']
+
@property
def build_directory(self):
"""Returns the directory containing the main Makefile
@@ -100,5 +103,15 @@ class MakefilePackage(PackageBase):
with working_dir(self.build_directory):
inspect.getmodule(self).make(*self.install_targets)
+ run_after('build')(PackageBase._run_default_build_time_test_callbacks)
+
+ def check(self):
+ """Searches the Makefile for targets ``test`` and ``check``
+ and runs them if found.
+ """
+ with working_dir(self.build_directory):
+ self._if_make_target_execute('test')
+ self._if_make_target_execute('check')
+
# Check that self.prefix is there after installation
run_after('install')(PackageBase.sanity_check_prefix)