diff options
author | Khem Raj <raj.khem@gmail.com> | 2017-06-28 00:28:47 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2017-07-11 15:57:08 +0100 |
commit | fee85d51a8055a8989a94adbc606f8eadf5f585c (patch) | |
tree | 956f4f3ba68a5d97ad3b342b83f316a0f0c365d9 | |
parent | 8cf90598628039f6912cc44420b29af9c9cec6c3 (diff) | |
download | poky-fee85d51a8055a8989a94adbc606f8eadf5f585c.tar.gz |
gcc: Use ucontext_t instead of ucontext
glibc 2.26 does not expose struct ucontext anymore
(From OE-Core rev: d70b9705b7997786bc95cf6e70c172470db3413c)
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>
-rw-r--r-- | meta/recipes-devtools/gcc/gcc-7.1.inc | 1 | ||||
-rw-r--r-- | meta/recipes-devtools/gcc/gcc-7.1/0050-replace-struct-ucontext-with-ucontext_t.patch | 149 |
2 files changed, 150 insertions, 0 deletions
diff --git a/meta/recipes-devtools/gcc/gcc-7.1.inc b/meta/recipes-devtools/gcc/gcc-7.1.inc index f30a73c31c..3f1c06dafd 100644 --- a/meta/recipes-devtools/gcc/gcc-7.1.inc +++ b/meta/recipes-devtools/gcc/gcc-7.1.inc | |||
@@ -74,6 +74,7 @@ SRC_URI = "\ | |||
74 | file://0047-sync-gcc-stddef.h-with-musl.patch \ | 74 | file://0047-sync-gcc-stddef.h-with-musl.patch \ |
75 | file://0048-gcc-Enable-static-PIE.patch \ | 75 | file://0048-gcc-Enable-static-PIE.patch \ |
76 | file://0049-libsanitizer-Use-stack_t-instead-of-struct-sigaltsta.patch \ | 76 | file://0049-libsanitizer-Use-stack_t-instead-of-struct-sigaltsta.patch \ |
77 | file://0050-replace-struct-ucontext-with-ucontext_t.patch \ | ||
77 | ${BACKPORTS} \ | 78 | ${BACKPORTS} \ |
78 | " | 79 | " |
79 | BACKPORTS = "\ | 80 | BACKPORTS = "\ |
diff --git a/meta/recipes-devtools/gcc/gcc-7.1/0050-replace-struct-ucontext-with-ucontext_t.patch b/meta/recipes-devtools/gcc/gcc-7.1/0050-replace-struct-ucontext-with-ucontext_t.patch new file mode 100644 index 0000000000..e814992e44 --- /dev/null +++ b/meta/recipes-devtools/gcc/gcc-7.1/0050-replace-struct-ucontext-with-ucontext_t.patch | |||
@@ -0,0 +1,149 @@ | |||
1 | From 7b3cb36ab07d0c36b500bb5d0548b190d4b5a9f6 Mon Sep 17 00:00:00 2001 | ||
2 | From: Khem Raj <raj.khem@gmail.com> | ||
3 | Date: Wed, 28 Jun 2017 00:25:57 -0700 | ||
4 | Subject: [PATCH 50/50] replace struct ucontext with ucontext_t | ||
5 | |||
6 | Upstream-Status: Pending | ||
7 | |||
8 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
9 | --- | ||
10 | libgcc/config/aarch64/linux-unwind.h | 2 +- | ||
11 | libgcc/config/alpha/linux-unwind.h | 2 +- | ||
12 | libgcc/config/bfin/linux-unwind.h | 2 +- | ||
13 | libgcc/config/i386/linux-unwind.h | 4 ++-- | ||
14 | libgcc/config/pa/linux-unwind.h | 2 +- | ||
15 | libgcc/config/riscv/linux-unwind.h | 2 +- | ||
16 | libgcc/config/sh/linux-unwind.h | 2 +- | ||
17 | libgcc/config/tilepro/linux-unwind.h | 2 +- | ||
18 | libgcc/config/xtensa/linux-unwind.h | 2 +- | ||
19 | 9 files changed, 10 insertions(+), 10 deletions(-) | ||
20 | |||
21 | diff --git a/libgcc/config/aarch64/linux-unwind.h b/libgcc/config/aarch64/linux-unwind.h | ||
22 | index d5d6980442f..d46d5f53be3 100644 | ||
23 | --- a/libgcc/config/aarch64/linux-unwind.h | ||
24 | +++ b/libgcc/config/aarch64/linux-unwind.h | ||
25 | @@ -55,7 +55,7 @@ aarch64_fallback_frame_state (struct _Unwind_Context *context, | ||
26 | struct rt_sigframe | ||
27 | { | ||
28 | siginfo_t info; | ||
29 | - struct ucontext uc; | ||
30 | + ucontext_t uc; | ||
31 | }; | ||
32 | |||
33 | struct rt_sigframe *rt_; | ||
34 | diff --git a/libgcc/config/alpha/linux-unwind.h b/libgcc/config/alpha/linux-unwind.h | ||
35 | index a91a5f4fe26..7202516581d 100644 | ||
36 | --- a/libgcc/config/alpha/linux-unwind.h | ||
37 | +++ b/libgcc/config/alpha/linux-unwind.h | ||
38 | @@ -51,7 +51,7 @@ alpha_fallback_frame_state (struct _Unwind_Context *context, | ||
39 | { | ||
40 | struct rt_sigframe { | ||
41 | siginfo_t info; | ||
42 | - struct ucontext uc; | ||
43 | + ucontext_t uc; | ||
44 | } *rt_ = context->cfa; | ||
45 | sc = &rt_->uc.uc_mcontext; | ||
46 | } | ||
47 | diff --git a/libgcc/config/bfin/linux-unwind.h b/libgcc/config/bfin/linux-unwind.h | ||
48 | index 9412c7652b8..37e9feb6965 100644 | ||
49 | --- a/libgcc/config/bfin/linux-unwind.h | ||
50 | +++ b/libgcc/config/bfin/linux-unwind.h | ||
51 | @@ -52,7 +52,7 @@ bfin_fallback_frame_state (struct _Unwind_Context *context, | ||
52 | void *puc; | ||
53 | char retcode[8]; | ||
54 | siginfo_t info; | ||
55 | - struct ucontext uc; | ||
56 | + ucontext_t uc; | ||
57 | } *rt_ = context->cfa; | ||
58 | |||
59 | /* The void * cast is necessary to avoid an aliasing warning. | ||
60 | diff --git a/libgcc/config/i386/linux-unwind.h b/libgcc/config/i386/linux-unwind.h | ||
61 | index b1d5040a687..2009ad72260 100644 | ||
62 | --- a/libgcc/config/i386/linux-unwind.h | ||
63 | +++ b/libgcc/config/i386/linux-unwind.h | ||
64 | @@ -58,7 +58,7 @@ x86_64_fallback_frame_state (struct _Unwind_Context *context, | ||
65 | if (*(unsigned char *)(pc+0) == 0x48 | ||
66 | && *(unsigned long long *)(pc+1) == RT_SIGRETURN_SYSCALL) | ||
67 | { | ||
68 | - struct ucontext *uc_ = context->cfa; | ||
69 | + ucontext_t *uc_ = context->cfa; | ||
70 | /* The void * cast is necessary to avoid an aliasing warning. | ||
71 | The aliasing warning is correct, but should not be a problem | ||
72 | because it does not alias anything. */ | ||
73 | @@ -138,7 +138,7 @@ x86_fallback_frame_state (struct _Unwind_Context *context, | ||
74 | siginfo_t *pinfo; | ||
75 | void *puc; | ||
76 | siginfo_t info; | ||
77 | - struct ucontext uc; | ||
78 | + ucontext_t uc; | ||
79 | } *rt_ = context->cfa; | ||
80 | /* The void * cast is necessary to avoid an aliasing warning. | ||
81 | The aliasing warning is correct, but should not be a problem | ||
82 | diff --git a/libgcc/config/pa/linux-unwind.h b/libgcc/config/pa/linux-unwind.h | ||
83 | index 580c18dad69..c2c3409bcc1 100644 | ||
84 | --- a/libgcc/config/pa/linux-unwind.h | ||
85 | +++ b/libgcc/config/pa/linux-unwind.h | ||
86 | @@ -80,7 +80,7 @@ pa32_fallback_frame_state (struct _Unwind_Context *context, | ||
87 | struct sigcontext *sc; | ||
88 | struct rt_sigframe { | ||
89 | siginfo_t info; | ||
90 | - struct ucontext uc; | ||
91 | + ucontext_t uc; | ||
92 | } *frame; | ||
93 | |||
94 | /* rt_sigreturn trampoline: | ||
95 | diff --git a/libgcc/config/riscv/linux-unwind.h b/libgcc/config/riscv/linux-unwind.h | ||
96 | index a051a2869d4..1c8aeff7ef0 100644 | ||
97 | --- a/libgcc/config/riscv/linux-unwind.h | ||
98 | +++ b/libgcc/config/riscv/linux-unwind.h | ||
99 | @@ -42,7 +42,7 @@ riscv_fallback_frame_state (struct _Unwind_Context *context, | ||
100 | struct rt_sigframe | ||
101 | { | ||
102 | siginfo_t info; | ||
103 | - struct ucontext uc; | ||
104 | + ucontext_t uc; | ||
105 | }; | ||
106 | |||
107 | struct rt_sigframe *rt_; | ||
108 | diff --git a/libgcc/config/sh/linux-unwind.h b/libgcc/config/sh/linux-unwind.h | ||
109 | index 1038caeb5c3..a8c98220282 100644 | ||
110 | --- a/libgcc/config/sh/linux-unwind.h | ||
111 | +++ b/libgcc/config/sh/linux-unwind.h | ||
112 | @@ -82,7 +82,7 @@ sh_fallback_frame_state (struct _Unwind_Context *context, | ||
113 | { | ||
114 | struct rt_sigframe { | ||
115 | siginfo_t info; | ||
116 | - struct ucontext uc; | ||
117 | + ucontext_t uc; | ||
118 | } *rt_ = context->cfa; | ||
119 | /* The void * cast is necessary to avoid an aliasing warning. | ||
120 | The aliasing warning is correct, but should not be a problem | ||
121 | diff --git a/libgcc/config/tilepro/linux-unwind.h b/libgcc/config/tilepro/linux-unwind.h | ||
122 | index a8dc4405715..dba3b410279 100644 | ||
123 | --- a/libgcc/config/tilepro/linux-unwind.h | ||
124 | +++ b/libgcc/config/tilepro/linux-unwind.h | ||
125 | @@ -61,7 +61,7 @@ tile_fallback_frame_state (struct _Unwind_Context *context, | ||
126 | struct rt_sigframe { | ||
127 | unsigned char save_area[C_ABI_SAVE_AREA_SIZE]; | ||
128 | siginfo_t info; | ||
129 | - struct ucontext uc; | ||
130 | + ucontext_t uc; | ||
131 | } *rt_; | ||
132 | |||
133 | /* Return if this is not a signal handler. */ | ||
134 | diff --git a/libgcc/config/xtensa/linux-unwind.h b/libgcc/config/xtensa/linux-unwind.h | ||
135 | index 67c272820d0..b37b8b31bbf 100644 | ||
136 | --- a/libgcc/config/xtensa/linux-unwind.h | ||
137 | +++ b/libgcc/config/xtensa/linux-unwind.h | ||
138 | @@ -67,7 +67,7 @@ xtensa_fallback_frame_state (struct _Unwind_Context *context, | ||
139 | |||
140 | struct rt_sigframe { | ||
141 | siginfo_t info; | ||
142 | - struct ucontext uc; | ||
143 | + struct ucontext_t uc; | ||
144 | } *rt_; | ||
145 | |||
146 | /* movi a2, __NR_rt_sigreturn; syscall */ | ||
147 | -- | ||
148 | 2.13.2 | ||
149 | |||