From d10505678fd5624e5e88f72ac7852109f149b264 Mon Sep 17 00:00:00 2001 From: "Adam J. Stewart" 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)