From 92b725829bb8597a5828f1892812aa32620203c9 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Sat, 8 Oct 2016 16:34:53 +0200 Subject: gnu: guile-ssh: Compile .scm files after patching them. Before this commit, the .go files were obtained by compiling the unpatched .scm files, so they would refer to libguile-ssh without its absolute file name. * gnu/packages/ssh.scm (guile-ssh)[arguments]: Move 'fix-libguile-ssh-file-name' before 'build'. Have it run "make install -C libguile-ssh" first. --- gnu/packages/ssh.scm | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm index 02e8c93126..c2444fef4a 100644 --- a/gnu/packages/ssh.scm +++ b/gnu/packages/ssh.scm @@ -228,21 +228,21 @@ Additionally, various channel-specific options can be negotiated.") (lambda* (#:key inputs #:allow-other-keys) (chmod "doc/version.texi" #o777) ;make it writable (zero? (system* "autoreconf" "-vfi")))) - (add-after 'install 'fix-libguile-ssh-file-name + (add-before 'build 'fix-libguile-ssh-file-name (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (libdir (string-append out "/lib")) - (guiledir (string-append out - "/share/guile/site/2.0"))) - (substitute* (find-files guiledir ".scm") - (("\"libguile-ssh\"") - (string-append "\"" libdir "/libguile-ssh\""))) - - ;; Make sure it works. - (setenv "GUILE_LOAD_PATH" guiledir) - (setenv "GUILE_LOAD_COMPILED_PATH" guiledir) - (zero? - (system* "guile" "-c" "(use-modules (ssh session))")))))) + ;; Build and install libguile-ssh.so so that we can use + ;; its absolute file name in .scm files, before we build + ;; the .go files. + (and (zero? (system* "make" "install" + "-C" "libguile-ssh" + "-j" (number->string + (parallel-job-count)))) + (let* ((out (assoc-ref outputs "out")) + (libdir (string-append out "/lib"))) + (substitute* (find-files "." "\\.scm$") + (("\"libguile-ssh\"") + (string-append "\"" libdir "/libguile-ssh\""))) + #t))))) #:configure-flags (list (string-append "--with-guilesitedir=" (assoc-ref %outputs "out") "/share/guile/site/2.0")) -- cgit v1.2.3