diff options
author | Khem Raj <raj.khem@gmail.com> | 2019-09-28 16:16:17 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2019-10-02 10:09:47 +0100 |
commit | 24bf7524597c2582637569d9b776b4fb722fd188 (patch) | |
tree | 7e1ac5f1042ddcfd4699abea422117dde62308e9 /meta/recipes-core/musl | |
parent | 4d9157099bc5b03847f26dccad857ebaaf099a19 (diff) | |
download | poky-24bf7524597c2582637569d9b776b4fb722fd188.tar.gz |
musl: Fix __riscv_mc* containers to match glibc
Fixes packages like gdb compile
(From OE-Core rev: 6792307a41c71786841f8fa6224af81be201688e)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-core/musl')
-rw-r--r-- | meta/recipes-core/musl/musl/0001-Change-container-for-riscv-floating-point-state-to-_.patch | 67 | ||||
-rw-r--r-- | meta/recipes-core/musl/musl_git.bb | 1 |
2 files changed, 68 insertions, 0 deletions
diff --git a/meta/recipes-core/musl/musl/0001-Change-container-for-riscv-floating-point-state-to-_.patch b/meta/recipes-core/musl/musl/0001-Change-container-for-riscv-floating-point-state-to-_.patch new file mode 100644 index 0000000000..a9abb18726 --- /dev/null +++ b/meta/recipes-core/musl/musl/0001-Change-container-for-riscv-floating-point-state-to-_.patch | |||
@@ -0,0 +1,67 @@ | |||
1 | From 52a37610650e7366a398dd07393d3902d2f3faa3 Mon Sep 17 00:00:00 2001 | ||
2 | From: Khem Raj <raj.khem@gmail.com> | ||
3 | Date: Sat, 28 Sep 2019 12:19:57 -0700 | ||
4 | Subject: [PATCH] Change container for riscv floating-point state to __riscv_mc_fp_state | ||
5 | |||
6 | Match the struct elements with glibc | ||
7 | glibc also uses __riscv_mc prefix, some packages like gdb uses that | ||
8 | |||
9 | Upstream-Status: Submitted [https://www.openwall.com/lists/musl/2019/09/28/1] | ||
10 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
11 | --- | ||
12 | arch/riscv64/bits/signal.h | 18 +++++++++--------- | ||
13 | arch/riscv64/bits/user.h | 2 +- | ||
14 | 2 files changed, 10 insertions(+), 10 deletions(-) | ||
15 | |||
16 | diff --git a/arch/riscv64/bits/signal.h b/arch/riscv64/bits/signal.h | ||
17 | index 76d7ad80..aba7ab00 100644 | ||
18 | --- a/arch/riscv64/bits/signal.h | ||
19 | +++ b/arch/riscv64/bits/signal.h | ||
20 | @@ -13,25 +13,25 @@ typedef unsigned long greg_t; | ||
21 | typedef unsigned long gregset_t[32]; | ||
22 | |||
23 | struct __riscv_mc_f_ext_state { | ||
24 | - unsigned int f[32]; | ||
25 | - unsigned int fcsr; | ||
26 | + unsigned int __f[32]; | ||
27 | + unsigned int __fcsr; | ||
28 | }; | ||
29 | |||
30 | struct __riscv_mc_d_ext_state { | ||
31 | - unsigned long long f[32]; | ||
32 | - unsigned int fcsr; | ||
33 | + unsigned long long __f[32]; | ||
34 | + unsigned int __fcsr; | ||
35 | }; | ||
36 | |||
37 | struct __riscv_mc_q_ext_state { | ||
38 | - unsigned long long f[64] __attribute__((aligned(16))); | ||
39 | - unsigned int fcsr; | ||
40 | + unsigned long long __f[64] __attribute__((aligned(16))); | ||
41 | + unsigned int __fcsr; | ||
42 | unsigned int reserved[3]; | ||
43 | }; | ||
44 | |||
45 | union __riscv_mc_fp_state { | ||
46 | - struct __riscv_mc_f_ext_state f; | ||
47 | - struct __riscv_mc_d_ext_state d; | ||
48 | - struct __riscv_mc_q_ext_state q; | ||
49 | + struct __riscv_mc_f_ext_state __f; | ||
50 | + struct __riscv_mc_d_ext_state __d; | ||
51 | + struct __riscv_mc_q_ext_state __q; | ||
52 | }; | ||
53 | |||
54 | typedef union __riscv_mc_fp_state fpregset_t; | ||
55 | diff --git a/arch/riscv64/bits/user.h b/arch/riscv64/bits/user.h | ||
56 | index d2e383b2..9918a2fe 100644 | ||
57 | --- a/arch/riscv64/bits/user.h | ||
58 | +++ b/arch/riscv64/bits/user.h | ||
59 | @@ -5,4 +5,4 @@ struct user_fpregs_struct { | ||
60 | |||
61 | #define ELF_NGREG 32 | ||
62 | typedef unsigned long elf_greg_t, elf_gregset_t[ELF_NGREG]; | ||
63 | -typedef struct user_fpregs_struct elf_fpregset_t; | ||
64 | +typedef union __riscv_mc_fp_state elf_fpregset_t; | ||
65 | -- | ||
66 | 2.23.0 | ||
67 | |||
diff --git a/meta/recipes-core/musl/musl_git.bb b/meta/recipes-core/musl/musl_git.bb index 335d53d42f..13fd17353d 100644 --- a/meta/recipes-core/musl/musl_git.bb +++ b/meta/recipes-core/musl/musl_git.bb | |||
@@ -16,6 +16,7 @@ SRC_URI = "git://git.musl-libc.org/musl \ | |||
16 | file://0001-Make-dynamic-linker-a-relative-symlink-to-libc.patch \ | 16 | file://0001-Make-dynamic-linker-a-relative-symlink-to-libc.patch \ |
17 | file://0002-ldso-Use-syslibdir-and-libdir-as-default-pathes-to-l.patch \ | 17 | file://0002-ldso-Use-syslibdir-and-libdir-as-default-pathes-to-l.patch \ |
18 | file://0001-correct-the-operand-specifiers-in-the-riscv64-CAS-ro.patch \ | 18 | file://0001-correct-the-operand-specifiers-in-the-riscv64-CAS-ro.patch \ |
19 | file://0001-Change-container-for-riscv-floating-point-state-to-_.patch \ | ||
19 | " | 20 | " |
20 | 21 | ||
21 | S = "${WORKDIR}/git" | 22 | S = "${WORKDIR}/git" |