From: "Nicolò Balzarotti" <anothersms@gmail.com>
To: Guix Patches <38546@debbugs.gnu.org>
Subject: [bug#38546] [PATCH 1/3] gnu: julia: Set to JULIA_LOAD_PATH and JULIA_DEPOT_PATH variables.
Date: Thu, 10 Oct 2019 17:49:15 +0200 [thread overview]
Message-ID: <87tv69vbt6.fsf@guixSD.i-did-not-set--mail-host-address--so-tickle-me> (raw)
In-Reply-To: <87v9qpvbyr.fsf@guixSD.i-did-not-set--mail-host-address--so-tickle-me>
gnu/packages/julia.scm | 146 +++++++++++++++++++++--------------------
1 file changed, 75 insertions(+), 71 deletions(-)
diff --git a/gnu/packages/julia.scm b/gnu/packages/julia.scm
index 65a5e42beb..2516e7fa82 100644
--- a/gnu/packages/julia.scm
+++ b/gnu/packages/julia.scm
@@ -158,7 +158,7 @@
(define-public julia
(package
(name "julia")
- (version "1.1.1")
+ (version "1.1.1") ;; Update also JULIA_LOAD_PATH with it
(source (origin
(method url-fetch)
(uri (string-append
@@ -229,77 +229,77 @@
;; Some tests require a home directory to be set.
(lambda _ (setenv "HOME" "/tmp") #t))
(add-after 'unpack 'hardcode-soname-map
- ;; ./src/runtime_ccall.cpp creates a map from library names to paths
- ;; using the output of "/sbin/ldconfig -p". Since ldconfig is not
- ;; used in Guix, we patch runtime_ccall.cpp to contain a static map.
- (lambda* (#:key inputs #:allow-other-keys)
- (use-modules (ice-9 match))
- (substitute* "src/runtime_ccall.cpp"
- ;; Patch out invocations of '/sbin/ldconfig' to avoid getting
- ;; error messages about missing '/sbin/ldconfig' on Guix System.
- (("popen\\(.*ldconfig.*\\);")
- "NULL;\n")
+ ;; ./src/runtime_ccall.cpp creates a map from library names to paths
+ ;; using the output of "/sbin/ldconfig -p". Since ldconfig is not
+ ;; used in Guix, we patch runtime_ccall.cpp to contain a static map.
+ (lambda* (#:key inputs #:allow-other-keys)
+ (use-modules (ice-9 match))
+ (substitute* "src/runtime_ccall.cpp"
+ ;; Patch out invocations of '/sbin/ldconfig' to avoid getting
+ ;; error messages about missing '/sbin/ldconfig' on Guix System.
+ (("popen\\(.*ldconfig.*\\);")
+ "NULL;\n")
- ;; Populate 'sonameMap'.
- (("jl_read_sonames.*;")
- (string-join
- (map (match-lambda
- ((input libname soname)
- (string-append
- "sonameMap[\"" libname "\"] = "
- "\"" (assoc-ref inputs input) "/lib/" soname "\";")))
- '(("libc" "libc" "libc.so.6")
- ("pcre2" "libpcre2-8" "libpcre2-8.so")
- ("mpfr" "libmpfr" "libmpfr.so")
- ("openblas" "libblas" "libopenblas.so")
- ("arpack-ng" "libarpack" "libarpack.so")
- ("lapack" "liblapack" "liblapack.so")
- ("libgit2" "libgit2" "libgit2.so")
- ("gmp" "libgmp" "libgmp.so")
- ("openspecfun" "libopenspecfun" "libopenspecfun.so")
- ("fftw" "libfftw3" "libfftw3_threads.so")
- ("fftwf" "libfftw3f" "libfftw3f_threads.so"))))))
- (substitute* "base/math.jl"
- (("const libm = Base.libm_name")
- (string-append "const libm = \""
- (assoc-ref inputs "openlibm")
- "/lib/libopenlibm.so"
- "\""))
- (("const openspecfun = \"libopenspecfun\"")
- (string-append "const openspecfun = \""
- (assoc-ref inputs "openspecfun")
- "/lib/libopenspecfun.so"
- "\"")))
- #t))
+ ;; Populate 'sonameMap'.
+ (("jl_read_sonames.*;")
+ (string-join
+ (map (match-lambda
+ ((input libname soname)
+ (string-append
+ "sonameMap[\"" libname "\"] = "
+ "\"" (assoc-ref inputs input) "/lib/" soname "\";")))
+ '(("libc" "libc" "libc.so.6")
+ ("pcre2" "libpcre2-8" "libpcre2-8.so")
+ ("mpfr" "libmpfr" "libmpfr.so")
+ ("openblas" "libblas" "libopenblas.so")
+ ("arpack-ng" "libarpack" "libarpack.so")
+ ("lapack" "liblapack" "liblapack.so")
+ ("libgit2" "libgit2" "libgit2.so")
+ ("gmp" "libgmp" "libgmp.so")
+ ("openspecfun" "libopenspecfun" "libopenspecfun.so")
+ ("fftw" "libfftw3" "libfftw3_threads.so")
+ ("fftwf" "libfftw3f" "libfftw3f_threads.so"))))))
+ (substitute* "base/math.jl"
+ (("const libm = Base.libm_name")
+ (string-append "const libm = \""
+ (assoc-ref inputs "openlibm")
+ "/lib/libopenlibm.so"
+ "\""))
+ (("const openspecfun = \"libopenspecfun\"")
+ (string-append "const openspecfun = \""
+ (assoc-ref inputs "openspecfun")
+ "/lib/libopenspecfun.so"
+ "\"")))
+ #t))
(add-before 'build 'fix-include-and-link-paths
- (lambda* (#:key inputs #:allow-other-keys)
- ;; LIBUTF8PROC is a linker flag, not a build target. It is
- ;; included in the LIBFILES_* variable which is used as a
- ;; collection of build targets and a list of libraries to link
- ;; against.
- (substitute* "src/flisp/Makefile"
- (("\\$\\(BUILDDIR\\)/\\$\\(EXENAME\\): \\$\\(OBJS\\) \\$\\(LIBFILES_release\\)")
- "$(BUILDDIR)/$(EXENAME): $(OBJS) $(LLT_release)")
- (("\\$\\(BUILDDIR\\)/\\$\\(EXENAME\\)-debug: \\$\\(DOBJS\\) \\$\\(LIBFILES_debug\\)")
- "$(BUILDDIR)/$(EXENAME)-debug: $(DOBJS) $(LLT_debug)"))
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; LIBUTF8PROC is a linker flag, not a build target. It is
+ ;; included in the LIBFILES_* variable which is used as a
+ ;; collection of build targets and a list of libraries to link
+ ;; against.
+ (substitute* "src/flisp/Makefile"
+ (("\\$\\(BUILDDIR\\)/\\$\\(EXENAME\\): \\$\\(OBJS\\) \\$\\(LIBFILES_release\\)")
+ "$(BUILDDIR)/$(EXENAME): $(OBJS) $(LLT_release)")
+ (("\\$\\(BUILDDIR\\)/\\$\\(EXENAME\\)-debug: \\$\\(DOBJS\\) \\$\\(LIBFILES_debug\\)")
+ "$(BUILDDIR)/$(EXENAME)-debug: $(DOBJS) $(LLT_debug)"))
- ;; The REPL must be linked with libuv.
- (substitute* "ui/Makefile"
- (("JLDFLAGS \\+= ")
- (string-append "JLDFLAGS += "
- (assoc-ref %build-inputs "libuv")
- "/lib/libuv.so ")))
+ ;; The REPL must be linked with libuv.
+ (substitute* "ui/Makefile"
+ (("JLDFLAGS \\+= ")
+ (string-append "JLDFLAGS += "
+ (assoc-ref %build-inputs "libuv")
+ "/lib/libuv.so ")))
- (substitute* "base/Makefile"
- (("\\$\\(build_includedir\\)/uv/errno.h")
- (string-append (assoc-ref inputs "libuv")
- "/include/uv/errno.h")))
- #t))
+ (substitute* "base/Makefile"
+ (("\\$\\(build_includedir\\)/uv/errno.h")
+ (string-append (assoc-ref inputs "libuv")
+ "/include/uv/errno.h")))
+ #t))
(add-before 'build 'replace-default-shell
- (lambda _
- (substitute* "base/client.jl"
- (("/bin/sh") (which "sh")))
- #t))
+ (lambda _
+ (substitute* "base/client.jl"
+ (("/bin/sh") (which "sh")))
+ #t))
(add-after 'unpack 'hardcode-paths
(lambda _
(substitute* "stdlib/InteractiveUtils/src/InteractiveUtils.jl"
@@ -345,9 +345,9 @@
;; platforms, e.g. when running "guix package --search="
(_ "MARCH=UNSUPPORTED"))
- "CONFIG_SHELL=bash" ;needed to build bundled libraries
- "USE_SYSTEM_DSFMT=0" ;not packaged for Guix and upstream has no
- ;build system for a shared library.
+ "CONFIG_SHELL=bash" ;needed to build bundled libraries
+ "USE_SYSTEM_DSFMT=0" ;not packaged for Guix and upstream has no
+ ;build system for a shared library.
"USE_SYSTEM_LAPACK=1"
"USE_SYSTEM_BLAS=1"
"USE_BLAS64=0" ;needed when USE_SYSTEM_BLAS=1
@@ -485,7 +485,11 @@
(native-search-paths
(list (search-path-specification
(variable "JULIA_LOAD_PATH")
- (files (list "share/julia/packages/")))))
+ (files (list "share/julia/packages/"
+ "share/julia/stdlib/v1.1/")))
+ (search-path-specification
+ (variable "JULIA_DEPOT_PATH")
+ (files (list "share/julia/")))))
;; Julia is not officially released for ARM and MIPS.
;; See https://github.com/JuliaLang/julia/issues/10639
(supported-systems '("i686-linux" "x86_64-linux" "aarch64-linux"))
--
2.24.0
next prev parent reply other threads:[~2019-12-09 14:01 UTC|newest]
Thread overview: 54+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <87pnfgvqgt.fsf@guixSD.i-did-not-set--mail-host-address--so-tickle-me>
2019-12-09 13:36 ` [bug#38546] [PATCH 0/3] Julia: fix package build and add julia-xyz nixo
2019-10-10 15:49 ` [bug#38546] [PATCH 3/3] gnu: julia-xyz: Add julia-compat Nicolò Balzarotti
2019-12-15 21:46 ` Ludovic Courtès
2019-10-10 15:49 ` Nicolò Balzarotti [this message]
2019-12-15 21:43 ` [bug#38546] [PATCH 1/3] gnu: julia: Set to JULIA_LOAD_PATH and JULIA_DEPOT_PATH variables Ludovic Courtès
2019-10-10 15:49 ` [bug#38546] [PATCH 2/3] gnu: julia-build-system: Enable tests Nicolò Balzarotti
2019-12-15 21:45 ` Ludovic Courtès
2019-12-12 8:43 ` [bug#38546] [PATCH 01/11] gnu: julia: Update to 1.3.1 nixo
2019-12-15 21:40 ` [bug#38546] [PATCH 0/3] Julia: fix package build and add julia-xyz Ludovic Courtès
2020-01-10 9:25 ` [bug#38546] [PATCH 03/11] gnu: julia: Adjust indentation nixo
2020-01-17 18:40 ` [bug#38546] [PATCH 05/11] gnu: build: julia-build-system: fix package nixo
2020-01-18 12:58 ` [bug#38546] [PATCH 02/11] gnu: julia: use SOURCE_DATE_EPOCH for precompilation timestamp nixo
2020-01-18 13:05 ` [bug#38546] [PATCH 06/11] gnu: Add julia-compat nixo
2020-01-18 13:06 ` [bug#38546] [PATCH 07/11] gnu: Add julia-inifile nixo
2020-01-18 13:07 ` [bug#38546] [PATCH 08/11] gnu: Add julia-sha nixo
2020-01-18 13:07 ` [bug#38546] [PATCH 09/11] gnu: Add julia-binaryprovider nixo
2020-01-18 13:11 ` [bug#38546] [PATCH 10/11] gnu: Add julia-mbedtls nixo
2020-01-18 13:11 ` [bug#38546] [PATCH 11/11] gnu: Add julia-http nixo
2020-01-18 13:23 ` [bug#38546] [PATCH 04/11] use wrapper to set JULIA_LOAD_PATH and JULIA_DEPOT_PATH nixo
2020-01-18 13:32 ` [bug#38546] [Nicolò Balzarotti] [PATCH 00/11] Update julia to 1.3.1, fix precompilation, add HTTP.jl Nicolò Balzarotti
2020-01-18 13:36 ` [bug#38546] [nixo] [PATCH 01/11] gnu: julia: Update to 1.3.1 Nicolò Balzarotti
2020-01-18 13:42 ` [bug#38546] [Nicolò Balzarotti] [PATCH 00/10] Update julia to 1.3.1, fix precompilation, add HTTP.jl Nicolò Balzarotti
2020-01-18 13:59 ` [bug#38546] [00/11] Update Julia, Fix " Nicolò Balzarotti
2020-01-20 18:49 ` zimoun
2020-01-21 13:45 ` Nicolò Balzarotti
2020-01-22 9:22 ` zimoun
2020-01-22 9:59 ` Nicolò Balzarotti
2020-01-24 17:26 ` zimoun
2020-02-04 18:03 ` zimoun
2020-02-07 12:06 ` zimoun
2020-02-11 14:51 ` zimoun
2020-02-11 15:10 ` Nicolò Balzarotti
2020-02-11 15:19 ` zimoun
2020-02-11 15:24 ` Nicolò Balzarotti
2020-01-18 14:35 ` [bug#38546] Julia patches v3 Nicolò Balzarotti
2020-02-11 17:58 ` [bug#38546] [PATCH v4] Update Julia 1.3.1: almost done zimoun
2020-02-24 12:50 ` zimoun
2020-02-24 20:59 ` Nicolò Balzarotti
2020-02-25 16:12 ` zimoun
2020-02-25 18:08 ` Nicolò Balzarotti
2020-02-26 12:32 ` [bug#38546] [PATCH v5] Julia: Update to 1.3.1 Nicolò Balzarotti
2020-03-16 10:06 ` Efraim Flashner
2020-03-17 7:51 ` Nicolò Balzarotti
2020-03-17 8:12 ` Efraim Flashner
2020-03-17 12:21 ` Marius Bakke
2020-03-17 13:37 ` Nicolò Balzarotti
2020-03-19 12:28 ` Marius Bakke
2020-04-06 6:09 ` Efraim Flashner
2020-04-06 8:18 ` Nicolò Balzarotti
2020-04-06 8:37 ` Efraim Flashner
2020-04-06 23:18 ` Nicolò Balzarotti
2020-04-07 5:41 ` Efraim Flashner
2020-04-07 6:05 ` Efraim Flashner
2020-04-07 14:35 ` bug#38546: " Efraim Flashner
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://guix.gnu.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87tv69vbt6.fsf@guixSD.i-did-not-set--mail-host-address--so-tickle-me \
--to=anothersms@gmail.com \
--cc=38546@debbugs.gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/guix.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).