diff options
author | Sharlatan Hellseher <sharlatanus@gmail.com> | 2024-08-13 16:53:33 +0100 |
---|---|---|
committer | Sharlatan Hellseher <sharlatanus@gmail.com> | 2024-08-27 17:02:57 +0100 |
commit | 1e69ac70c760de885ca3d9a31077de18292f83fa (patch) | |
tree | 9ba48cb51ace1be3958a28ba7b96364364505941 | |
parent | 1166035acb4e1b0dc61bf9122b68f2afa0c35790 (diff) | |
download | guix-1e69ac70c760de885ca3d9a31077de18292f83fa.tar.gz guix-1e69ac70c760de885ca3d9a31077de18292f83fa.zip |
gnu: indi-2.0: Adjust package style.
* gnu/packages/astronomy.scm (indi-2.0): Apply G-expressions.
[arguments] <tests>: Enable tests on all architectures.
<parallel-tests>: Disable it to make tests more stable.
<configure-flags>: Build all tests, do not set "Release" build type.
<phases>: Add 'patch-udev-rule phase. Refresh custom 'check phase to
include integration tests.'
[inputs]: Add kmod.
Change-Id: I46223344b042e2516065a4382fb0feb36645ebf9
-rw-r--r-- | gnu/packages/astronomy.scm | 46 |
1 files changed, 26 insertions, 20 deletions
diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm index 212650630c..c7c244ed96 100644 --- a/gnu/packages/astronomy.scm +++ b/gnu/packages/astronomy.scm @@ -61,6 +61,7 @@ #:use-module (gnu packages jupyter) #:use-module (gnu packages libevent) #:use-module (gnu packages libusb) + #:use-module (gnu packages linux) #:use-module (gnu packages lua) #:use-module (gnu packages machine-learning) #:use-module (gnu packages maths) @@ -4316,26 +4317,30 @@ floating-point (no compression, LZW- or ZIP-compressed), FITS 8-bit, 16-bit, (base32 "1rsy6ihwl3fnv502pmycx0xry9qn1qfz13kwdifcf2075wqd1lx9")))) (build-system cmake-build-system) (arguments - ;; TODO: fix failing tests on aarch64-system. - `(#:tests? ,(not (or (%current-target-system) (target-aarch64?))) - #:configure-flags - (let ((out (assoc-ref %outputs "out"))) - (list - "-DINDI_BUILD_UNITTESTS=ON" - "-DCMAKE_BUILD_TYPE=Release" - (string-append "-DCMAKE_INSTALL_PREFIX=" out) - (string-append "-DUDEVRULES_INSTALL_DIR=" out "/lib/udev/rules.d"))) - #:phases - (modify-phases %standard-phases - (replace 'check - (lambda* (#:key tests? #:allow-other-keys) - (when tests? - (with-directory-excursion "test" - (invoke "ctest"))))) - (add-before 'install 'set-install-directories - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - (mkdir-p (string-append out "/lib/udev/rules.d")))))))) + (list + #:parallel-tests? #f ; Socket address collisions between tests + #:configure-flags + #~(list "-DINDI_BUILD_UNITTESTS=ON" + "-DINDI_BUILD_INTEGTESTS=ON" + "-DCMAKE_INSTALL_LIBDIR=lib" + (string-append "-DCMAKE_INSTALL_PREFIX=" #$output) + (string-append "-DUDEVRULES_INSTALL_DIR=" #$output "/lib/udev/rules.d")) + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'patch-udev-rules + (lambda _ + (substitute* (list "drivers/auxiliary/99-indi_auxiliary.rules" + "drivers/video/80-dbk21-camera.rules") + (("/bin/sh") (which "sh")) + (("/sbin/modprobe") + (string-append #$(this-package-input "kmod") "/bin/modprobe"))))) + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (with-directory-excursion "integs" + (invoke "ctest" "-V" "--output-on-failure")) + (with-directory-excursion "test" + (invoke "ctest" "-V")))))))) (native-inputs (list googletest)) (inputs @@ -4343,6 +4348,7 @@ floating-point (no compression, LZW- or ZIP-compressed), FITS 8-bit, 16-bit, curl fftw gsl + kmod libev libjpeg-turbo libnova |