attempt to add valgrind support to the CIs and testament (#12646)

* attempt to add valgrind support to the CIs and testament

* valgrind (currently) works only on 64-bit Linux
This commit is contained in:
Andreas Rumpf 2019-11-18 09:10:48 +01:00 • committed by GitHub
commit 223e65e529
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 29 additions and 8 deletions

View file

@ -72,6 +72,7 @@ type
nimout*: string
parseErrors*: string # when the spec definition is invalid, this is not empty.
unjoinable*: bool
useValgrind*: bool
timeout*: float # in seconds, fractions possible,
# but don't rely on much precision
@ -195,6 +196,14 @@ proc parseSpec*(filename: string): TSpec =
result.nimout = e.value
of "joinable":
result.unjoinable = not parseCfgBool(e.value)
of "valgrind":
when defined(linux) and sizeof(int) == 8:
result.useValgrind = parseCfgBool(e.value)
result.unjoinable = true
else:
# Windows lacks valgrind. Silly OS.
# Valgrind only supports OSX <= 17.x
result.useValgrind = false
of "disabled":
case e.value.normalize
of "y", "yes", "true", "1", "on": result.err = reDisabled