GNU bug report logs -
#52186
[core-updates-frozen] [PATCH] gnu: libunwind-julia: Fix build on i686-linux.
Previous Next
Reported by: zimoun <zimon.toutoune <at> gmail.com>
Date: Mon, 29 Nov 2021 18:22:02 UTC
Severity: normal
Tags: patch
Done: Efraim Flashner <efraim <at> flashner.co.il>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your bug report
#52186: [core-updates-frozen] [PATCH] gnu: libunwind-julia: Fix build on i686-linux.
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 52186 <at> debbugs.gnu.org.
--
52186: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=52186
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
[Message part 3 (text/plain, inline)]
On Wed, Dec 01, 2021 at 04:52:56PM +0100, zimoun wrote:
> Hi,
>
> This series allow the julia package itself to build on i686-linux. Then, it
> fixes julia-* packages for i686-linux. Note that julia and julia-* are
> currently broken on master for i686-linux.
>
> Both julia and julia-* are not impacted on x86_64 by these changes.
>
> These packages are still broken…
>
> /gnu/store/h97dzpkn7h4fxhl8xag8s7cfypg1l96d-julia-sundials-jll-5.2.1+0.drv
> /gnu/store/q489ygk7y0y3xxcyi1c72c9lwrvgkfvd-sundials-julia-5.2.0.drv
> /gnu/store/7g5443kq028lv44f0kdj5p14w5xcx9c4-julia-pyplot-2.10.0.drv
> /gnu/store/iy5liqrkdlvvx6bmiczxxi5zmyj4999v-julia-pycall-1.92.5.drv
> /gnu/store/x2na68r5qbyhnilmqpi50sr3iwf9y2fd-julia-gr-0.58.1.drv
>
> …but, IMHO, they can wait another round. Only pycall (so pyplot) and gr are
> failing on core-updates-frozen only. The 2 other (sundials) are currently
> broken on master.
>
>
> Cheers,
> simon
>
I made a couple of changes, mostly to use target-x86-32? and
target-64bit?. Patches pushed! Thanks.
--
Efraim Flashner <efraim <at> flashner.co.il> רנשלפ םירפא
GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
[signature.asc (application/pgp-signature, inline)]
[Message part 5 (message/rfc822, inline)]
* gnu/packages/julia.scm (libunwind)[origin]<patches>: Add patch.
* gnu/packages/patches/libunwind-julia-fix-GCC10-fno-common.patch: New file.
* gnu/local/mk (dist_patch_DATA): Register it.
---
gnu/local.mk | 1 +
gnu/packages/julia.scm | 18 +++++----
...libunwind-julia-fix-GCC10-fno-common.patch | 40 +++++++++++++++++++
3 files changed, 52 insertions(+), 7 deletions(-)
create mode 100644 gnu/packages/patches/libunwind-julia-fix-GCC10-fno-common.patch
diff --git a/gnu/local.mk b/gnu/local.mk
index 604c6cf151..6e71ad404e 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1386,6 +1386,7 @@ dist_patch_DATA = \
%D%/packages/patches/libtirpc-hurd.patch \
%D%/packages/patches/libtommath-fix-linkage.patch \
%D%/packages/patches/libtool-skip-tests2.patch \
+ %D%/packages/patches/libunwind-julia-fix-GCC10-fno-common.patch \
%D%/packages/patches/libusb-0.1-disable-tests.patch \
%D%/packages/patches/libusb-for-axoloti.patch \
%D%/packages/patches/libutils-add-includes.patch \
diff --git a/gnu/packages/julia.scm b/gnu/packages/julia.scm
index 83aa8b1099..17f4a9a169 100644
--- a/gnu/packages/julia.scm
+++ b/gnu/packages/julia.scm
@@ -71,13 +71,17 @@ (define libunwind-julia
(base32
"1y0l08k6ak1mqbfj6accf9s5686kljwgsl4vcqpxzk5n74wpm6a3"))
(patches
- (list
- (julia-patch "libunwind-prefer-extbl"
- "0lr4dafw8qyfh8sw8hhbwkql1dlhqv8px7k81y2l20hhxfgnh2m1")
- (julia-patch "libunwind-static-arm"
- "1jk3bmiw61ypcchqkk1fyg5wh8wpggk574wxyfyaic870zh3lhgq")
- (julia-patch "libunwind-cfa-rsp"
- "1aswjhvysahhldbzh1afbf0hsjxrvs6xidsz2i7s1cjkjbdiia1z")))))
+ (append
+ ;; Fix linker issue for i686-linux because GCC10 changed default
+ ;; (see '-fno-common' option).
+ (search-patches "libunwind-julia-fix-GCC10-fno-common.patch")
+ (list
+ (julia-patch "libunwind-prefer-extbl"
+ "0lr4dafw8qyfh8sw8hhbwkql1dlhqv8px7k81y2l20hhxfgnh2m1")
+ (julia-patch "libunwind-static-arm"
+ "1jk3bmiw61ypcchqkk1fyg5wh8wpggk574wxyfyaic870zh3lhgq")
+ (julia-patch "libunwind-cfa-rsp"
+ "1aswjhvysahhldbzh1afbf0hsjxrvs6xidsz2i7s1cjkjbdiia1z"))))))
(home-page "https://github.com/JuliaLang/tree/master/deps/")))
(define (julia-patch-url version name)
diff --git a/gnu/packages/patches/libunwind-julia-fix-GCC10-fno-common.patch b/gnu/packages/patches/libunwind-julia-fix-GCC10-fno-common.patch
new file mode 100644
index 0000000000..8ef4b111e4
--- /dev/null
+++ b/gnu/packages/patches/libunwind-julia-fix-GCC10-fno-common.patch
@@ -0,0 +1,40 @@
+Fix compilation with -fno-common.
+
+Borrowed from upstream 29e17d8d2ccbca07c423e3089a6d5ae8a1c9cb6e.
+Author: Yichao Yu <yyc1992 <at> gmail.com>
+AuthorDate: Tue Mar 31 00:43:32 2020 -0400
+Commit: Dave Watson <dade.watson <at> gmail.com>
+CommitDate: Tue Mar 31 08:06:29 2020 -0700
+
+diff --git a/src/x86/Ginit.c b/src/x86/Ginit.c
+index f6b8dc2..9550efa 100644
+--- a/src/x86/Ginit.c
++++ b/src/x86/Ginit.c
+@@ -54,13 +54,6 @@ tdep_uc_addr (ucontext_t *uc, int reg)
+
+ # endif /* UNW_LOCAL_ONLY */
+
+-HIDDEN unw_dyn_info_list_t _U_dyn_info_list;
+-
+-/* XXX fix me: there is currently no way to locate the dyn-info list
+- by a remote unwinder. On ia64, this is done via a special
+- unwind-table entry. Perhaps something similar can be done with
+- DWARF2 unwind info. */
+-
+ static void
+ put_unwind_info (unw_addr_space_t as, unw_proc_info_t *proc_info, void *arg)
+ {
+@@ -71,7 +64,12 @@ static int
+ get_dyn_info_list_addr (unw_addr_space_t as, unw_word_t *dyn_info_list_addr,
+ void *arg)
+ {
+- *dyn_info_list_addr = (unw_word_t) &_U_dyn_info_list;
++#ifndef UNW_LOCAL_ONLY
++# pragma weak _U_dyn_info_list_addr
++ if (!_U_dyn_info_list_addr)
++ return -UNW_ENOINFO;
++#endif
++ *dyn_info_list_addr = _U_dyn_info_list_addr ();
+ return 0;
+ }
+
base-commit: f22dfba53032c59fb260173143abf0e4e9a4f1e1
--
2.32.0
This bug report was last modified 3 years and 170 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.