Subject: [bug#58365] [PATCH 4/6] guile-ffi-fftw: Modernise style.

From: Maxime Devos <[email-masked]>
Date: Fri, 7 Oct 2022 22:53:50 +0200

The 'object->string' change is more a personal thing.
"guix style" adds modify-phases on the same line as #:phases, causing the
80-columns limit to be exceeded, so it has been partially ignored.

* gnu/packages/guile-xyz.scm
(guile-ffi-fftw)[arguments]<#:test-script>: Set it.
[arguments]{#:phases}{check}: Remove custom phase.
[native-inputs]: Add native-input required by uncustomised 'check' phase.
---
 gnu/packages/guile-xyz.scm | 27 ++++++++++++++-------------
 1 file changed, 14 insertions(+), 13 deletions(-)

diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index 2ab5683d19..a664e37968 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -3681,22 +3681,23 @@ (define-public guile-ffi-fftw
                   "08j40a5p6a8pgvhffmzb5rfdnrav2mksy3gfjkdqy93jfj1z5afg"))))
       (build-system guile-build-system)
       (arguments
-       `(#:source-directory "mod"
-         #:test-script "../test/test-ffi-fftw.scm"
-         #:phases
-         (modify-phases %standard-phases
-           (add-after 'unpack 'prepare-build
-             (lambda* (#:key inputs #:allow-other-keys)
-               (substitute* "mod/ffi/fftw.scm"
-                 (("\\(getenv \"GUILE_FFI_FFTW_LIBFFTW3_PATH\"\\)")
-                  (format #f "\"~a/lib\"" (assoc-ref inputs "fftw"))))
-               #t)))))
+       (list #:source-directory "mod"
+             #:test-script "../test/test-ffi-fftw.scm"
+             #:phases
+             #~(modify-phases %standard-phases
+                 (add-after 'unpack 'prepare-build
+                   (lambda* (#:key inputs #:allow-other-keys)
+                     (substitute* "mod/ffi/fftw.scm"
+                       (("\\(getenv \"GUILE_FFI_FFTW_LIBFFTW3_PATH\"\\)")
+                        (object->string
+                         (dirname
+                          (search-input-file inputs "lib/libfftw3.so"))))))))))
       (native-inputs (list guile-test-driver))
-      (inputs
-       (list fftw guile-2.2))
+      (inputs (list fftw guile-2.2))
       (home-page "https://github.com/lloda/guile-ffi-fftw/")
       (synopsis "Access FFTW through Guile's FFI")
-      (description "This is a minimal set of Guile FFI bindings for the FFTW
+      (description
+       "This is a minimal set of Guile FFI bindings for the FFTW
 library's ‘guru interface’.  It provides two functions: @code{fftw-dft! rank
 sign in out} and @code{fftw-dft rank sign in}.  These bindings being minimal,
 there is no support for computing & reusing plans, or split r/i transforms, or
-- 
2.37.3