summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
authorAdam J. Stewart <ajstewart426@gmail.com>2020-01-20 19:22:05 -0600
committerGitHub <noreply@github.com>2020-01-20 19:22:05 -0600
commitd10505678fd5624e5e88f72ac7852109f149b264 (patch)
treedd844bc1688dd819edb525bce5788a05ab0fd42d /var
parentf23a136d83ca01066faa43c60ed33638d6a56f53 (diff)
downloadspack-d10505678fd5624e5e88f72ac7852109f149b264.tar.gz
spack-d10505678fd5624e5e88f72ac7852109f149b264.tar.bz2
spack-d10505678fd5624e5e88f72ac7852109f149b264.tar.xz
spack-d10505678fd5624e5e88f72ac7852109f149b264.zip
Add new kcov package (#14574)
* Add new kcov package * Fix linking error and add test
Diffstat (limited to 'var')
-rw-r--r--var/spack/repos/builtin/packages/kcov/package.py33
1 files changed, 33 insertions, 0 deletions
diff --git a/var/spack/repos/builtin/packages/kcov/package.py b/var/spack/repos/builtin/packages/kcov/package.py
new file mode 100644
index 0000000000..8f01ffc985
--- /dev/null
+++ b/var/spack/repos/builtin/packages/kcov/package.py
@@ -0,0 +1,33 @@
+# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Kcov(CMakePackage):
+ """Code coverage tool for compiled programs, Python and Bash which uses
+ debugging information to collect and report data without special
+ compilation options"""
+
+ homepage = "http://simonkagstrom.github.io/kcov/index.html"
+ url = "https://github.com/SimonKagstrom/kcov/archive/38.tar.gz"
+
+ version('38', sha256='b37af60d81a9b1e3b140f9473bdcb7975af12040feb24cc666f9bb2bb0be68b4')
+
+ depends_on('cmake@2.8.4:', type='build')
+ depends_on('zlib')
+ depends_on('curl')
+
+ def cmake_args(self):
+ # Necessary at least on macOS, fixes linking error to LLDB
+ # https://github.com/Homebrew/homebrew-core/blob/master/Formula/kcov.rb
+ return ['-DSPECIFY_RPATH=ON']
+
+ @run_after('install')
+ @on_package_attributes(run_tests=True)
+ def test(self):
+ # The help message exits with an exit code of 1
+ kcov = Executable(self.prefix.bin.kcov)
+ kcov('-h', ignore_errors=1)