Subject: [PATCH v4] gnu: llama-cpp: Update commit and update configure flags for shared library build.

From: Andy Tai <[email-masked]>
Date: Tue, 11 Jun 2024 04:41:44 -0700

* gnu/packages/machine-learning.scm (lama-cpp): Update to commit a5735e with
  pkf-config support.
  [arguments](configure-flags): add cmake configure flag
  for shared library build and adjust arguments to make openblas
  found by cmake.
  (phases) 'install-python-scripts: Remove references to deleted scripts
  and add new ones upsteeam.

Change-Id: I7c4bc219a22aa9a949e811b340c7cf745b176d14
---
 gnu/packages/machine-learning.scm | 18 +++++++++++-------
 1 file changed, 11 insertions(+), 7 deletions(-)

diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm
index a385ddc18c..f433f8cd65 100644
--- a/gnu/packages/machine-learning.scm
+++ b/gnu/packages/machine-learning.scm
@@ -524,7 +524,7 @@ (define-public guile-aiscm-next
   (deprecated-package "guile-aiscm-next" guile-aiscm))
 
 (define-public llama-cpp
-  (let ((commit "fed0108491a3a3cbec6c6480dc8667ffff9d7659")
+  (let ((commit "a5735e4426b19a3ebd0c653ad8ac01420458ee95")
         (revision "2"))
     (package
       (name "llama-cpp")
@@ -537,12 +537,16 @@ (define-public llama-cpp
                (commit commit)))
          (file-name (git-file-name name version))
          (sha256
-          (base32 "16rm9gy0chd6k07crm8rkl2j3hg7y7h0km7k6c8q7bmm2jrd64la"))))
+          (base32 "0nx55wchwf204ld6jygfn37cjrzc4lspwn5v0qk8i6p92499bv0h"))))
       (build-system cmake-build-system)
       (arguments
        (list
-        #:configure-flags #~'("-DLLAMA_BLAS=ON"
+        #:configure-flags
+        #~(list               "-DBUILD_SHARED_LIBS=ON"
+                              "-DLLAMA_BLAS=ON"
                               "-DLLAMA_BLAS_VENDOR=OpenBLAS"
+                              (string-append "-DBLAS_INCLUDE_DIRS=" #$(this-package-input "openblas") "/include")
+                              (string-append "-DBLAS_LIBRARIES=" #$(this-package-input "openblas") "/lib/libopenblas.so")
 
                               "-DLLAMA_NATIVE=OFF" ;no '-march=native'
                               "-DLLAMA_FMA=OFF"    ;and no '-mfma', etc.
@@ -584,14 +588,14 @@ (define-public llama-cpp
                   (mkdir-p bin)
                   (make-script "convert-hf-to-gguf")
                   (make-script "convert-llama-ggml-to-gguf")
-                  (make-script "convert-lora-to-ggml")
-                  (make-script "convert-persimmon-to-gguf")
-                  (make-script "convert"))))
+                  (make-script "convert-hf-to-gguf-update.py"))))
             (add-after 'install-python-scripts 'wrap-python-scripts
               (assoc-ref python:%standard-phases 'wrap))
             (add-after 'install 'install-main
               (lambda _
-                (copy-file "bin/main" (string-append #$output "/bin/llama")))))))
+                (with-directory-excursion (string-append #$output "/bin")
+                    (symlink "main" "llama"))))
+            )))
       (inputs (list python))
       (native-inputs (list pkg-config))
       (propagated-inputs

base-commit: bc8a41f4a8d9f1f0525d7bc97c67ed3c8aea3111
-- 
2.45.1