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 | |||
