guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

05/211: gnu: liblantern: Do not hardcode Python version.


From: guix-commits
Subject: 05/211: gnu: liblantern: Do not hardcode Python version.
Date: Tue, 20 Sep 2022 06:23:34 -0400 (EDT)

rekado pushed a commit to branch wip-r
in repository guix.

commit a389f3f7331849666fe35c29be2567af228f8a34
Author: Ricardo Wurmus <rekado@elephly.net>
AuthorDate: Mon Sep 19 20:26:00 2022 +0200

    gnu: liblantern: Do not hardcode Python version.
    
    * gnu/packages/machine-learning.scm (liblantern)[arguments]: Do not hardcode
    Python version.
---
 gnu/packages/machine-learning.scm | 77 +++++++++++++++++++++------------------
 1 file changed, 41 insertions(+), 36 deletions(-)

diff --git a/gnu/packages/machine-learning.scm 
b/gnu/packages/machine-learning.scm
index 0a12065978..3ef4283771 100644
--- a/gnu/packages/machine-learning.scm
+++ b/gnu/packages/machine-learning.scm
@@ -3180,42 +3180,47 @@ of Hidden Markov Models.")
      (list
       #:tests? #false                   ;no test target
       #:phases
-      #~(modify-phases %standard-phases
-          (add-after 'unpack 'chdir
-            (lambda _ (chdir "lantern")))
-          (add-after 'chdir 'do-not-download-binaries
-            (lambda* (#:key inputs #:allow-other-keys)
-              (substitute* "CMakeLists.txt"
-                (("find_package\\(Torch.*") "set(TORCH_CXX_FLAGS 
\"-ltorch\")\n")
-                (("retrieve_lib\\(.*") ""))
-              (setenv "LIBRARY_PATH"
-                      (string-append
-                       (search-input-directory
-                        inputs "/lib/python3.9/site-packages/torch/lib")
-                       ":" (or (getenv "LIBRARY_PATH") "")))
-              (setenv "CPLUS_INCLUDE_PATH"
-                      (string-append
-                       (search-input-directory
-                        inputs 
"lib/python3.9/site-packages/torch/include/torch/csrc/api/include/")
-                       ":"
-                       (search-input-directory
-                        inputs "lib/python3.9/site-packages/torch/include/")
-                       ":"
-                       (or (getenv "CPLUS_INCLUDE_PATH") "")))
-              (setenv "C_INCLUDE_PATH"
-                      (string-append
-                       (search-input-directory
-                        inputs "lib/python3.9/site-packages/torch/include/")
-                       ":"
-                       (or (getenv "C_INCLUDE_PATH") "")))))
-          (replace 'install
-            (lambda _
-              (install-file
-               "../build/liblantern.so"
-               (string-append #$output "/lib"))
-              (copy-recursively
-               "../lantern/include"
-               (string-append #$output "/include")))))))
+      (let ((python-version (version-major+minor (package-version python))))
+        #~(modify-phases %standard-phases
+            (add-after 'unpack 'chdir
+              (lambda _ (chdir "lantern")))
+            (add-after 'chdir 'do-not-download-binaries
+              (lambda* (#:key inputs #:allow-other-keys)
+                (substitute* "CMakeLists.txt"
+                  (("find_package\\(Torch.*") "set(TORCH_CXX_FLAGS 
\"-ltorch\")\n")
+                  (("retrieve_lib\\(.*") ""))
+                (let ((site-packages (string-append "/lib/python"
+                                                    #$python-version
+                                                    "/site-packages")))
+                  (setenv "LIBRARY_PATH"
+                          (string-append
+                           (search-input-directory
+                            inputs (string-append site-packages "/torch/lib"))
+                           ":" (or (getenv "LIBRARY_PATH") "")))
+                  (setenv "CPLUS_INCLUDE_PATH"
+                          (string-append
+                           (search-input-directory
+                            inputs (string-append
+                                    site-packages 
"/torch/include/torch/csrc/api/include/"))
+                           ":"
+                           (search-input-directory
+                            inputs (string-append site-packages 
"/torch/include/"))
+                           ":"
+                           (or (getenv "CPLUS_INCLUDE_PATH") "")))
+                  (setenv "C_INCLUDE_PATH"
+                          (string-append
+                           (search-input-directory
+                            inputs (string-append site-packages 
"/torch/include/"))
+                           ":"
+                           (or (getenv "C_INCLUDE_PATH") ""))))))
+            (replace 'install
+              (lambda _
+                (install-file
+                 "../build/liblantern.so"
+                 (string-append #$output "/lib"))
+                (copy-recursively
+                 "../lantern/include"
+                 (string-append #$output "/include"))))))))
     (inputs (list python-pytorch-for-r-torch))
     (home-page "https://github.com/mlverse/torch/";)
     (synopsis "C API to libtorch")



reply via email to

[Prev in Thread] Current Thread [Next in Thread]