From 369582d7c8b5ce1249761337319e79cc117f161e Mon Sep 17 00:00:00 2001 From: Christopher Allan Webber Date: Fri, 10 Feb 2017 19:24:57 -0600 Subject: [PATCH] guile-gdbm-ffi: Write to correct guile output directory and use guild. * gnu/packages/guile.scm (guile-gdbm-ffi): Check guile for effective version before writing to output path. Also fixes a bug where the guild command was not getting called, and instead was calling the internal guile compile-file procedure. This meant that the package produced was dependent on whatever version of guile was powering Guix at the time. Also set GUILE_AUTO_COMPILE to 0 to avoid gnarly looking warnings during build. --- gnu/packages/guile.scm | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index 3e8ab007b..75f561c03 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -844,11 +844,20 @@ inspired by the SCSH regular expression system.") ((guix build utils)) #:builder (begin - (use-modules (guix build utils) - (system base compile)) + (use-modules (guix build utils)) + + (setenv "GUILE_AUTO_COMPILE" "0") (let* ((out (assoc-ref %outputs "out")) - (module-dir (string-append out "/share/guile/site/2.0")) + (effective-version + (read-line + (open-pipe* OPEN_READ + (string-append + (assoc-ref %build-inputs "guile") + "/bin/guile") + "-c" "(display (effective-version))"))) + (module-dir (string-append out "/share/guile/site/" + effective-version)) (source (assoc-ref %build-inputs "source")) (doc (string-append out "/share/doc")) (guild (string-append (assoc-ref %build-inputs "guile") @@ -856,7 +865,10 @@ inspired by the SCSH regular expression system.") (gdbm.scm-dest (string-append module-dir "/gdbm.scm")) (gdbm.go-dest - (string-append module-dir "/gdbm.go"))) + (string-append module-dir "/gdbm.go")) + (compile-file + (lambda (in-file out-file) + (system* guild "compile" "-o" out-file in-file)))) ;; Make installation directories. (mkdir-p module-dir) (mkdir-p doc) @@ -874,8 +886,7 @@ inspired by the SCSH regular expression system.") (assoc-ref %build-inputs "gdbm")))) ;; compile to the destination - (compile-file gdbm.scm-dest - #:output-file gdbm.go-dest))))) + (compile-file gdbm.scm-dest gdbm.go-dest))))) (inputs `(("guile" ,guile-2.0))) (propagated-inputs -- 2.11.0