summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/gcc
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2017-06-28 00:28:47 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-07-11 15:57:08 +0100
commitfee85d51a8055a8989a94adbc606f8eadf5f585c (patch)
tree956f4f3ba68a5d97ad3b342b83f316a0f0c365d9 /meta/recipes-devtools/gcc
parent8cf90598628039f6912cc44420b29af9c9cec6c3 (diff)
downloadpoky-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>
Diffstat (limited to 'meta/recipes-devtools/gcc')
-rw-r--r--meta/recipes-devtools/gcc/gcc-7.1.inc1
-rw-r--r--meta/recipes-devtools/gcc/gcc-7.1/0050-replace-struct-ucontext-with-ucontext_t.patch149
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"
79BACKPORTS = "\ 80BACKPORTS = "\
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 @@
1From 7b3cb36ab07d0c36b500bb5d0548b190d4b5a9f6 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Wed, 28 Jun 2017 00:25:57 -0700
4Subject: [PATCH 50/50] replace struct ucontext with ucontext_t
5
6Upstream-Status: Pending
7
8Signed-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
21diff --git a/libgcc/config/aarch64/linux-unwind.h b/libgcc/config/aarch64/linux-unwind.h
22index 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_;
34diff --git a/libgcc/config/alpha/linux-unwind.h b/libgcc/config/alpha/linux-unwind.h
35index 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 }
47diff --git a/libgcc/config/bfin/linux-unwind.h b/libgcc/config/bfin/linux-unwind.h
48index 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.
60diff --git a/libgcc/config/i386/linux-unwind.h b/libgcc/config/i386/linux-unwind.h
61index 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
82diff --git a/libgcc/config/pa/linux-unwind.h b/libgcc/config/pa/linux-unwind.h
83index 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:
95diff --git a/libgcc/config/riscv/linux-unwind.h b/libgcc/config/riscv/linux-unwind.h
96index 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_;
108diff --git a/libgcc/config/sh/linux-unwind.h b/libgcc/config/sh/linux-unwind.h
109index 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
121diff --git a/libgcc/config/tilepro/linux-unwind.h b/libgcc/config/tilepro/linux-unwind.h
122index 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. */
134diff --git a/libgcc/config/xtensa/linux-unwind.h b/libgcc/config/xtensa/linux-unwind.h
135index 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--
1482.13.2
149