~ruther/guix-local

16bc2f3609facce36de3c1b135cac4a5a87f99a7 — Efraim Flashner 2 years ago a473d56
gnu: julia: Conditionally use openblas with ILP64 support.

Fixes <https://bugs.gnu.org/63986>.
Reported by Cayetano Santos <csantosb@inventati.org>.

* gnu/packages/julia.scm (julia)[arguments]<#:phases>: Conditionally use
OpenBLAS with ILP64 support for x86-64 target.
<#:make-flags>: Likewise.
[inputs]: Conditionally replace openblas by openblas-ilp64 for x86-64 target.

Co-authored-by: Simon Tournier <zimon.toutoune@gmail.com>
1 files changed, 14 insertions(+), 8 deletions(-)

M gnu/packages/julia.scm
M gnu/packages/julia.scm => gnu/packages/julia.scm +14 -8
@@ 269,7 269,10 @@ libraries.  It is also a bit like @code{ldd} and @code{otool -L}.")
               (substitute* (jlpath "nghttp2")
                 (((from "libnghttp2")) (to "libnghttp2" "libnghttp2")))
               (substitute* (jlpath "OpenBLAS")
                 (((from "libopenblas")) (to "openblas" "libopenblas")))
                 (((from "libopenblas"))
                  ,@(if (target-x86-64?)
                      `((to "openblas" "libopenblas64_" "libopenblas"))
                      `((to "openblas" "libopenblas")))))
               (substitute* (jlpath "OpenLibm")
                 (((from "libopenlibm")) (to "openlibm" "libopenlibm")))
               (substitute* (jlpath "PCRE2")


@@ 479,12 482,13 @@ using Dates: @dateformat_str, Date, DateTime, DateFormat, Time"))
         "NO_GIT=1"             ; build from release tarball.
         "USE_GPL_LIBS=1"       ; proudly

         ,@(if (target-aarch64?)
             `("USE_BLAS64=0")
             '())

         "LIBBLAS=-lopenblas"
         "LIBBLASNAME=libopenblas"
         ,@(if (target-x86-64?)
             `("USE_BLAS64=1"
               "LIBBLAS=-lopenblas64_"
               "LIBBLASNAME=libopenblas64_")
             `("USE_BLAS64=0"
               "LIBBLAS=-lopenblas"
               "LIBBLASNAME=libopenblas"))

         (string-append "UTF8PROC_INC="
                        (assoc-ref %build-inputs "utf8proc")


@@ 513,7 517,9 @@ using Dates: @dateformat_str, Date, DateTime, DateFormat, Time"))
       ("llvm" ,llvm-julia)
       ("mbedtls-apache" ,mbedtls-apache)
       ("mpfr" ,mpfr)
       ("openblas" ,openblas)
       ,@(if (target-x86-64?)
             `(("openblas" ,openblas-ilp64))
             `(("openblas" ,openblas)))
       ("openlibm" ,openlibm)
       ("p7zip" ,p7zip)
       ("pcre2" ,pcre2)