Subject: bug#51243: closed (Re: [bug#51243] [PATCH] gnu: julia: Fix llvm-julia version)

From: [email-masked] (GNU bug Tracking System)
Date: Tue, 16 Nov 2021 07:17:02 +0000

Your bug report

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

which was filed against the guix-patches package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
51243: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=51243
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: [bug#51243] [PATCH] gnu: julia: Fix llvm-julia version
From: Efraim Flashner <[email-masked]>
To: Jean-Baptiste Volatier <[email-masked]>
Cc: [email-masked]
Date: Tue, 16 Nov 2021 09:15:45 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

Thanks. Patch pushed!

-- 
Efraim Flashner   <[email-masked]>   רנשלפ םירפא
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

Subject: [PATCH] gnu: julia: Fix llvm-julia version
From: Jean-Baptiste Volatier <[email-masked]>
To: [email-masked]
Cc: Jean-Baptiste Volatier <[email-masked]>
Date: Sat, 16 Oct 2021 19:12:14 +0000
List-Id: <debbugs-submit.debbugs.gnu.org>

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(-)

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

base-commit: 34b0aa16e77bdbb5b847267eb0f825a590e3d101
--
2.33.1