diff options
Diffstat (limited to 'meta/recipes-devtools/elfutils/files/debian')
14 files changed, 525 insertions, 265 deletions
diff --git a/meta/recipes-devtools/elfutils/files/debian/0001-Ignore-differences-between-mips-machine-identifiers.patch b/meta/recipes-devtools/elfutils/files/debian/0001-Ignore-differences-between-mips-machine-identifiers.patch index e0291b4cf3..a9a7210031 100644 --- a/meta/recipes-devtools/elfutils/files/debian/0001-Ignore-differences-between-mips-machine-identifiers.patch +++ b/meta/recipes-devtools/elfutils/files/debian/0001-Ignore-differences-between-mips-machine-identifiers.patch | |||
@@ -8,10 +8,6 @@ from the elf machine id. Also, the EM_MIPS_RS3_LE machine is dead anyway (the | |||
8 | kernel will not load binaries containing it). | 8 | kernel will not load binaries containing it). |
9 | 9 | ||
10 | Signed-off-by: James Cowgill <james410@cowgill.org.uk> | 10 | Signed-off-by: James Cowgill <james410@cowgill.org.uk> |
11 | |||
12 | Upstream-Status: Backport [from debian] | ||
13 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | ||
14 | |||
15 | --- | 11 | --- |
16 | backends/mips_init.c | 6 +----- | 12 | backends/mips_init.c | 6 +----- |
17 | 1 file changed, 1 insertion(+), 5 deletions(-) | 13 | 1 file changed, 1 insertion(+), 5 deletions(-) |
diff --git a/meta/recipes-devtools/elfutils/files/debian/arm_backend.diff b/meta/recipes-devtools/elfutils/files/debian/0001-arm_backend.patch index 50f4b059e3..540ba95e0e 100644 --- a/meta/recipes-devtools/elfutils/files/debian/arm_backend.diff +++ b/meta/recipes-devtools/elfutils/files/debian/0001-arm_backend.patch | |||
@@ -1,8 +1,28 @@ | |||
1 | Upstream-Status: Backport [from debian] | 1 | From a95f370bc2690c150c46f215543de278469900eb Mon Sep 17 00:00:00 2001 |
2 | From: Hongxu Jia <hongxu.jia@windriver.com> | ||
3 | Date: Fri, 29 Jun 2018 15:42:39 +0800 | ||
4 | Subject: [PATCH] arm_backend | ||
5 | |||
6 | Upstream-Status: Backport from debian | ||
7 | arm_backend.diff and rebase to 0.172 | ||
8 | |||
9 | http://ftp.de.debian.org/debian/pool/main/e/elfutils/elfutils_0.170-0.5.debian.tar.xz | ||
10 | |||
2 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | 11 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> |
12 | --- | ||
13 | backends/arm_init.c | 18 ++++- | ||
14 | backends/arm_regs.c | 132 ++++++++++++++++++++++++++++++++++++ | ||
15 | backends/arm_retval.c | 43 +++++++++++- | ||
16 | backends/libebl_arm.h | 9 +++ | ||
17 | libelf/elf.h | 11 +++ | ||
18 | tests/run-addrcfi.sh | 93 ++++++++++++++++++++++++- | ||
19 | tests/run-allregs.sh | 95 +++++++++++++++++++++++++- | ||
20 | tests/run-readelf-mixed-corenote.sh | 11 ++- | ||
21 | 8 files changed, 400 insertions(+), 12 deletions(-) | ||
22 | create mode 100644 backends/libebl_arm.h | ||
3 | 23 | ||
4 | Index: b/backends/arm_init.c | 24 | diff --git a/backends/arm_init.c b/backends/arm_init.c |
5 | =================================================================== | 25 | index f2b1b11..1b71f16 100644 |
6 | --- a/backends/arm_init.c | 26 | --- a/backends/arm_init.c |
7 | +++ b/backends/arm_init.c | 27 | +++ b/backends/arm_init.c |
8 | @@ -35,20 +35,31 @@ | 28 | @@ -35,20 +35,31 @@ |
@@ -38,7 +58,7 @@ Index: b/backends/arm_init.c | |||
38 | /* We handle it. */ | 58 | /* We handle it. */ |
39 | eh->name = "ARM"; | 59 | eh->name = "ARM"; |
40 | arm_init_reloc (eh); | 60 | arm_init_reloc (eh); |
41 | @@ -60,7 +71,10 @@ arm_init (Elf *elf __attribute__ ((unuse | 61 | @@ -60,7 +71,10 @@ arm_init (Elf *elf __attribute__ ((unused)), |
42 | HOOK (eh, core_note); | 62 | HOOK (eh, core_note); |
43 | HOOK (eh, auxv_info); | 63 | HOOK (eh, auxv_info); |
44 | HOOK (eh, check_object_attribute); | 64 | HOOK (eh, check_object_attribute); |
@@ -50,8 +70,8 @@ Index: b/backends/arm_init.c | |||
50 | HOOK (eh, abi_cfi); | 70 | HOOK (eh, abi_cfi); |
51 | HOOK (eh, check_reloc_target_type); | 71 | HOOK (eh, check_reloc_target_type); |
52 | HOOK (eh, symbol_type_name); | 72 | HOOK (eh, symbol_type_name); |
53 | Index: b/backends/arm_regs.c | 73 | diff --git a/backends/arm_regs.c b/backends/arm_regs.c |
54 | =================================================================== | 74 | index a46a4c9..418c931 100644 |
55 | --- a/backends/arm_regs.c | 75 | --- a/backends/arm_regs.c |
56 | +++ b/backends/arm_regs.c | 76 | +++ b/backends/arm_regs.c |
57 | @@ -31,6 +31,7 @@ | 77 | @@ -31,6 +31,7 @@ |
@@ -62,7 +82,7 @@ Index: b/backends/arm_regs.c | |||
62 | #include <dwarf.h> | 82 | #include <dwarf.h> |
63 | 83 | ||
64 | #define BACKEND arm_ | 84 | #define BACKEND arm_ |
65 | @@ -76,6 +77,9 @@ arm_register_info (Ebl *ebl __attribute_ | 85 | @@ -76,6 +77,9 @@ arm_register_info (Ebl *ebl __attribute__ ((unused)), |
66 | break; | 86 | break; |
67 | 87 | ||
68 | case 16 + 0 ... 16 + 7: | 88 | case 16 + 0 ... 16 + 7: |
@@ -70,9 +90,9 @@ Index: b/backends/arm_regs.c | |||
70 | + * but gcc maps FPA registers here | 90 | + * but gcc maps FPA registers here |
71 | + */ | 91 | + */ |
72 | regno += 96 - 16; | 92 | regno += 96 - 16; |
73 | /* Fall through. */ | 93 | FALLTHROUGH; |
74 | case 96 + 0 ... 96 + 7: | 94 | case 96 + 0 ... 96 + 7: |
75 | @@ -87,11 +91,139 @@ arm_register_info (Ebl *ebl __attribute_ | 95 | @@ -87,11 +91,139 @@ arm_register_info (Ebl *ebl __attribute__ ((unused)), |
76 | namelen = 2; | 96 | namelen = 2; |
77 | break; | 97 | break; |
78 | 98 | ||
@@ -212,8 +232,8 @@ Index: b/backends/arm_regs.c | |||
212 | *setname = "VFP"; | 232 | *setname = "VFP"; |
213 | *type = DW_ATE_float; | 233 | *type = DW_ATE_float; |
214 | *bits = 64; | 234 | *bits = 64; |
215 | Index: b/backends/arm_retval.c | 235 | diff --git a/backends/arm_retval.c b/backends/arm_retval.c |
216 | =================================================================== | 236 | index 1c28f01..313e4eb 100644 |
217 | --- a/backends/arm_retval.c | 237 | --- a/backends/arm_retval.c |
218 | +++ b/backends/arm_retval.c | 238 | +++ b/backends/arm_retval.c |
219 | @@ -48,6 +48,13 @@ static const Dwarf_Op loc_intreg[] = | 239 | @@ -48,6 +48,13 @@ static const Dwarf_Op loc_intreg[] = |
@@ -242,7 +262,7 @@ Index: b/backends/arm_retval.c | |||
242 | { | 262 | { |
243 | /* Start with the function's type, and get the DW_AT_type attribute, | 263 | /* Start with the function's type, and get the DW_AT_type attribute, |
244 | which is the type of the return value. */ | 264 | which is the type of the return value. */ |
245 | @@ -98,6 +106,21 @@ arm_return_value_location (Dwarf_Die *fu | 265 | @@ -98,6 +106,21 @@ arm_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp) |
246 | else | 266 | else |
247 | return -1; | 267 | return -1; |
248 | } | 268 | } |
@@ -264,7 +284,7 @@ Index: b/backends/arm_retval.c | |||
264 | if (size <= 16) | 284 | if (size <= 16) |
265 | { | 285 | { |
266 | intreg: | 286 | intreg: |
267 | @@ -106,6 +129,7 @@ arm_return_value_location (Dwarf_Die *fu | 287 | @@ -106,6 +129,7 @@ arm_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp) |
268 | } | 288 | } |
269 | 289 | ||
270 | aggregate: | 290 | aggregate: |
@@ -272,7 +292,7 @@ Index: b/backends/arm_retval.c | |||
272 | *locp = loc_aggregate; | 292 | *locp = loc_aggregate; |
273 | return nloc_aggregate; | 293 | return nloc_aggregate; |
274 | } | 294 | } |
275 | @@ -125,3 +149,18 @@ arm_return_value_location (Dwarf_Die *fu | 295 | @@ -125,3 +149,18 @@ arm_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp) |
276 | DWARF and might be valid. */ | 296 | DWARF and might be valid. */ |
277 | return -2; | 297 | return -2; |
278 | } | 298 | } |
@@ -291,11 +311,26 @@ Index: b/backends/arm_retval.c | |||
291 | + return arm_return_value_location_ (functypedie, locp, 0); | 311 | + return arm_return_value_location_ (functypedie, locp, 0); |
292 | +} | 312 | +} |
293 | + | 313 | + |
294 | Index: b/libelf/elf.h | 314 | diff --git a/backends/libebl_arm.h b/backends/libebl_arm.h |
295 | =================================================================== | 315 | new file mode 100644 |
316 | index 0000000..c00770c | ||
317 | --- /dev/null | ||
318 | +++ b/backends/libebl_arm.h | ||
319 | @@ -0,0 +1,9 @@ | ||
320 | +#ifndef _LIBEBL_ARM_H | ||
321 | +#define _LIBEBL_ARM_H 1 | ||
322 | + | ||
323 | +#include <libdw.h> | ||
324 | + | ||
325 | +extern int arm_return_value_location_soft(Dwarf_Die *, const Dwarf_Op **locp); | ||
326 | +extern int arm_return_value_location_hard(Dwarf_Die *, const Dwarf_Op **locp); | ||
327 | + | ||
328 | +#endif | ||
329 | diff --git a/libelf/elf.h b/libelf/elf.h | ||
330 | index 6c9f61e..6d82fef 100644 | ||
296 | --- a/libelf/elf.h | 331 | --- a/libelf/elf.h |
297 | +++ b/libelf/elf.h | 332 | +++ b/libelf/elf.h |
298 | @@ -2593,6 +2593,9 @@ enum | 333 | @@ -2692,6 +2692,9 @@ enum |
299 | #define EF_ARM_EABI_VER4 0x04000000 | 334 | #define EF_ARM_EABI_VER4 0x04000000 |
300 | #define EF_ARM_EABI_VER5 0x05000000 | 335 | #define EF_ARM_EABI_VER5 0x05000000 |
301 | 336 | ||
@@ -305,7 +340,7 @@ Index: b/libelf/elf.h | |||
305 | /* Additional symbol types for Thumb. */ | 340 | /* Additional symbol types for Thumb. */ |
306 | #define STT_ARM_TFUNC STT_LOPROC /* A Thumb function. */ | 341 | #define STT_ARM_TFUNC STT_LOPROC /* A Thumb function. */ |
307 | #define STT_ARM_16BIT STT_HIPROC /* A Thumb label. */ | 342 | #define STT_ARM_16BIT STT_HIPROC /* A Thumb label. */ |
308 | @@ -2610,12 +2613,19 @@ enum | 343 | @@ -2709,12 +2712,19 @@ enum |
309 | 344 | ||
310 | /* Processor specific values for the Phdr p_type field. */ | 345 | /* Processor specific values for the Phdr p_type field. */ |
311 | #define PT_ARM_EXIDX (PT_LOPROC + 1) /* ARM unwind segment. */ | 346 | #define PT_ARM_EXIDX (PT_LOPROC + 1) /* ARM unwind segment. */ |
@@ -325,7 +360,7 @@ Index: b/libelf/elf.h | |||
325 | 360 | ||
326 | /* AArch64 relocs. */ | 361 | /* AArch64 relocs. */ |
327 | 362 | ||
328 | @@ -2908,6 +2918,7 @@ enum | 363 | @@ -3007,6 +3017,7 @@ enum |
329 | TLS block (LDR, STR). */ | 364 | TLS block (LDR, STR). */ |
330 | #define R_ARM_TLS_IE12GP 111 /* 12 bit GOT entry relative | 365 | #define R_ARM_TLS_IE12GP 111 /* 12 bit GOT entry relative |
331 | to GOT origin (LDR). */ | 366 | to GOT origin (LDR). */ |
@@ -333,22 +368,119 @@ Index: b/libelf/elf.h | |||
333 | #define R_ARM_ME_TOO 128 /* Obsolete. */ | 368 | #define R_ARM_ME_TOO 128 /* Obsolete. */ |
334 | #define R_ARM_THM_TLS_DESCSEQ 129 | 369 | #define R_ARM_THM_TLS_DESCSEQ 129 |
335 | #define R_ARM_THM_TLS_DESCSEQ16 129 | 370 | #define R_ARM_THM_TLS_DESCSEQ16 129 |
336 | Index: b/backends/libebl_arm.h | 371 | diff --git a/tests/run-addrcfi.sh b/tests/run-addrcfi.sh |
337 | =================================================================== | 372 | index fd89d02..462d7c5 100755 |
338 | --- /dev/null | 373 | --- a/tests/run-addrcfi.sh |
339 | +++ b/backends/libebl_arm.h | 374 | +++ b/tests/run-addrcfi.sh |
340 | @@ -0,0 +1,9 @@ | 375 | @@ -3554,6 +3554,38 @@ dwarf_cfi_addrframe (.eh_frame): no matching address range |
341 | +#ifndef _LIBEBL_ARM_H | 376 | FPA reg21 (f5): undefined |
342 | +#define _LIBEBL_ARM_H 1 | 377 | FPA reg22 (f6): undefined |
343 | + | 378 | FPA reg23 (f7): undefined |
344 | +#include <libdw.h> | 379 | + VFP reg64 (s0): undefined |
345 | + | 380 | + VFP reg65 (s1): undefined |
346 | +extern int arm_return_value_location_soft(Dwarf_Die *, const Dwarf_Op **locp); | 381 | + VFP reg66 (s2): undefined |
347 | +extern int arm_return_value_location_hard(Dwarf_Die *, const Dwarf_Op **locp); | 382 | + VFP reg67 (s3): undefined |
348 | + | 383 | + VFP reg68 (s4): undefined |
349 | +#endif | 384 | + VFP reg69 (s5): undefined |
350 | Index: b/tests/run-allregs.sh | 385 | + VFP reg70 (s6): undefined |
351 | =================================================================== | 386 | + VFP reg71 (s7): undefined |
387 | + VFP reg72 (s8): undefined | ||
388 | + VFP reg73 (s9): undefined | ||
389 | + VFP reg74 (s10): undefined | ||
390 | + VFP reg75 (s11): undefined | ||
391 | + VFP reg76 (s12): undefined | ||
392 | + VFP reg77 (s13): undefined | ||
393 | + VFP reg78 (s14): undefined | ||
394 | + VFP reg79 (s15): undefined | ||
395 | + VFP reg80 (s16): undefined | ||
396 | + VFP reg81 (s17): undefined | ||
397 | + VFP reg82 (s18): undefined | ||
398 | + VFP reg83 (s19): undefined | ||
399 | + VFP reg84 (s20): undefined | ||
400 | + VFP reg85 (s21): undefined | ||
401 | + VFP reg86 (s22): undefined | ||
402 | + VFP reg87 (s23): undefined | ||
403 | + VFP reg88 (s24): undefined | ||
404 | + VFP reg89 (s25): undefined | ||
405 | + VFP reg90 (s26): undefined | ||
406 | + VFP reg91 (s27): undefined | ||
407 | + VFP reg92 (s28): undefined | ||
408 | + VFP reg93 (s29): undefined | ||
409 | + VFP reg94 (s30): undefined | ||
410 | + VFP reg95 (s31): undefined | ||
411 | FPA reg96 (f0): undefined | ||
412 | FPA reg97 (f1): undefined | ||
413 | FPA reg98 (f2): undefined | ||
414 | @@ -3562,7 +3594,66 @@ dwarf_cfi_addrframe (.eh_frame): no matching address range | ||
415 | FPA reg101 (f5): undefined | ||
416 | FPA reg102 (f6): undefined | ||
417 | FPA reg103 (f7): undefined | ||
418 | - integer reg128 (spsr): undefined | ||
419 | + MMX reg104 (wcgr0): undefined | ||
420 | + MMX reg105 (wcgr1): undefined | ||
421 | + MMX reg106 (wcgr2): undefined | ||
422 | + MMX reg107 (wcgr3): undefined | ||
423 | + MMX reg108 (wcgr4): undefined | ||
424 | + MMX reg109 (wcgr5): undefined | ||
425 | + MMX reg110 (wcgr6): undefined | ||
426 | + MMX reg111 (wcgr7): undefined | ||
427 | + MMX reg112 (wr0): undefined | ||
428 | + MMX reg113 (wr1): undefined | ||
429 | + MMX reg114 (wr2): undefined | ||
430 | + MMX reg115 (wr3): undefined | ||
431 | + MMX reg116 (wr4): undefined | ||
432 | + MMX reg117 (wr5): undefined | ||
433 | + MMX reg118 (wr6): undefined | ||
434 | + MMX reg119 (wr7): undefined | ||
435 | + MMX reg120 (wr8): undefined | ||
436 | + MMX reg121 (wr9): undefined | ||
437 | + MMX reg122 (wr10): undefined | ||
438 | + MMX reg123 (wr11): undefined | ||
439 | + MMX reg124 (wr12): undefined | ||
440 | + MMX reg125 (wr13): undefined | ||
441 | + MMX reg126 (wr14): undefined | ||
442 | + MMX reg127 (wr15): undefined | ||
443 | + state reg128 (spsr): undefined | ||
444 | + state reg129 (spsr_fiq): undefined | ||
445 | + state reg130 (spsr_irq): undefined | ||
446 | + state reg131 (spsr_abt): undefined | ||
447 | + state reg132 (spsr_und): undefined | ||
448 | + state reg133 (spsr_svc): undefined | ||
449 | + integer reg144 (r8_usr): undefined | ||
450 | + integer reg145 (r9_usr): undefined | ||
451 | + integer reg146 (r10_usr): undefined | ||
452 | + integer reg147 (r11_usr): undefined | ||
453 | + integer reg148 (r12_usr): undefined | ||
454 | + integer reg149 (r13_usr): undefined | ||
455 | + integer reg150 (r14_usr): undefined | ||
456 | + integer reg151 (r8_fiq): undefined | ||
457 | + integer reg152 (r9_fiq): undefined | ||
458 | + integer reg153 (r10_fiq): undefined | ||
459 | + integer reg154 (r11_fiq): undefined | ||
460 | + integer reg155 (r12_fiq): undefined | ||
461 | + integer reg156 (r13_fiq): undefined | ||
462 | + integer reg157 (r14_fiq): undefined | ||
463 | + integer reg158 (r13_irq): undefined | ||
464 | + integer reg159 (r14_irq): undefined | ||
465 | + integer reg160 (r13_abt): undefined | ||
466 | + integer reg161 (r14_abt): undefined | ||
467 | + integer reg162 (r13_und): undefined | ||
468 | + integer reg163 (r14_und): undefined | ||
469 | + integer reg164 (r13_svc): undefined | ||
470 | + integer reg165 (r14_svc): undefined | ||
471 | + MMX reg192 (wc0): undefined | ||
472 | + MMX reg193 (wc1): undefined | ||
473 | + MMX reg194 (wc2): undefined | ||
474 | + MMX reg195 (wc3): undefined | ||
475 | + MMX reg196 (wc4): undefined | ||
476 | + MMX reg197 (wc5): undefined | ||
477 | + MMX reg198 (wc6): undefined | ||
478 | + MMX reg199 (wc7): undefined | ||
479 | VFP reg256 (d0): undefined | ||
480 | VFP reg257 (d1): undefined | ||
481 | VFP reg258 (d2): undefined | ||
482 | diff --git a/tests/run-allregs.sh b/tests/run-allregs.sh | ||
483 | index 7ddd452..a31dba4 100755 | ||
352 | --- a/tests/run-allregs.sh | 484 | --- a/tests/run-allregs.sh |
353 | +++ b/tests/run-allregs.sh | 485 | +++ b/tests/run-allregs.sh |
354 | @@ -2672,7 +2672,28 @@ integer registers: | 486 | @@ -2672,7 +2672,28 @@ integer registers: |
@@ -468,11 +600,11 @@ Index: b/tests/run-allregs.sh | |||
468 | EOF | 600 | EOF |
469 | 601 | ||
470 | # See run-readelf-mixed-corenote.sh for instructions to regenerate | 602 | # See run-readelf-mixed-corenote.sh for instructions to regenerate |
471 | Index: b/tests/run-readelf-mixed-corenote.sh | 603 | diff --git a/tests/run-readelf-mixed-corenote.sh b/tests/run-readelf-mixed-corenote.sh |
472 | =================================================================== | 604 | index 86171c4..018612f 100755 |
473 | --- a/tests/run-readelf-mixed-corenote.sh | 605 | --- a/tests/run-readelf-mixed-corenote.sh |
474 | +++ b/tests/run-readelf-mixed-corenote.sh | 606 | +++ b/tests/run-readelf-mixed-corenote.sh |
475 | @@ -31,12 +31,11 @@ Note segment of 892 bytes at offset 0x27 | 607 | @@ -31,12 +31,11 @@ Note segment of 892 bytes at offset 0x274: |
476 | pid: 11087, ppid: 11063, pgrp: 11087, sid: 11063 | 608 | pid: 11087, ppid: 11063, pgrp: 11087, sid: 11063 |
477 | utime: 0.000000, stime: 0.010000, cutime: 0.000000, cstime: 0.000000 | 609 | utime: 0.000000, stime: 0.010000, cutime: 0.000000, cstime: 0.000000 |
478 | orig_r0: -1, fpvalid: 1 | 610 | orig_r0: -1, fpvalid: 1 |
@@ -490,114 +622,6 @@ Index: b/tests/run-readelf-mixed-corenote.sh | |||
490 | CORE 124 PRPSINFO | 622 | CORE 124 PRPSINFO |
491 | state: 0, sname: R, zomb: 0, nice: 0, flag: 0x00400500 | 623 | state: 0, sname: R, zomb: 0, nice: 0, flag: 0x00400500 |
492 | uid: 0, gid: 0, pid: 11087, ppid: 11063, pgrp: 11087, sid: 11063 | 624 | uid: 0, gid: 0, pid: 11087, ppid: 11063, pgrp: 11087, sid: 11063 |
493 | Index: b/tests/run-addrcfi.sh | 625 | -- |
494 | =================================================================== | 626 | 2.7.4 |
495 | --- a/tests/run-addrcfi.sh | 627 | |
496 | +++ b/tests/run-addrcfi.sh | ||
497 | @@ -3554,6 +3554,38 @@ dwarf_cfi_addrframe (.eh_frame): no matc | ||
498 | FPA reg21 (f5): undefined | ||
499 | FPA reg22 (f6): undefined | ||
500 | FPA reg23 (f7): undefined | ||
501 | + VFP reg64 (s0): undefined | ||
502 | + VFP reg65 (s1): undefined | ||
503 | + VFP reg66 (s2): undefined | ||
504 | + VFP reg67 (s3): undefined | ||
505 | + VFP reg68 (s4): undefined | ||
506 | + VFP reg69 (s5): undefined | ||
507 | + VFP reg70 (s6): undefined | ||
508 | + VFP reg71 (s7): undefined | ||
509 | + VFP reg72 (s8): undefined | ||
510 | + VFP reg73 (s9): undefined | ||
511 | + VFP reg74 (s10): undefined | ||
512 | + VFP reg75 (s11): undefined | ||
513 | + VFP reg76 (s12): undefined | ||
514 | + VFP reg77 (s13): undefined | ||
515 | + VFP reg78 (s14): undefined | ||
516 | + VFP reg79 (s15): undefined | ||
517 | + VFP reg80 (s16): undefined | ||
518 | + VFP reg81 (s17): undefined | ||
519 | + VFP reg82 (s18): undefined | ||
520 | + VFP reg83 (s19): undefined | ||
521 | + VFP reg84 (s20): undefined | ||
522 | + VFP reg85 (s21): undefined | ||
523 | + VFP reg86 (s22): undefined | ||
524 | + VFP reg87 (s23): undefined | ||
525 | + VFP reg88 (s24): undefined | ||
526 | + VFP reg89 (s25): undefined | ||
527 | + VFP reg90 (s26): undefined | ||
528 | + VFP reg91 (s27): undefined | ||
529 | + VFP reg92 (s28): undefined | ||
530 | + VFP reg93 (s29): undefined | ||
531 | + VFP reg94 (s30): undefined | ||
532 | + VFP reg95 (s31): undefined | ||
533 | FPA reg96 (f0): undefined | ||
534 | FPA reg97 (f1): undefined | ||
535 | FPA reg98 (f2): undefined | ||
536 | @@ -3562,7 +3594,66 @@ dwarf_cfi_addrframe (.eh_frame): no matc | ||
537 | FPA reg101 (f5): undefined | ||
538 | FPA reg102 (f6): undefined | ||
539 | FPA reg103 (f7): undefined | ||
540 | - integer reg128 (spsr): undefined | ||
541 | + MMX reg104 (wcgr0): undefined | ||
542 | + MMX reg105 (wcgr1): undefined | ||
543 | + MMX reg106 (wcgr2): undefined | ||
544 | + MMX reg107 (wcgr3): undefined | ||
545 | + MMX reg108 (wcgr4): undefined | ||
546 | + MMX reg109 (wcgr5): undefined | ||
547 | + MMX reg110 (wcgr6): undefined | ||
548 | + MMX reg111 (wcgr7): undefined | ||
549 | + MMX reg112 (wr0): undefined | ||
550 | + MMX reg113 (wr1): undefined | ||
551 | + MMX reg114 (wr2): undefined | ||
552 | + MMX reg115 (wr3): undefined | ||
553 | + MMX reg116 (wr4): undefined | ||
554 | + MMX reg117 (wr5): undefined | ||
555 | + MMX reg118 (wr6): undefined | ||
556 | + MMX reg119 (wr7): undefined | ||
557 | + MMX reg120 (wr8): undefined | ||
558 | + MMX reg121 (wr9): undefined | ||
559 | + MMX reg122 (wr10): undefined | ||
560 | + MMX reg123 (wr11): undefined | ||
561 | + MMX reg124 (wr12): undefined | ||
562 | + MMX reg125 (wr13): undefined | ||
563 | + MMX reg126 (wr14): undefined | ||
564 | + MMX reg127 (wr15): undefined | ||
565 | + state reg128 (spsr): undefined | ||
566 | + state reg129 (spsr_fiq): undefined | ||
567 | + state reg130 (spsr_irq): undefined | ||
568 | + state reg131 (spsr_abt): undefined | ||
569 | + state reg132 (spsr_und): undefined | ||
570 | + state reg133 (spsr_svc): undefined | ||
571 | + integer reg144 (r8_usr): undefined | ||
572 | + integer reg145 (r9_usr): undefined | ||
573 | + integer reg146 (r10_usr): undefined | ||
574 | + integer reg147 (r11_usr): undefined | ||
575 | + integer reg148 (r12_usr): undefined | ||
576 | + integer reg149 (r13_usr): undefined | ||
577 | + integer reg150 (r14_usr): undefined | ||
578 | + integer reg151 (r8_fiq): undefined | ||
579 | + integer reg152 (r9_fiq): undefined | ||
580 | + integer reg153 (r10_fiq): undefined | ||
581 | + integer reg154 (r11_fiq): undefined | ||
582 | + integer reg155 (r12_fiq): undefined | ||
583 | + integer reg156 (r13_fiq): undefined | ||
584 | + integer reg157 (r14_fiq): undefined | ||
585 | + integer reg158 (r13_irq): undefined | ||
586 | + integer reg159 (r14_irq): undefined | ||
587 | + integer reg160 (r13_abt): undefined | ||
588 | + integer reg161 (r14_abt): undefined | ||
589 | + integer reg162 (r13_und): undefined | ||
590 | + integer reg163 (r14_und): undefined | ||
591 | + integer reg164 (r13_svc): undefined | ||
592 | + integer reg165 (r14_svc): undefined | ||
593 | + MMX reg192 (wc0): undefined | ||
594 | + MMX reg193 (wc1): undefined | ||
595 | + MMX reg194 (wc2): undefined | ||
596 | + MMX reg195 (wc3): undefined | ||
597 | + MMX reg196 (wc4): undefined | ||
598 | + MMX reg197 (wc5): undefined | ||
599 | + MMX reg198 (wc6): undefined | ||
600 | + MMX reg199 (wc7): undefined | ||
601 | VFP reg256 (d0): undefined | ||
602 | VFP reg257 (d1): undefined | ||
603 | VFP reg258 (d2): undefined | ||
diff --git a/meta/recipes-devtools/elfutils/files/debian/0001-disable_werror.patch b/meta/recipes-devtools/elfutils/files/debian/0001-disable_werror.patch new file mode 100644 index 0000000000..66de238418 --- /dev/null +++ b/meta/recipes-devtools/elfutils/files/debian/0001-disable_werror.patch | |||
@@ -0,0 +1,35 @@ | |||
1 | From 5d45565e71ddab3d7848077b61eb0ca73c0bcbcc Mon Sep 17 00:00:00 2001 | ||
2 | From: Hongxu Jia <hongxu.jia@windriver.com> | ||
3 | Date: Fri, 29 Jun 2018 16:01:14 +0800 | ||
4 | Subject: [PATCH] disable -Werror as it tends to break with new gcc versions | ||
5 | |||
6 | Bug-Debian: https://bugs.debian.org/886004 | ||
7 | Last-Update: 2018-01-01 | ||
8 | |||
9 | Signed-off-by: Helmut Grohne <helmut@subdivi.de> | ||
10 | |||
11 | Upstream-Status: Backport from debian | ||
12 | mdisable_werror.patc and rebase to 0.172 | ||
13 | |||
14 | http://ftp.de.debian.org/debian/pool/main/e/elfutils/elfutils_0.170-0.5.debian.tar.xz | ||
15 | |||
16 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | ||
17 | --- | ||
18 | config/eu.am | 1 - | ||
19 | 1 file changed, 1 deletion(-) | ||
20 | |||
21 | diff --git a/config/eu.am b/config/eu.am | ||
22 | index c2cc349..99b368e 100644 | ||
23 | --- a/config/eu.am | ||
24 | +++ b/config/eu.am | ||
25 | @@ -73,7 +73,6 @@ AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \ | ||
26 | -Wold-style-definition -Wstrict-prototypes \ | ||
27 | $(LOGICAL_OP_WARNING) $(DUPLICATED_COND_WARNING) \ | ||
28 | $(NULL_DEREFERENCE_WARNING) $(IMPLICIT_FALLTHROUGH_WARNING) \ | ||
29 | - $(if $($(*F)_no_Werror),,-Werror) \ | ||
30 | $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ | ||
31 | $(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \ | ||
32 | $(if $($(*F)_no_Wpacked_not_aligned),-Wno-packed-not-aligned,) \ | ||
33 | -- | ||
34 | 2.7.4 | ||
35 | |||
diff --git a/meta/recipes-devtools/elfutils/files/debian/0001-fix-gcc7-ftbfs.patch b/meta/recipes-devtools/elfutils/files/debian/0001-fix-gcc7-ftbfs.patch new file mode 100644 index 0000000000..226ec7f530 --- /dev/null +++ b/meta/recipes-devtools/elfutils/files/debian/0001-fix-gcc7-ftbfs.patch | |||
@@ -0,0 +1,57 @@ | |||
1 | From 91c0a0da2a8932f163d57db5d9d847bed6822502 Mon Sep 17 00:00:00 2001 | ||
2 | From: Hongxu Jia <hongxu.jia@windriver.com> | ||
3 | Date: Fri, 29 Jun 2018 15:59:57 +0800 | ||
4 | Subject: [PATCH] fix gcc7 ftbfs | ||
5 | |||
6 | Upstream-Status: Backport from debian | ||
7 | fix-gcc7-ftbfs.diff and rebase to 0.172 | ||
8 | |||
9 | http://ftp.de.debian.org/debian/pool/main/e/elfutils/elfutils_0.170-0.5.debian.tar.xz | ||
10 | |||
11 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | ||
12 | --- | ||
13 | backends/mips_retval.c | 1 + | ||
14 | backends/parisc_retval.c | 1 + | ||
15 | src/ar.c | 2 +- | ||
16 | 3 files changed, 3 insertions(+), 1 deletion(-) | ||
17 | |||
18 | diff --git a/backends/mips_retval.c b/backends/mips_retval.c | ||
19 | index 57487bb..e7973a8 100644 | ||
20 | --- a/backends/mips_retval.c | ||
21 | +++ b/backends/mips_retval.c | ||
22 | @@ -390,6 +390,7 @@ mips_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp) | ||
23 | } | ||
24 | |||
25 | /* Fallthrough to handle large types */ | ||
26 | + /* Fall through. */ | ||
27 | |||
28 | case DW_TAG_array_type: | ||
29 | large: | ||
30 | diff --git a/backends/parisc_retval.c b/backends/parisc_retval.c | ||
31 | index df7ec3a..988e1fe 100644 | ||
32 | --- a/backends/parisc_retval.c | ||
33 | +++ b/backends/parisc_retval.c | ||
34 | @@ -167,6 +167,7 @@ parisc_return_value_location_ (Dwarf_Die *functypedie, const Dwarf_Op **locp, in | ||
35 | |||
36 | /* Else fall through. */ | ||
37 | } | ||
38 | + /* Fall through. */ | ||
39 | |||
40 | case DW_TAG_structure_type: | ||
41 | case DW_TAG_class_type: | ||
42 | diff --git a/src/ar.c b/src/ar.c | ||
43 | index 818115b..c77e9f4 100644 | ||
44 | --- a/src/ar.c | ||
45 | +++ b/src/ar.c | ||
46 | @@ -1073,7 +1073,7 @@ do_oper_delete (const char *arfname, char **argv, int argc, | ||
47 | static bool | ||
48 | no0print (bool ofmt, char *buf, int bufsize, long int val) | ||
49 | { | ||
50 | - char tmpbuf[bufsize + 1]; | ||
51 | + char tmpbuf[bufsize + 1 + 4]; | ||
52 | int ret = snprintf (tmpbuf, sizeof (tmpbuf), ofmt ? "%-*lo" : "%-*ld", | ||
53 | bufsize, val); | ||
54 | if (ret >= (int) sizeof (tmpbuf)) | ||
55 | -- | ||
56 | 2.7.4 | ||
57 | |||
diff --git a/meta/recipes-devtools/elfutils/files/debian/hppa_backend.diff b/meta/recipes-devtools/elfutils/files/debian/0001-hppa_backend.patch index 56f852a414..c0dbed798d 100644 --- a/meta/recipes-devtools/elfutils/files/debian/hppa_backend.diff +++ b/meta/recipes-devtools/elfutils/files/debian/0001-hppa_backend.patch | |||
@@ -1,10 +1,84 @@ | |||
1 | Upstream-Status: Backport [from debian] | 1 | From c510c6c8523246dd79c6ea28d1646b153c23e491 Mon Sep 17 00:00:00 2001 |
2 | From: Hongxu Jia <hongxu.jia@windriver.com> | ||
3 | Date: Fri, 29 Jun 2018 15:39:46 +0800 | ||
4 | Subject: [PATCH] hppa_backend | ||
5 | |||
6 | Upstream-Status: Backport from debian | ||
7 | hppa_backend.diff and rebase to 0.172 | ||
8 | |||
9 | http://ftp.de.debian.org/debian/pool/main/e/elfutils/elfutils_0.170-0.5.debian.tar.xz | ||
2 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | 10 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> |
11 | --- | ||
12 | backends/Makefile.am | 9 +- | ||
13 | backends/libebl_parisc.h | 9 ++ | ||
14 | backends/parisc_init.c | 73 ++++++++++++++++ | ||
15 | backends/parisc_regs.c | 159 ++++++++++++++++++++++++++++++++++ | ||
16 | backends/parisc_reloc.def | 128 ++++++++++++++++++++++++++++ | ||
17 | backends/parisc_retval.c | 213 ++++++++++++++++++++++++++++++++++++++++++++++ | ||
18 | backends/parisc_symbol.c | 112 ++++++++++++++++++++++++ | ||
19 | libelf/elf.h | 11 +++ | ||
20 | 8 files changed, 711 insertions(+), 3 deletions(-) | ||
21 | create mode 100644 backends/libebl_parisc.h | ||
22 | create mode 100644 backends/parisc_init.c | ||
23 | create mode 100644 backends/parisc_regs.c | ||
24 | create mode 100644 backends/parisc_reloc.def | ||
25 | create mode 100644 backends/parisc_retval.c | ||
26 | create mode 100644 backends/parisc_symbol.c | ||
3 | 27 | ||
4 | Index: elfutils-0.170/backends/parisc_init.c | 28 | diff --git a/backends/Makefile.am b/backends/Makefile.am |
5 | =================================================================== | 29 | index 80aa00e..1e4b8e9 100644 |
30 | --- a/backends/Makefile.am | ||
31 | +++ b/backends/Makefile.am | ||
32 | @@ -33,16 +33,16 @@ AM_CPPFLAGS += -I$(top_srcdir)/libebl -I$(top_srcdir)/libasm \ | ||
33 | |||
34 | |||
35 | modules = i386 sh x86_64 ia64 alpha arm aarch64 sparc ppc ppc64 s390 \ | ||
36 | - tilegx m68k bpf riscv | ||
37 | + tilegx m68k bpf riscv parisc | ||
38 | libebl_pic = libebl_i386_pic.a libebl_sh_pic.a libebl_x86_64_pic.a \ | ||
39 | libebl_ia64_pic.a libebl_alpha_pic.a libebl_arm_pic.a \ | ||
40 | libebl_aarch64_pic.a libebl_sparc_pic.a libebl_ppc_pic.a \ | ||
41 | libebl_ppc64_pic.a libebl_s390_pic.a libebl_tilegx_pic.a \ | ||
42 | - libebl_m68k_pic.a libebl_bpf_pic.a libebl_riscv_pic.a | ||
43 | + libebl_m68k_pic.a libebl_bpf_pic.a libebl_riscv_pic.a \ | ||
44 | + libebl_parisc_pic.a | ||
45 | noinst_LIBRARIES = $(libebl_pic) | ||
46 | noinst_DATA = $(libebl_pic:_pic.a=.so) | ||
47 | |||
48 | - | ||
49 | libelf = ../libelf/libelf.so | ||
50 | libdw = ../libdw/libdw.so | ||
51 | libeu = ../lib/libeu.a | ||
52 | @@ -135,6 +135,9 @@ riscv_SRCS = riscv_init.c riscv_symbol.c | ||
53 | libebl_riscv_pic_a_SOURCES = $(riscv_SRCS) | ||
54 | am_libebl_riscv_pic_a_OBJECTS = $(riscv_SRCS:.c=.os) | ||
55 | |||
56 | +parisc_SRCS = parisc_init.c parisc_symbol.c parisc_regs.c parisc_retval.c | ||
57 | +libebl_parisc_pic_a_SOURCES = $(parisc_SRCS) | ||
58 | +am_libebl_parisc_pic_a_OBJECTS = $(parisc_SRCS:.c=.os) | ||
59 | |||
60 | libebl_%.so libebl_%.map: libebl_%_pic.a $(libelf) $(libdw) $(libeu) | ||
61 | @rm -f $(@:.so=.map) | ||
62 | diff --git a/backends/libebl_parisc.h b/backends/libebl_parisc.h | ||
63 | new file mode 100644 | ||
64 | index 0000000..f473b79 | ||
65 | --- /dev/null | ||
66 | +++ b/backends/libebl_parisc.h | ||
67 | @@ -0,0 +1,9 @@ | ||
68 | +#ifndef _LIBEBL_HPPA_H | ||
69 | +#define _LIBEBL_HPPA_H 1 | ||
70 | + | ||
71 | +#include <libdw.h> | ||
72 | + | ||
73 | +extern int parisc_return_value_location_32(Dwarf_Die *, const Dwarf_Op **locp); | ||
74 | +extern int parisc_return_value_location_64(Dwarf_Die *, const Dwarf_Op **locp); | ||
75 | + | ||
76 | +#endif | ||
77 | diff --git a/backends/parisc_init.c b/backends/parisc_init.c | ||
78 | new file mode 100644 | ||
79 | index 0000000..f1e401c | ||
6 | --- /dev/null | 80 | --- /dev/null |
7 | +++ elfutils-0.170/backends/parisc_init.c | 81 | +++ b/backends/parisc_init.c |
8 | @@ -0,0 +1,73 @@ | 82 | @@ -0,0 +1,73 @@ |
9 | +/* Initialization of PA-RISC specific backend library. | 83 | +/* Initialization of PA-RISC specific backend library. |
10 | + Copyright (C) 2002, 2005, 2006 Red Hat, Inc. | 84 | + Copyright (C) 2002, 2005, 2006 Red Hat, Inc. |
@@ -79,10 +153,11 @@ Index: elfutils-0.170/backends/parisc_init.c | |||
79 | + | 153 | + |
80 | + return MODVERSION; | 154 | + return MODVERSION; |
81 | +} | 155 | +} |
82 | Index: elfutils-0.170/backends/parisc_regs.c | 156 | diff --git a/backends/parisc_regs.c b/backends/parisc_regs.c |
83 | =================================================================== | 157 | new file mode 100644 |
158 | index 0000000..3895f8e | ||
84 | --- /dev/null | 159 | --- /dev/null |
85 | +++ elfutils-0.170/backends/parisc_regs.c | 160 | +++ b/backends/parisc_regs.c |
86 | @@ -0,0 +1,159 @@ | 161 | @@ -0,0 +1,159 @@ |
87 | +/* Register names and numbers for PA-RISC DWARF. | 162 | +/* Register names and numbers for PA-RISC DWARF. |
88 | + Copyright (C) 2005, 2006 Red Hat, Inc. | 163 | + Copyright (C) 2005, 2006 Red Hat, Inc. |
@@ -243,10 +318,11 @@ Index: elfutils-0.170/backends/parisc_regs.c | |||
243 | + name[namelen++] = '\0'; | 318 | + name[namelen++] = '\0'; |
244 | + return namelen; | 319 | + return namelen; |
245 | +} | 320 | +} |
246 | Index: elfutils-0.170/backends/parisc_reloc.def | 321 | diff --git a/backends/parisc_reloc.def b/backends/parisc_reloc.def |
247 | =================================================================== | 322 | new file mode 100644 |
323 | index 0000000..1f875ba | ||
248 | --- /dev/null | 324 | --- /dev/null |
249 | +++ elfutils-0.170/backends/parisc_reloc.def | 325 | +++ b/backends/parisc_reloc.def |
250 | @@ -0,0 +1,128 @@ | 326 | @@ -0,0 +1,128 @@ |
251 | +/* List the relocation types for PA-RISC. -*- C -*- | 327 | +/* List the relocation types for PA-RISC. -*- C -*- |
252 | + Copyright (C) 2005 Red Hat, Inc. | 328 | + Copyright (C) 2005 Red Hat, Inc. |
@@ -376,10 +452,11 @@ Index: elfutils-0.170/backends/parisc_reloc.def | |||
376 | +RELOC_TYPE (TLS_DTPMOD64, DYN) | 452 | +RELOC_TYPE (TLS_DTPMOD64, DYN) |
377 | + | 453 | + |
378 | +#define NO_RELATIVE_RELOC 1 | 454 | +#define NO_RELATIVE_RELOC 1 |
379 | Index: elfutils-0.170/backends/parisc_retval.c | 455 | diff --git a/backends/parisc_retval.c b/backends/parisc_retval.c |
380 | =================================================================== | 456 | new file mode 100644 |
457 | index 0000000..df7ec3a | ||
381 | --- /dev/null | 458 | --- /dev/null |
382 | +++ elfutils-0.170/backends/parisc_retval.c | 459 | +++ b/backends/parisc_retval.c |
383 | @@ -0,0 +1,213 @@ | 460 | @@ -0,0 +1,213 @@ |
384 | +/* Function return value location for Linux/PA-RISC ABI. | 461 | +/* Function return value location for Linux/PA-RISC ABI. |
385 | + Copyright (C) 2005 Red Hat, Inc. | 462 | + Copyright (C) 2005 Red Hat, Inc. |
@@ -594,10 +671,11 @@ Index: elfutils-0.170/backends/parisc_retval.c | |||
594 | + return parisc_return_value_location_ (functypedie, locp, 1); | 671 | + return parisc_return_value_location_ (functypedie, locp, 1); |
595 | +} | 672 | +} |
596 | + | 673 | + |
597 | Index: elfutils-0.170/backends/parisc_symbol.c | 674 | diff --git a/backends/parisc_symbol.c b/backends/parisc_symbol.c |
598 | =================================================================== | 675 | new file mode 100644 |
676 | index 0000000..d111a76 | ||
599 | --- /dev/null | 677 | --- /dev/null |
600 | +++ elfutils-0.170/backends/parisc_symbol.c | 678 | +++ b/backends/parisc_symbol.c |
601 | @@ -0,0 +1,112 @@ | 679 | @@ -0,0 +1,112 @@ |
602 | +/* PA-RISC specific symbolic name handling. | 680 | +/* PA-RISC specific symbolic name handling. |
603 | + Copyright (C) 2002, 2005 Red Hat, Inc. | 681 | + Copyright (C) 2002, 2005 Red Hat, Inc. |
@@ -711,54 +789,11 @@ Index: elfutils-0.170/backends/parisc_symbol.c | |||
711 | + return ELF_T_NUM; | 789 | + return ELF_T_NUM; |
712 | + } | 790 | + } |
713 | +} | 791 | +} |
714 | Index: elfutils-0.170/backends/libebl_parisc.h | 792 | diff --git a/libelf/elf.h b/libelf/elf.h |
715 | =================================================================== | 793 | index f774898..6c9f61e 100644 |
716 | --- /dev/null | 794 | --- a/libelf/elf.h |
717 | +++ elfutils-0.170/backends/libebl_parisc.h | 795 | +++ b/libelf/elf.h |
718 | @@ -0,0 +1,9 @@ | 796 | @@ -2153,16 +2153,24 @@ enum |
719 | +#ifndef _LIBEBL_HPPA_H | ||
720 | +#define _LIBEBL_HPPA_H 1 | ||
721 | + | ||
722 | +#include <libdw.h> | ||
723 | + | ||
724 | +extern int parisc_return_value_location_32(Dwarf_Die *, const Dwarf_Op **locp); | ||
725 | +extern int parisc_return_value_location_64(Dwarf_Die *, const Dwarf_Op **locp); | ||
726 | + | ||
727 | +#endif | ||
728 | Index: elfutils-0.170/backends/Makefile.am | ||
729 | =================================================================== | ||
730 | --- elfutils-0.170.orig/backends/Makefile.am | ||
731 | +++ elfutils-0.170/backends/Makefile.am | ||
732 | @@ -33,12 +33,12 @@ AM_CPPFLAGS += -I$(top_srcdir)/libebl -I | ||
733 | |||
734 | |||
735 | modules = i386 sh x86_64 ia64 alpha arm aarch64 sparc ppc ppc64 s390 \ | ||
736 | - tilegx m68k bpf | ||
737 | + tilegx m68k bpf parisc | ||
738 | libebl_pic = libebl_i386_pic.a libebl_sh_pic.a libebl_x86_64_pic.a \ | ||
739 | libebl_ia64_pic.a libebl_alpha_pic.a libebl_arm_pic.a \ | ||
740 | libebl_aarch64_pic.a libebl_sparc_pic.a libebl_ppc_pic.a \ | ||
741 | libebl_ppc64_pic.a libebl_s390_pic.a libebl_tilegx_pic.a \ | ||
742 | - libebl_m68k_pic.a libebl_bpf_pic.a | ||
743 | + libebl_m68k_pic.a libebl_bpf_pic.a libebl_parisc_pic.a | ||
744 | noinst_LIBRARIES = $(libebl_pic) | ||
745 | noinst_DATA = $(libebl_pic:_pic.a=.so) | ||
746 | |||
747 | @@ -124,6 +124,9 @@ cpu_bpf = ../libcpu/libcpu_bpf.a | ||
748 | libebl_bpf_pic_a_SOURCES = $(bpf_SRCS) | ||
749 | am_libebl_bpf_pic_a_OBJECTS = $(bpf_SRCS:.c=.os) | ||
750 | |||
751 | +parisc_SRCS = parisc_init.c parisc_symbol.c parisc_regs.c parisc_retval.c | ||
752 | +libebl_parisc_pic_a_SOURCES = $(parisc_SRCS) | ||
753 | +am_libebl_parisc_pic_a_OBJECTS = $(parisc_SRCS:.c=.os) | ||
754 | |||
755 | libebl_%.so libebl_%.map: libebl_%_pic.a $(libelf) $(libdw) $(libeu) | ||
756 | @rm -f $(@:.so=.map) | ||
757 | Index: elfutils-0.170/libelf/elf.h | ||
758 | =================================================================== | ||
759 | --- elfutils-0.170.orig/libelf/elf.h | ||
760 | +++ elfutils-0.170/libelf/elf.h | ||
761 | @@ -2056,16 +2056,24 @@ enum | ||
762 | #define R_PARISC_PCREL17F 12 /* 17 bits of rel. address. */ | 797 | #define R_PARISC_PCREL17F 12 /* 17 bits of rel. address. */ |
763 | #define R_PARISC_PCREL14R 14 /* Right 14 bits of rel. address. */ | 798 | #define R_PARISC_PCREL14R 14 /* Right 14 bits of rel. address. */ |
764 | #define R_PARISC_DPREL21L 18 /* Left 21 bits of rel. address. */ | 799 | #define R_PARISC_DPREL21L 18 /* Left 21 bits of rel. address. */ |
@@ -783,7 +818,7 @@ Index: elfutils-0.170/libelf/elf.h | |||
783 | #define R_PARISC_LTOFF_FPTR32 57 /* 32 bits LT-rel. function pointer. */ | 818 | #define R_PARISC_LTOFF_FPTR32 57 /* 32 bits LT-rel. function pointer. */ |
784 | #define R_PARISC_LTOFF_FPTR21L 58 /* LT-rel. fct ptr, left 21 bits. */ | 819 | #define R_PARISC_LTOFF_FPTR21L 58 /* LT-rel. fct ptr, left 21 bits. */ |
785 | #define R_PARISC_LTOFF_FPTR14R 62 /* LT-rel. fct ptr, right 14 bits. */ | 820 | #define R_PARISC_LTOFF_FPTR14R 62 /* LT-rel. fct ptr, right 14 bits. */ |
786 | @@ -2074,6 +2082,7 @@ enum | 821 | @@ -2171,6 +2179,7 @@ enum |
787 | #define R_PARISC_PLABEL21L 66 /* Left 21 bits of fdesc address. */ | 822 | #define R_PARISC_PLABEL21L 66 /* Left 21 bits of fdesc address. */ |
788 | #define R_PARISC_PLABEL14R 70 /* Right 14 bits of fdesc address. */ | 823 | #define R_PARISC_PLABEL14R 70 /* Right 14 bits of fdesc address. */ |
789 | #define R_PARISC_PCREL64 72 /* 64 bits PC-rel. address. */ | 824 | #define R_PARISC_PCREL64 72 /* 64 bits PC-rel. address. */ |
@@ -791,7 +826,7 @@ Index: elfutils-0.170/libelf/elf.h | |||
791 | #define R_PARISC_PCREL22F 74 /* 22 bits PC-rel. address. */ | 826 | #define R_PARISC_PCREL22F 74 /* 22 bits PC-rel. address. */ |
792 | #define R_PARISC_PCREL14WR 75 /* PC-rel. address, right 14 bits. */ | 827 | #define R_PARISC_PCREL14WR 75 /* PC-rel. address, right 14 bits. */ |
793 | #define R_PARISC_PCREL14DR 76 /* PC rel. address, right 14 bits. */ | 828 | #define R_PARISC_PCREL14DR 76 /* PC rel. address, right 14 bits. */ |
794 | @@ -2099,6 +2108,8 @@ enum | 829 | @@ -2196,6 +2205,8 @@ enum |
795 | #define R_PARISC_LTOFF16WF 102 /* 16 bits LT-rel. address. */ | 830 | #define R_PARISC_LTOFF16WF 102 /* 16 bits LT-rel. address. */ |
796 | #define R_PARISC_LTOFF16DF 103 /* 16 bits LT-rel. address. */ | 831 | #define R_PARISC_LTOFF16DF 103 /* 16 bits LT-rel. address. */ |
797 | #define R_PARISC_SECREL64 104 /* 64 bits section rel. address. */ | 832 | #define R_PARISC_SECREL64 104 /* 64 bits section rel. address. */ |
@@ -800,3 +835,6 @@ Index: elfutils-0.170/libelf/elf.h | |||
800 | #define R_PARISC_SEGREL64 112 /* 64 bits segment rel. address. */ | 835 | #define R_PARISC_SEGREL64 112 /* 64 bits segment rel. address. */ |
801 | #define R_PARISC_PLTOFF14WR 115 /* PLT-rel. address, right 14 bits. */ | 836 | #define R_PARISC_PLTOFF14WR 115 /* PLT-rel. address, right 14 bits. */ |
802 | #define R_PARISC_PLTOFF14DR 116 /* PLT-rel. address, right 14 bits. */ | 837 | #define R_PARISC_PLTOFF14DR 116 /* PLT-rel. address, right 14 bits. */ |
838 | -- | ||
839 | 2.7.4 | ||
840 | |||
diff --git a/meta/recipes-devtools/elfutils/files/debian/mips_backend.patch b/meta/recipes-devtools/elfutils/files/debian/0001-mips_backend.patch index 2e0e54b0c7..3004e19828 100644 --- a/meta/recipes-devtools/elfutils/files/debian/mips_backend.patch +++ b/meta/recipes-devtools/elfutils/files/debian/0001-mips_backend.patch | |||
@@ -1,11 +1,13 @@ | |||
1 | From 46d0d0ca718093486eeeedf1b44134e9e29b56f7 Mon Sep 17 00:00:00 2001 | 1 | From 59ffb86bda845a68d3686afa7bc784131df678f7 Mon Sep 17 00:00:00 2001 |
2 | From: Hongxu Jia <hongxu.jia@windriver.com> | 2 | From: Hongxu Jia <hongxu.jia@windriver.com> |
3 | Date: Wed, 16 Aug 2017 09:18:59 +0800 | 3 | Date: Fri, 29 Jun 2018 15:45:58 +0800 |
4 | Subject: [PATCH] mips backends | 4 | Subject: [PATCH] mips_backend |
5 | 5 | ||
6 | Upstream-Status: Backport [from debian] | 6 | Upstream-Status: Backport from debian |
7 | mips_backend.diff and rebase to 0.172 | ||
8 | |||
9 | http://ftp.de.debian.org/debian/pool/main/e/elfutils/elfutils_0.170-0.5.debian.tar.xz | ||
7 | 10 | ||
8 | Rebase to 0.170 | ||
9 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | 11 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> |
10 | --- | 12 | --- |
11 | backends/Makefile.am | 8 +- | 13 | backends/Makefile.am | 8 +- |
@@ -23,25 +25,26 @@ Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | |||
23 | create mode 100644 backends/mips_symbol.c | 25 | create mode 100644 backends/mips_symbol.c |
24 | 26 | ||
25 | diff --git a/backends/Makefile.am b/backends/Makefile.am | 27 | diff --git a/backends/Makefile.am b/backends/Makefile.am |
26 | index 7f1f5d4..91baf6e 100644 | 28 | index 1e4b8e9..e7bccf8 100644 |
27 | --- a/backends/Makefile.am | 29 | --- a/backends/Makefile.am |
28 | +++ b/backends/Makefile.am | 30 | +++ b/backends/Makefile.am |
29 | @@ -33,12 +33,12 @@ AM_CPPFLAGS += -I$(top_srcdir)/libebl -I$(top_srcdir)/libasm \ | 31 | @@ -33,13 +33,13 @@ AM_CPPFLAGS += -I$(top_srcdir)/libebl -I$(top_srcdir)/libasm \ |
30 | 32 | ||
31 | 33 | ||
32 | modules = i386 sh x86_64 ia64 alpha arm aarch64 sparc ppc ppc64 s390 \ | 34 | modules = i386 sh x86_64 ia64 alpha arm aarch64 sparc ppc ppc64 s390 \ |
33 | - tilegx m68k bpf parisc | 35 | - tilegx m68k bpf riscv parisc |
34 | + tilegx m68k bpf parisc mips | 36 | + tilegx m68k bpf riscv parisc mips |
35 | libebl_pic = libebl_i386_pic.a libebl_sh_pic.a libebl_x86_64_pic.a \ | 37 | libebl_pic = libebl_i386_pic.a libebl_sh_pic.a libebl_x86_64_pic.a \ |
36 | libebl_ia64_pic.a libebl_alpha_pic.a libebl_arm_pic.a \ | 38 | libebl_ia64_pic.a libebl_alpha_pic.a libebl_arm_pic.a \ |
37 | libebl_aarch64_pic.a libebl_sparc_pic.a libebl_ppc_pic.a \ | 39 | libebl_aarch64_pic.a libebl_sparc_pic.a libebl_ppc_pic.a \ |
38 | libebl_ppc64_pic.a libebl_s390_pic.a libebl_tilegx_pic.a \ | 40 | libebl_ppc64_pic.a libebl_s390_pic.a libebl_tilegx_pic.a \ |
39 | - libebl_m68k_pic.a libebl_bpf_pic.a libebl_parisc_pic.a | 41 | libebl_m68k_pic.a libebl_bpf_pic.a libebl_riscv_pic.a \ |
40 | + libebl_m68k_pic.a libebl_bpf_pic.a libebl_parisc_pic.a libebl_mips_pic.a | 42 | - libebl_parisc_pic.a |
43 | + libebl_parisc_pic.a libebl_mips_pic.a | ||
41 | noinst_LIBRARIES = $(libebl_pic) | 44 | noinst_LIBRARIES = $(libebl_pic) |
42 | noinst_DATA = $(libebl_pic:_pic.a=.so) | 45 | noinst_DATA = $(libebl_pic:_pic.a=.so) |
43 | 46 | ||
44 | @@ -128,6 +128,10 @@ parisc_SRCS = parisc_init.c parisc_symbol.c parisc_regs.c parisc_retval.c | 47 | @@ -139,6 +139,10 @@ parisc_SRCS = parisc_init.c parisc_symbol.c parisc_regs.c parisc_retval.c |
45 | libebl_parisc_pic_a_SOURCES = $(parisc_SRCS) | 48 | libebl_parisc_pic_a_SOURCES = $(parisc_SRCS) |
46 | am_libebl_parisc_pic_a_OBJECTS = $(parisc_SRCS:.c=.os) | 49 | am_libebl_parisc_pic_a_OBJECTS = $(parisc_SRCS:.c=.os) |
47 | 50 | ||
@@ -698,7 +701,7 @@ index 0000000..ba465fe | |||
698 | + } | 701 | + } |
699 | +} | 702 | +} |
700 | diff --git a/libebl/eblopenbackend.c b/libebl/eblopenbackend.c | 703 | diff --git a/libebl/eblopenbackend.c b/libebl/eblopenbackend.c |
701 | index 1f81477..5371396 100644 | 704 | index 8b063f4..5405b0c 100644 |
702 | --- a/libebl/eblopenbackend.c | 705 | --- a/libebl/eblopenbackend.c |
703 | +++ b/libebl/eblopenbackend.c | 706 | +++ b/libebl/eblopenbackend.c |
704 | @@ -72,6 +72,8 @@ static const struct | 707 | @@ -72,6 +72,8 @@ static const struct |
@@ -711,5 +714,5 @@ index 1f81477..5371396 100644 | |||
711 | { "m32", "elf_m32", "m32", 3, EM_M32, 0, 0 }, | 714 | { "m32", "elf_m32", "m32", 3, EM_M32, 0, 0 }, |
712 | { "m68k", "elf_m68k", "m68k", 4, EM_68K, ELFCLASS32, ELFDATA2MSB }, | 715 | { "m68k", "elf_m68k", "m68k", 4, EM_68K, ELFCLASS32, ELFDATA2MSB }, |
713 | -- | 716 | -- |
714 | 1.8.3.1 | 717 | 2.7.4 |
715 | 718 | ||
diff --git a/meta/recipes-devtools/elfutils/files/debian/0001-mips_readelf_w.patch b/meta/recipes-devtools/elfutils/files/debian/0001-mips_readelf_w.patch new file mode 100644 index 0000000000..294944ea54 --- /dev/null +++ b/meta/recipes-devtools/elfutils/files/debian/0001-mips_readelf_w.patch | |||
@@ -0,0 +1,39 @@ | |||
1 | From a188ea1ada6b990b72b91266ae02da058dcd9523 Mon Sep 17 00:00:00 2001 | ||
2 | From: Kurt Roeckx <kurt@roeckx.be> | ||
3 | Date: Fri, 29 Jun 2018 15:49:32 +0800 | ||
4 | Subject: [PATCH] Make readelf -w output debug information on mips | ||
5 | |||
6 | Bug-Debian: http://bugs.debian.org/662041 | ||
7 | Forwarded: not-needed | ||
8 | |||
9 | Upstreams wants a change where this is handled by a hook that needs | ||
10 | to be filled in by the backend for the arch. | ||
11 | |||
12 | Signed-off-by: Kurt Roeckx <kurt@roeckx.be> | ||
13 | |||
14 | Upstream-Status: Backport from debian | ||
15 | mips_readelf_w.patch and rebase to 0.172 | ||
16 | |||
17 | http://ftp.de.debian.org/debian/pool/main/e/elfutils/elfutils_0.170-0.5.debian.tar.xz | ||
18 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | ||
19 | --- | ||
20 | src/readelf.c | 3 ++- | ||
21 | 1 file changed, 2 insertions(+), 1 deletion(-) | ||
22 | |||
23 | diff --git a/src/readelf.c b/src/readelf.c | ||
24 | index f185897..0db197c 100644 | ||
25 | --- a/src/readelf.c | ||
26 | +++ b/src/readelf.c | ||
27 | @@ -10979,7 +10979,8 @@ print_debug (Dwfl_Module *dwflmod, Ebl *ebl, GElf_Ehdr *ehdr) | ||
28 | GElf_Shdr shdr_mem; | ||
29 | GElf_Shdr *shdr = gelf_getshdr (scn, &shdr_mem); | ||
30 | |||
31 | - if (shdr != NULL && shdr->sh_type == SHT_PROGBITS) | ||
32 | + if (shdr != NULL && ( | ||
33 | + (shdr->sh_type == SHT_PROGBITS) || (shdr->sh_type == SHT_MIPS_DWARF))) | ||
34 | { | ||
35 | static const struct | ||
36 | { | ||
37 | -- | ||
38 | 2.7.4 | ||
39 | |||
diff --git a/meta/recipes-devtools/elfutils/files/debian/0001-testsuite-ignore-elflint.patch b/meta/recipes-devtools/elfutils/files/debian/0001-testsuite-ignore-elflint.patch new file mode 100644 index 0000000000..14f6909378 --- /dev/null +++ b/meta/recipes-devtools/elfutils/files/debian/0001-testsuite-ignore-elflint.patch | |||
@@ -0,0 +1,57 @@ | |||
1 | From fe7613a3b9f2443cc11917826348d4521f267c96 Mon Sep 17 00:00:00 2001 | ||
2 | From: Hongxu Jia <hongxu.jia@windriver.com> | ||
3 | Date: Fri, 29 Jun 2018 15:48:33 +0800 | ||
4 | Subject: [PATCH] testsuite ignore elflint | ||
5 | |||
6 | On many architectures this test fails because binaries/libs produced by | ||
7 | binutils don't pass elflint. However elfutils shouldn't FTBFS because of this. | ||
8 | |||
9 | So we run the tests on all archs to see what breaks, but if it breaks we ignore | ||
10 | the result (exitcode 77 means: this test was skipped). | ||
11 | |||
12 | Upstream-Status: Backport from debian | ||
13 | testsuite-ignore-elflint.diff and rebase to 0.172 | ||
14 | |||
15 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | ||
16 | --- | ||
17 | tests/run-elflint-self.sh | 2 +- | ||
18 | tests/test-subr.sh | 15 +++++++++++++++ | ||
19 | 2 files changed, 16 insertions(+), 1 deletion(-) | ||
20 | |||
21 | diff --git a/tests/run-elflint-self.sh b/tests/run-elflint-self.sh | ||
22 | index 58fa7d0..85d21a5 100755 | ||
23 | --- a/tests/run-elflint-self.sh | ||
24 | +++ b/tests/run-elflint-self.sh | ||
25 | @@ -18,5 +18,5 @@ | ||
26 | |||
27 | . $srcdir/test-subr.sh | ||
28 | |||
29 | -testrun_on_self ${abs_top_builddir}/src/elflint --quiet --gnu-ld | ||
30 | +testrun_on_self_skip ${abs_top_builddir}/src/elflint --quiet --gnu-ld | ||
31 | testrun_on_self_compressed ${abs_top_builddir}/src/elflint --quiet --gnu-ld | ||
32 | diff --git a/tests/test-subr.sh b/tests/test-subr.sh | ||
33 | index 09f428d..26f61f1 100644 | ||
34 | --- a/tests/test-subr.sh | ||
35 | +++ b/tests/test-subr.sh | ||
36 | @@ -201,3 +201,18 @@ testrun_on_self_quiet() | ||
37 | # Only exit if something failed | ||
38 | if test $exit_status != 0; then exit $exit_status; fi | ||
39 | } | ||
40 | + | ||
41 | +# Same as testrun_on_self(), but skip on failure. | ||
42 | +testrun_on_self_skip() | ||
43 | +{ | ||
44 | + exit_status=0 | ||
45 | + | ||
46 | + for file in $self_test_files; do | ||
47 | + testrun $* $file \ | ||
48 | + || { echo "*** failure in $* $file"; exit_status=77; } | ||
49 | + done | ||
50 | + | ||
51 | + # Only exit if something failed | ||
52 | + if test $exit_status != 0; then exit $exit_status; fi | ||
53 | +} | ||
54 | + | ||
55 | -- | ||
56 | 2.7.4 | ||
57 | |||
diff --git a/meta/recipes-devtools/elfutils/files/debian/0002-Add-support-for-mips64-abis-in-mips_retval.c.patch b/meta/recipes-devtools/elfutils/files/debian/0002-Add-support-for-mips64-abis-in-mips_retval.c.patch index b17498f5fa..72125c9ff0 100644 --- a/meta/recipes-devtools/elfutils/files/debian/0002-Add-support-for-mips64-abis-in-mips_retval.c.patch +++ b/meta/recipes-devtools/elfutils/files/debian/0002-Add-support-for-mips64-abis-in-mips_retval.c.patch | |||
@@ -4,9 +4,6 @@ Date: Mon, 5 Jan 2015 15:17:01 +0000 | |||
4 | Subject: [PATCH 2/3] Add support for mips64 abis in mips_retval.c | 4 | Subject: [PATCH 2/3] Add support for mips64 abis in mips_retval.c |
5 | 5 | ||
6 | Signed-off-by: James Cowgill <james410@cowgill.org.uk> | 6 | Signed-off-by: James Cowgill <james410@cowgill.org.uk> |
7 | |||
8 | Upstream-Status: Backport [from debian] | ||
9 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | ||
10 | --- | 7 | --- |
11 | backends/mips_retval.c | 104 ++++++++++++++++++++++++++++++++++++++++++++----- | 8 | backends/mips_retval.c | 104 ++++++++++++++++++++++++++++++++++++++++++++----- |
12 | 1 file changed, 94 insertions(+), 10 deletions(-) | 9 | 1 file changed, 94 insertions(+), 10 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 2a5f8628d9..6c0ae37fea 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 | |||
@@ -12,9 +12,6 @@ This patch also ensures that strip.c sets the correct value of e_machine | |||
12 | before manipulating relocations so that these changes take effect. | 12 | before manipulating relocations so that these changes take effect. |
13 | 13 | ||
14 | Signed-off-by: James Cowgill <james410@cowgill.org.uk> | 14 | Signed-off-by: James Cowgill <james410@cowgill.org.uk> |
15 | |||
16 | Upstream-Status: Backport [from debian] | ||
17 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | ||
18 | --- | 15 | --- |
19 | libelf/gelf_getrel.c | 25 +++++++++++++++++++++++-- | 16 | libelf/gelf_getrel.c | 25 +++++++++++++++++++++++-- |
20 | libelf/gelf_getrela.c | 25 +++++++++++++++++++++++-- | 17 | libelf/gelf_getrela.c | 25 +++++++++++++++++++++++-- |
@@ -203,7 +200,7 @@ Index: b/src/strip.c | |||
203 | =================================================================== | 200 | =================================================================== |
204 | --- a/src/strip.c | 201 | --- a/src/strip.c |
205 | +++ b/src/strip.c | 202 | +++ b/src/strip.c |
206 | @@ -532,6 +532,23 @@ handle_elf (int fd, Elf *elf, const char | 203 | @@ -598,6 +598,23 @@ handle_elf (int fd, Elf *elf, const char |
207 | goto fail; | 204 | goto fail; |
208 | } | 205 | } |
209 | 206 | ||
diff --git a/meta/recipes-devtools/elfutils/files/debian/hurd_path.patch b/meta/recipes-devtools/elfutils/files/debian/hurd_path.patch new file mode 100644 index 0000000000..4440e39e0a --- /dev/null +++ b/meta/recipes-devtools/elfutils/files/debian/hurd_path.patch | |||
@@ -0,0 +1,14 @@ | |||
1 | Index: elfutils-0.165/tests/run-native-test.sh | ||
2 | =================================================================== | ||
3 | --- elfutils-0.165.orig/tests/run-native-test.sh | ||
4 | +++ elfutils-0.165/tests/run-native-test.sh | ||
5 | @@ -83,6 +83,9 @@ native_test() | ||
6 | # "cannot attach to process: Function not implemented". | ||
7 | [ "$(uname)" = "GNU/kFreeBSD" ] && exit 77 | ||
8 | |||
9 | +# hurd's /proc/$PID/maps does not give paths yet. | ||
10 | +[ "$(uname)" = "GNU" ] && exit 77 | ||
11 | + | ||
12 | native_test ${abs_builddir}/allregs | ||
13 | native_test ${abs_builddir}/funcretval | ||
14 | |||
diff --git a/meta/recipes-devtools/elfutils/files/debian/ignore_strmerge.diff b/meta/recipes-devtools/elfutils/files/debian/ignore_strmerge.diff new file mode 100644 index 0000000000..1e6d7a2de6 --- /dev/null +++ b/meta/recipes-devtools/elfutils/files/debian/ignore_strmerge.diff | |||
@@ -0,0 +1,11 @@ | |||
1 | --- elfutils-0.165.orig/tests/run-strip-strmerge.sh | ||
2 | +++ elfutils-0.165/tests/run-strip-strmerge.sh | ||
3 | @@ -30,7 +30,7 @@ remerged=remerged.elf | ||
4 | tempfiles $merged $stripped $debugfile $remerged | ||
5 | |||
6 | echo elflint $input | ||
7 | -testrun ${abs_top_builddir}/src/elflint --gnu $input | ||
8 | +testrun_on_self_skip ${abs_top_builddir}/src/elflint --gnu $input | ||
9 | echo elfstrmerge | ||
10 | testrun ${abs_top_builddir}/tests/elfstrmerge -o $merged $input | ||
11 | echo elflint $merged | ||
diff --git a/meta/recipes-devtools/elfutils/files/debian/kfreebsd_path.patch b/meta/recipes-devtools/elfutils/files/debian/kfreebsd_path.patch new file mode 100644 index 0000000000..9a19b58b50 --- /dev/null +++ b/meta/recipes-devtools/elfutils/files/debian/kfreebsd_path.patch | |||
@@ -0,0 +1,17 @@ | |||
1 | Index: b/tests/run-native-test.sh | ||
2 | =================================================================== | ||
3 | --- a/tests/run-native-test.sh | ||
4 | +++ b/tests/run-native-test.sh | ||
5 | @@ -77,6 +77,12 @@ native_test() | ||
6 | test $native -eq 0 || testrun "$@" -p $native > /dev/null | ||
7 | } | ||
8 | |||
9 | +# On the Debian buildds, GNU/kFreeBSD linprocfs /proc/$PID/maps does | ||
10 | +# not give absolute paths due to sbuild's bind mounts (bug #570805) | ||
11 | +# therefore the next two test programs are expected to fail with | ||
12 | +# "cannot attach to process: Function not implemented". | ||
13 | +[ "$(uname)" = "GNU/kFreeBSD" ] && exit 77 | ||
14 | + | ||
15 | native_test ${abs_builddir}/allregs | ||
16 | native_test ${abs_builddir}/funcretval | ||
17 | |||
diff --git a/meta/recipes-devtools/elfutils/files/debian/mips_readelf_w.patch b/meta/recipes-devtools/elfutils/files/debian/mips_readelf_w.patch deleted file mode 100644 index 790930cf35..0000000000 --- a/meta/recipes-devtools/elfutils/files/debian/mips_readelf_w.patch +++ /dev/null | |||
@@ -1,25 +0,0 @@ | |||
1 | From: Kurt Roeckx <kurt@roeckx.be> | ||
2 | Subject: Make readelf -w output debug information on mips | ||
3 | Bug-Debian: http://bugs.debian.org/662041 | ||
4 | Forwarded: not-needed | ||
5 | |||
6 | Upstreams wants a change where this is handled by a hook that needs | ||
7 | to be filled in by the backend for the arch. | ||
8 | |||
9 | Upstream-Status: Backport [from debian] | ||
10 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | ||
11 | |||
12 | Index: b/src/readelf.c | ||
13 | =================================================================== | ||
14 | --- a/src/readelf.c | ||
15 | +++ b/src/readelf.c | ||
16 | @@ -8343,7 +8343,8 @@ print_debug (Dwfl_Module *dwflmod, Ebl * | ||
17 | GElf_Shdr shdr_mem; | ||
18 | GElf_Shdr *shdr = gelf_getshdr (scn, &shdr_mem); | ||
19 | |||
20 | - if (shdr != NULL && shdr->sh_type == SHT_PROGBITS) | ||
21 | + if (shdr != NULL && ( | ||
22 | + (shdr->sh_type == SHT_PROGBITS) || (shdr->sh_type == SHT_MIPS_DWARF))) | ||
23 | { | ||
24 | static const struct | ||
25 | { | ||