~ruther/guix-local

a5bd6a5e15f6f8bff77e760f8de53d979abfe1d9 — Christopher Allan Webber 9 years ago 8034560
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.
1 files changed, 19 insertions(+), 5 deletions(-)

M gnu/packages/guile.scm
M gnu/packages/guile.scm => gnu/packages/guile.scm +19 -5
@@ 846,10 846,22 @@ inspired by the SCSH regular expression system.")
       #:builder
       (begin
         (use-modules (guix build utils)
                      (system base compile))
                      (ice-9 rdelim)
                      (ice-9 popen))

         ;; Avoid warnings we can safely ignore
         (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")


@@ 857,7 869,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)


@@ 875,8 890,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