diff options
Diffstat (limited to 'meta/recipes-devtools/elfutils/files/debian/0003-Add-mips-n64-relocation-format-hack.patch')
-rw-r--r-- | meta/recipes-devtools/elfutils/files/debian/0003-Add-mips-n64-relocation-format-hack.patch | 59 |
1 files changed, 30 insertions, 29 deletions
diff --git a/meta/recipes-devtools/elfutils/files/debian/0003-Add-mips-n64-relocation-format-hack.patch b/meta/recipes-devtools/elfutils/files/debian/0003-Add-mips-n64-relocation-format-hack.patch index b196802bc1..17b98a7964 100644 --- a/meta/recipes-devtools/elfutils/files/debian/0003-Add-mips-n64-relocation-format-hack.patch +++ b/meta/recipes-devtools/elfutils/files/debian/0003-Add-mips-n64-relocation-format-hack.patch | |||
@@ -1,7 +1,7 @@ | |||
1 | From 59d4b8c48e5040af7e02b34eb26ea602ec82a38e Mon Sep 17 00:00:00 2001 | 1 | From bce44aece915698a224a8aefa66784b27455675b Mon Sep 17 00:00:00 2001 |
2 | From: James Cowgill <james410@cowgill.org.uk> | 2 | From: James Cowgill <james410@cowgill.org.uk> |
3 | Date: Mon, 5 Jan 2015 15:17:02 +0000 | 3 | Date: Mon, 5 Jan 2015 15:17:02 +0000 |
4 | Subject: [PATCH 3/3] Add mips n64 relocation format hack | 4 | Subject: [PATCH] Add mips n64 relocation format hack |
5 | 5 | ||
6 | MIPSEL N64 ELF files use a slightly different format for storing relocation | 6 | MIPSEL N64 ELF files use a slightly different format for storing relocation |
7 | entries which is incompatible with the normal R_SYM / R_INFO macros. | 7 | entries which is incompatible with the normal R_SYM / R_INFO macros. |
@@ -14,6 +14,7 @@ before manipulating relocations so that these changes take effect. | |||
14 | Signed-off-by: James Cowgill <james410@cowgill.org.uk> | 14 | Signed-off-by: James Cowgill <james410@cowgill.org.uk> |
15 | Upstream-Status: Pending [from debian] | 15 | Upstream-Status: Pending [from debian] |
16 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | 16 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> |
17 | |||
17 | --- | 18 | --- |
18 | libelf/gelf_getrel.c | 25 +++++++++++++++++++++++-- | 19 | libelf/gelf_getrel.c | 25 +++++++++++++++++++++++-- |
19 | libelf/gelf_getrela.c | 25 +++++++++++++++++++++++-- | 20 | libelf/gelf_getrela.c | 25 +++++++++++++++++++++++-- |
@@ -22,10 +23,10 @@ Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | |||
22 | src/strip.c | 17 +++++++++++++++++ | 23 | src/strip.c | 17 +++++++++++++++++ |
23 | 5 files changed, 101 insertions(+), 6 deletions(-) | 24 | 5 files changed, 101 insertions(+), 6 deletions(-) |
24 | 25 | ||
25 | Index: elfutils-0.175/libelf/gelf_getrel.c | 26 | diff --git a/libelf/gelf_getrel.c b/libelf/gelf_getrel.c |
26 | =================================================================== | 27 | index 309e3d3..2a81a97 100644 |
27 | --- elfutils-0.175.orig/libelf/gelf_getrel.c | 28 | --- a/libelf/gelf_getrel.c |
28 | +++ elfutils-0.175/libelf/gelf_getrel.c | 29 | +++ b/libelf/gelf_getrel.c |
29 | @@ -36,6 +36,7 @@ | 30 | @@ -36,6 +36,7 @@ |
30 | 31 | ||
31 | #include "libelfP.h" | 32 | #include "libelfP.h" |
@@ -34,7 +35,7 @@ Index: elfutils-0.175/libelf/gelf_getrel.c | |||
34 | 35 | ||
35 | GElf_Rel * | 36 | GElf_Rel * |
36 | gelf_getrel (Elf_Data *data, int ndx, GElf_Rel *dst) | 37 | gelf_getrel (Elf_Data *data, int ndx, GElf_Rel *dst) |
37 | @@ -89,8 +90,28 @@ gelf_getrel (Elf_Data *data, int ndx, GE | 38 | @@ -89,8 +90,28 @@ gelf_getrel (Elf_Data *data, int ndx, GElf_Rel *dst) |
38 | result = NULL; | 39 | result = NULL; |
39 | } | 40 | } |
40 | else | 41 | else |
@@ -65,10 +66,10 @@ Index: elfutils-0.175/libelf/gelf_getrel.c | |||
65 | } | 66 | } |
66 | 67 | ||
67 | rwlock_unlock (scn->elf->lock); | 68 | rwlock_unlock (scn->elf->lock); |
68 | Index: elfutils-0.175/libelf/gelf_getrela.c | 69 | diff --git a/libelf/gelf_getrela.c b/libelf/gelf_getrela.c |
69 | =================================================================== | 70 | index d695f65..1f42a80 100644 |
70 | --- elfutils-0.175.orig/libelf/gelf_getrela.c | 71 | --- a/libelf/gelf_getrela.c |
71 | +++ elfutils-0.175/libelf/gelf_getrela.c | 72 | +++ b/libelf/gelf_getrela.c |
72 | @@ -36,6 +36,7 @@ | 73 | @@ -36,6 +36,7 @@ |
73 | 74 | ||
74 | #include "libelfP.h" | 75 | #include "libelfP.h" |
@@ -77,7 +78,7 @@ Index: elfutils-0.175/libelf/gelf_getrela.c | |||
77 | 78 | ||
78 | GElf_Rela * | 79 | GElf_Rela * |
79 | gelf_getrela (Elf_Data *data, int ndx, GElf_Rela *dst) | 80 | gelf_getrela (Elf_Data *data, int ndx, GElf_Rela *dst) |
80 | @@ -90,8 +91,28 @@ gelf_getrela (Elf_Data *data, int ndx, G | 81 | @@ -90,8 +91,28 @@ gelf_getrela (Elf_Data *data, int ndx, GElf_Rela *dst) |
81 | result = NULL; | 82 | result = NULL; |
82 | } | 83 | } |
83 | else | 84 | else |
@@ -108,10 +109,10 @@ Index: elfutils-0.175/libelf/gelf_getrela.c | |||
108 | } | 109 | } |
109 | 110 | ||
110 | rwlock_unlock (scn->elf->lock); | 111 | rwlock_unlock (scn->elf->lock); |
111 | Index: elfutils-0.175/libelf/gelf_update_rel.c | 112 | diff --git a/libelf/gelf_update_rel.c b/libelf/gelf_update_rel.c |
112 | =================================================================== | 113 | index 14f62e9..9095556 100644 |
113 | --- elfutils-0.175.orig/libelf/gelf_update_rel.c | 114 | --- a/libelf/gelf_update_rel.c |
114 | +++ elfutils-0.175/libelf/gelf_update_rel.c | 115 | +++ b/libelf/gelf_update_rel.c |
115 | @@ -36,6 +36,7 @@ | 116 | @@ -36,6 +36,7 @@ |
116 | 117 | ||
117 | #include "libelfP.h" | 118 | #include "libelfP.h" |
@@ -120,7 +121,7 @@ Index: elfutils-0.175/libelf/gelf_update_rel.c | |||
120 | 121 | ||
121 | int | 122 | int |
122 | gelf_update_rel (Elf_Data *dst, int ndx, GElf_Rel *src) | 123 | gelf_update_rel (Elf_Data *dst, int ndx, GElf_Rel *src) |
123 | @@ -86,6 +87,9 @@ gelf_update_rel (Elf_Data *dst, int ndx, | 124 | @@ -86,6 +87,9 @@ gelf_update_rel (Elf_Data *dst, int ndx, GElf_Rel *src) |
124 | } | 125 | } |
125 | else | 126 | else |
126 | { | 127 | { |
@@ -130,7 +131,7 @@ Index: elfutils-0.175/libelf/gelf_update_rel.c | |||
130 | /* Check whether we have to resize the data buffer. */ | 131 | /* Check whether we have to resize the data buffer. */ |
131 | if (INVALID_NDX (ndx, Elf64_Rel, &data_scn->d)) | 132 | if (INVALID_NDX (ndx, Elf64_Rel, &data_scn->d)) |
132 | { | 133 | { |
133 | @@ -93,7 +97,21 @@ gelf_update_rel (Elf_Data *dst, int ndx, | 134 | @@ -93,7 +97,21 @@ gelf_update_rel (Elf_Data *dst, int ndx, GElf_Rel *src) |
134 | goto out; | 135 | goto out; |
135 | } | 136 | } |
136 | 137 | ||
@@ -153,10 +154,10 @@ Index: elfutils-0.175/libelf/gelf_update_rel.c | |||
153 | } | 154 | } |
154 | 155 | ||
155 | result = 1; | 156 | result = 1; |
156 | Index: elfutils-0.175/libelf/gelf_update_rela.c | 157 | diff --git a/libelf/gelf_update_rela.c b/libelf/gelf_update_rela.c |
157 | =================================================================== | 158 | index 8825270..4caa85f 100644 |
158 | --- elfutils-0.175.orig/libelf/gelf_update_rela.c | 159 | --- a/libelf/gelf_update_rela.c |
159 | +++ elfutils-0.175/libelf/gelf_update_rela.c | 160 | +++ b/libelf/gelf_update_rela.c |
160 | @@ -36,6 +36,7 @@ | 161 | @@ -36,6 +36,7 @@ |
161 | 162 | ||
162 | #include "libelfP.h" | 163 | #include "libelfP.h" |
@@ -165,7 +166,7 @@ Index: elfutils-0.175/libelf/gelf_update_rela.c | |||
165 | 166 | ||
166 | int | 167 | int |
167 | gelf_update_rela (Elf_Data *dst, int ndx, GElf_Rela *src) | 168 | gelf_update_rela (Elf_Data *dst, int ndx, GElf_Rela *src) |
168 | @@ -89,6 +90,9 @@ gelf_update_rela (Elf_Data *dst, int ndx | 169 | @@ -89,6 +90,9 @@ gelf_update_rela (Elf_Data *dst, int ndx, GElf_Rela *src) |
169 | } | 170 | } |
170 | else | 171 | else |
171 | { | 172 | { |
@@ -175,7 +176,7 @@ Index: elfutils-0.175/libelf/gelf_update_rela.c | |||
175 | /* Check whether we have to resize the data buffer. */ | 176 | /* Check whether we have to resize the data buffer. */ |
176 | if (INVALID_NDX (ndx, Elf64_Rela, &data_scn->d)) | 177 | if (INVALID_NDX (ndx, Elf64_Rela, &data_scn->d)) |
177 | { | 178 | { |
178 | @@ -96,7 +100,21 @@ gelf_update_rela (Elf_Data *dst, int ndx | 179 | @@ -96,7 +100,21 @@ gelf_update_rela (Elf_Data *dst, int ndx, GElf_Rela *src) |
179 | goto out; | 180 | goto out; |
180 | } | 181 | } |
181 | 182 | ||
@@ -198,11 +199,11 @@ Index: elfutils-0.175/libelf/gelf_update_rela.c | |||
198 | } | 199 | } |
199 | 200 | ||
200 | result = 1; | 201 | result = 1; |
201 | Index: elfutils-0.175/src/strip.c | 202 | diff --git a/src/strip.c b/src/strip.c |
202 | =================================================================== | 203 | index a73009d..75bd7ba 100644 |
203 | --- elfutils-0.175.orig/src/strip.c | 204 | --- a/src/strip.c |
204 | +++ elfutils-0.175/src/strip.c | 205 | +++ b/src/strip.c |
205 | @@ -1062,6 +1062,23 @@ handle_elf (int fd, Elf *elf, const char | 206 | @@ -1062,6 +1062,23 @@ handle_elf (int fd, Elf *elf, const char *prefix, const char *fname, |
206 | goto fail; | 207 | goto fail; |
207 | } | 208 | } |
208 | 209 | ||