diff mbox series

[bug#51243] gnu: julia: Fix llvm-julia version

Message ID 20211016191210.3069-1-jbv@pm.me
State Accepted
Headers show
Series [bug#51243] gnu: julia: Fix llvm-julia version | expand

Checks

Context Check Description
cbaines/comparison success View comparision
cbaines/git branch success View Git branch
cbaines/applying patch success View Laminar job
cbaines/issue success View issue

Commit Message

Jean-Baptiste Volatier Oct. 16, 2021, 7:12 p.m. UTC
LLVM bundled in the binary julia distributed by upstream has its
version with a "jl" suffix. The llvm-julia package does not have
this suffix, which causes some packages (e. g. LLVM.jl) to fail to
load.

LLVM.jl does this in order to be sure that it is loading a LLVM as
patched for julia and not LLVM from the distribution which will
lack the correct patches on distribs other than GUIX.

I guess there might be other packages that rely on this, so we
should fix our llvm-julia package.

* gnu/packages/julia.scm (llvm)
[source]: Add missing upstream patch
[arguments]: Add configure-flag to set a "jl" suffix to llvm version
(julia)[arguments]: Symlink llvm to llvm-11jl.so
---
 gnu/packages/julia.scm | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)


base-commit: 34b0aa16e77bdbb5b847267eb0f825a590e3d101
--
2.33.1

Comments

Efraim Flashner Nov. 16, 2021, 7:15 a.m. UTC | #1
Thanks. Patch pushed!
diff mbox series

Patch

diff --git a/gnu/packages/julia.scm b/gnu/packages/julia.scm
index fe31e545c9..411f2e2e10 100644
--- a/gnu/packages/julia.scm
+++ b/gnu/packages/julia.scm
@@ -131,6 +131,8 @@  (define llvm-julia
                        "19spqc3xsazn1xs9gpcgv9ldadfkv49rmc5khl7sf1dlmhgi4602")
                      '("llvm-7.0-D44650"
                        "1h55kkmkiisfj6sk956if2bcj9s0v6n5czn8dxb870vp5nccj3ir")
+                     '("llvm7-symver-jlprefix"
+                       "00ng32x6xhm9czczirn5r1q1mc1myad44fqhi061hwh1vb46dwgm")
                      '("llvm-6.0-DISABLE_ABI_CHECKS"
                        "014fawd1ba7yckalypfld22zgic87x9nx3cim42zrwygywd36pyg")
                      '("llvm9-D50010-VNCoercion-ni"
@@ -211,7 +213,8 @@  (define llvm-julia
            ;; "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}"
            ;; "-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=WebAssembly"
            "-DLLVM_ENABLE_DUMP=ON"
-           "-DLLVM_LINK_LLVM_DYLIB=ON"))))
+           "-DLLVM_LINK_LLVM_DYLIB=ON"
+           "-DLLVM_VERSION_SUFFIX:STRING=jl"))))
     (inputs
      (append
        (package-inputs llvm-11)
@@ -548,7 +551,7 @@  (define-public julia
                                                               (basename file)))))
                         (find-files (string-append (assoc-ref inputs pkgname)
                                                    "/lib") pred)))))
-               (link "llvm" "libLLVM-11\\.so")
+               (link "llvm" "libLLVM-11jl\\.so")
                (link "utf8proc" "libutf8proc\\.so")
                #t)))
          (add-after 'install 'make-wrapper