From d10505678fd5624e5e88f72ac7852109f149b264 Mon Sep 17 00:00:00 2001
From: "Adam J. Stewart" <ajstewart426@gmail.com>
Date: Mon, 20 Jan 2020 19:22:05 -0600
Subject: [PATCH] Add new kcov package (#14574)

* Add new kcov package

* Fix linking error and add test
---
 .../repos/builtin/packages/kcov/package.py    | 33 +++++++++++++++++++
 1 file changed, 33 insertions(+)
 create mode 100644 var/spack/repos/builtin/packages/kcov/package.py

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)
-- 
GitLab