diff options
author | Ricardo Wurmus <rekado@elephly.net> | 2022-09-19 20:26:00 +0200 |
---|---|---|
committer | Ricardo Wurmus <rekado@elephly.net> | 2022-09-20 17:02:09 +0200 |
commit | 7531efe54ddb3fe2ff5cede8505bae9e292987b2 (patch) | |
tree | a87fe9d7f88c42b2c0347fcc0b8b1be503a92039 /gnu/packages/machine-learning.scm | |
parent | 851441a5d9d5bfbfe8418457526c76374842d0fb (diff) | |
download | guix-7531efe54ddb3fe2ff5cede8505bae9e292987b2.tar.gz |
gnu: liblantern: Do not hardcode Python version.
* gnu/packages/machine-learning.scm (liblantern)[arguments]: Do not hardcode Python version.
Diffstat (limited to 'gnu/packages/machine-learning.scm')
-rw-r--r-- | gnu/packages/machine-learning.scm | 77 |
1 files 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") |