diff options
author | Massimiliano Culpo <massimiliano.culpo@gmail.com> | 2021-08-19 23:03:10 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-08-19 14:03:10 -0700 |
commit | 10695f1ed36bdaf6f813b261698e6a02b99d1f1c (patch) | |
tree | 32f6d8dff6ce9495dacce73680207545888a4b0a /share | |
parent | 350372e3bf9c1ac5de2e7e74a3ccd8a46f7e1d5d (diff) | |
download | spack-10695f1ed36bdaf6f813b261698e6a02b99d1f1c.tar.gz spack-10695f1ed36bdaf6f813b261698e6a02b99d1f1c.tar.bz2 spack-10695f1ed36bdaf6f813b261698e6a02b99d1f1c.tar.xz spack-10695f1ed36bdaf6f813b261698e6a02b99d1f1c.zip |
Use kcov from official Ubuntu 20.04 repository (#25385)
* Ubuntu 20.04 provides kcov, so don't build from source
* Use two undocumented options for kcov v3.8
Diffstat (limited to 'share')
-rwxr-xr-x | share/spack/qa/bashcov | 5 | ||||
-rwxr-xr-x | share/spack/qa/run-shell-tests | 4 | ||||
-rwxr-xr-x | share/spack/qa/setup.sh | 4 |
3 files changed, 8 insertions, 5 deletions
diff --git a/share/spack/qa/bashcov b/share/spack/qa/bashcov index 58fa4fe0d0..4ca684f42b 100755 --- a/share/spack/qa/bashcov +++ b/share/spack/qa/bashcov @@ -9,4 +9,7 @@ if [ -z "$SPACK_ROOT" ]; then exit 1 fi -kcov "$SPACK_ROOT/coverage" "$@" +# Using a -- to separate the script to be tested from kcov is not documented +# as of v38, but seems to work. The same is true for the "--debug-force-bash-stderr" +# option, see https://github.com/SimonKagstrom/kcov/issues/61 +kcov --debug-force-bash-stderr "$SPACK_ROOT/coverage" -- "$@" diff --git a/share/spack/qa/run-shell-tests b/share/spack/qa/run-shell-tests index 22bf4b8aba..ea67b4c820 100755 --- a/share/spack/qa/run-shell-tests +++ b/share/spack/qa/run-shell-tests @@ -38,8 +38,8 @@ cd "$SPACK_ROOT" # Run bash tests with coverage enabled, but pipe output to /dev/null # because it seems that kcov seems to undo the script's redirection if [ "$COVERAGE" = true ]; then - "$QA_DIR/bashcov" "$QA_DIR/setup-env-test.sh" &> /dev/null - "$QA_DIR/bashcov" "$QA_DIR/completion-test.sh" &> /dev/null + kcov "$SPACK_ROOT/coverage" "$QA_DIR/setup-env-test.sh" &> /dev/null + kcov "$SPACK_ROOT/coverage" "$QA_DIR/completion-test.sh" &> /dev/null else bash "$QA_DIR/setup-env-test.sh" bash "$QA_DIR/completion-test.sh" diff --git a/share/spack/qa/setup.sh b/share/spack/qa/setup.sh index b15d3a4021..9559f9b793 100755 --- a/share/spack/qa/setup.sh +++ b/share/spack/qa/setup.sh @@ -31,10 +31,10 @@ if [[ "$COVERAGE" == "true" ]]; then bashcov=$(realpath ${QA_DIR}/bashcov) # instrument scripts requiring shell coverage - sed -i~ "s@#\!/bin/bash@#\!${bashcov}@" "$SPACK_ROOT/lib/spack/env/cc" + sed -i "s@#\!/bin/bash@#\!${bashcov}@" "$SPACK_ROOT/lib/spack/env/cc" if [ "$(uname -o)" != "Darwin" ]; then # On darwin, #! interpreters must be binaries, so no sbang for bashcov - sed -i~ "s@#\!/bin/sh@#\!${bashcov}@" "$SPACK_ROOT/bin/sbang" + sed -i "s@#\!/bin/sh@#\!${bashcov}@" "$SPACK_ROOT/bin/sbang" fi fi |