lilyp pushed a commit to branch master
in repository guix.
commit 187b6df6f1d0dd54574f42167e64135c2bd586d3
Author: Sören Tempel <[email protected]>
AuthorDate: Sat Jul 27 11:10:55 2024 +0200
gnu: klee: Enable the test suite.
* gnu/packages/check.scm (klee): Enable all tests.
[arguments]: Patch lit configuration and set #:test-target.
<#:configure-flags?>: Enable system and unit tests, configure gtest.
Signed-off-by: Liliana Marie Prikler <[email protected]>
---
gnu/packages/check.scm | 19 +++++++++++++++++--
1 file changed, 17 insertions(+), 2 deletions(-)
diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index 347bd2e1aa..aeaa2e807f 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -1063,13 +1063,22 @@ with the @code{klee} package.")
(base32 "1nma6dqi8chjb97llsa8mzyskgsg4dx56lm8j514j5wmr8vkafz6"))))
(arguments
(list
+ #:test-target "check"
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch
(lambda _
+ ;; Allow specification of an absolute full path to
uclibc.
(substitute* "CMakeLists.txt"
(("\\$\\{KLEE_UCLIBC_PATH\\}/lib/libc\\.a")
- "${KLEE_UCLIBC_PATH}"))))
+ "${KLEE_UCLIBC_PATH}"))
+ ;; Make sure that we retain the value of the
GUIX_PYTHONPATH
+ ;; environment variable in the test environmented
created by
+ ;; python-lit. Otherwise, the test scripts won't be
able to
+ ;; find the python-tabulate dependency, causing test
failures.
+ (substitute* "test/lit.cfg"
+ (("addEnv\\('PWD'\\)" env)
+ (string-append env "\n"
"addEnv('GUIX_PYTHONPATH')")))))
(add-after 'install 'wrap-programs
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
@@ -1085,7 +1094,13 @@ with the @code{klee} package.")
`("KLEE_RUNTIME_LIBRARY_PATH" =
(,(string-append lib "/klee/runtime/"))))))))
#:configure-flags
- #~(list (string-append "-DLLVMCC="
+ #~(list "-DENABLE_UNIT_TESTS=ON"
+ "-DENABLE_SYSTEM_TESTS=ON"
+ (string-append "-DGTEST_SRC_DIR="
+ #+(package-source googletest))
+ (string-append "-DGTEST_INCLUDE_DIR="
+ #+(package-source googletest)
"/googletest/include")
+ (string-append "-DLLVMCC="
(search-input-file %build-inputs "/bin/clang"))
(string-append "-DLLVMCXX="
(search-input-file %build-inputs "/bin/clang++"))