annotate core/elfutils/musl.patch @ 549:bad483aace64

vanilla: use prefix= instead
author David Demelier <markand@malikania.fr>
date Sun, 23 Jun 2019 15:13:10 +0200
parents 5f0dfff1e37a
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
113
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
1 It looks like fregs.vregs[] is an array of double?
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
2 Casting to Dwarf_Word instead of & 0xFFFFFFF should do.
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
3
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
4 --- backends/aarch64_initreg.c 2015-11-27 14:36:29.000000000 +0100
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
5 +++ backends/aarch64_initreg.c 2016-08-09 03:47:25.428560159 +0200
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
6 @@ -82,7 +83,7 @@
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
7
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
8 Dwarf_Word dwarf_fregs[32];
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
9 for (int r = 0; r < 32; r++)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
10 - dwarf_fregs[r] = fregs.vregs[r] & 0xFFFFFFFF;
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
11 + dwarf_fregs[r] = (Dwarf_Word)fregs.vregs[r];
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
12
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
13 if (! setfunc (64, 32, dwarf_fregs, arg))
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
14 return false;
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
15
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
16 --- libcpu/i386_disasm.c 2015-08-21 14:22:37.000000000 +0200
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
17 +++ libcpu/i386_disasm.c 2015-11-20 06:30:59.250629957 +0100
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
18 @@ -1,4 +1,4 @@
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
19 -/* Disassembler for x86.
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
20 +/* Disassembler for x86.
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
21 Copyright (C) 2007, 2008, 2009, 2011 Red Hat, Inc.
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
22 This file is part of elfutils.
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
23 Written by Ulrich Drepper <drepper@redhat.com>, 2007.
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
24 @@ -710,6 +710,7 @@
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
25
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
26 case 'm':
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
27 /* Mnemonic. */
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
28 + str = mnebuf;
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
29
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
30 if (unlikely (instrtab[cnt].mnemonic == MNE_INVALID))
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
31 {
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
32 --- libelf/elf.h 2015-08-21 14:22:37.000000000 +0200
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
33 +++ libelf/elf.h 2015-11-20 04:54:33.948081321 +0100
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
34 @@ -21,6 +21,17 @@
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
35
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
36 #include <features.h>
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
37
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
38 +#if !defined(__GLIBC__)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
39 +/* C++ needs to know that types and declarations are C, not C++. */
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
40 +#ifdef __cplusplus
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
41 +# define __BEGIN_DECLS extern "C" {
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
42 +# define __END_DECLS }
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
43 +#else
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
44 +# define __BEGIN_DECLS
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
45 +# define __END_DECLS
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
46 +#endif
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
47 +#endif
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
48 +
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
49 __BEGIN_DECLS
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
50
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
51 /* Standard ELF types. */
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
52 --- lib/fixedsizehash.h.orig
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
53 +++ lib/fixedsizehash.h
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
54 @@ -30,7 +30,6 @@
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
55 #include <errno.h>
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
56 #include <stdlib.h>
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
57 #include <string.h>
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
58 -#include <sys/cdefs.h>
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
59
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
60 #include <system.h>
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
61
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
62 --- configure.ac 2015-10-15 15:16:57.000000000 +0200
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
63 +++ configure.ac 2015-11-20 05:32:57.723901582 +0100
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
64 @@ -305,6 +305,62 @@
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
65 fi
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
66 AC_SUBST([argp_LDADD])
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
67
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
68 +dnl Check if we have fts available from our libc
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
69 +AC_LINK_IFELSE(
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
70 + [AC_LANG_PROGRAM(
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
71 + [#if !defined(__x86_64__)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
72 + #undef _FILE_OFFSET_BITS
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
73 + #define _FILE_OFFSET_BITS 32
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
74 + #endif
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
75 + #include <fts.h>],
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
76 + [FTS* fts = 0; return fts_close(fts); return 0;]
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
77 + )],
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
78 + [libc_has_fts="true"],
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
79 + [libc_has_fts="false"]
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
80 +)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
81 +
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
82 +dnl If our libc doesn't provide fts, then test for libfts
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
83 +if test "$libc_has_fts" = "false" ; then
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
84 + AC_MSG_WARN("libc does not have fts")
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
85 + AC_CHECK_LIB([fts], [fts_close], [have_fts="true"], [have_fts="false"])
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
86 +
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
87 + if test "$have_fts" = "false"; then
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
88 + AC_MSG_ERROR("no libfts found")
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
89 + else
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
90 + fts_LDADD="-lfts"
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
91 + fi
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
92 +else
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
93 + fts_LDADD=""
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
94 +fi
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
95 +AC_SUBST([fts_LDADD])
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
96 +
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
97 +dnl Check if we have obstack available from our libc
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
98 +AC_LINK_IFELSE(
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
99 + [AC_LANG_PROGRAM(
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
100 + [#include <obstack.h>],
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
101 + [_obstack_begin(0, 0, 0, NULL, NULL); return 0;]
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
102 + )],
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
103 + [libc_has_obstack="true"],
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
104 + [libc_has_obstack="false"]
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
105 +)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
106 +
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
107 +dnl If our libc doesn't provide obstack, then test for libobstack
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
108 +if test "$libc_has_obstack" = "false" ; then
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
109 + AC_MSG_WARN("libc does not have obstack")
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
110 + AC_CHECK_LIB([obstack], [_obstack_begin], [have_obstack="true"], [have_obstack="false"])
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
111 +
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
112 + if test "$have_obstack" = "false"; then
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
113 + AC_MSG_ERROR("no libobstack found")
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
114 + else
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
115 + obstack_LDADD="-lobstack"
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
116 + fi
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
117 +else
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
118 + obstack_LDADD=""
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
119 +fi
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
120 +AC_SUBST([obstack_LDADD])
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
121 +
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
122 +dnl The directories with content.
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
123 +
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
124 dnl The directories with content.
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
125
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
126 dnl Documentation.
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
127 --- src/Makefile.am.orig 2016-08-29 21:38:11.179295769 +0200
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
128 +++ src/Makefile.am 2016-08-03 18:19:47.000000000 +0200
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
129 @@ -67,22 +67,22 @@
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
130 ar_no_Wstack_usage = yes
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
131 unstrip_no_Wstack_usage = yes
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
132
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
133 +readelf_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) $(argp_LDADD) $(fts_LDADD) $(obstack_LDADD) -ldl
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
134 +nm_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) $(argp_LDADD) $(fts_LDADD) $(obstack_LDADD) -ldl \
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
135 -readelf_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) $(argp_LDADD) -ldl
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
136 -nm_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) $(argp_LDADD) -ldl \
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
137 $(demanglelib)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
138 +size_LDADD = $(libelf) $(libeu) $(argp_LDADD) $(fts_LDADD) $(obstack_LDADD)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
139 +strip_LDADD = $(libebl) $(libelf) $(libdw) $(libeu) $(argp_LDADD) $(fts_LDADD) $(obstack_LDADD) -ldl
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
140 +elflint_LDADD = $(libebl) $(libelf) $(libeu) $(argp_LDADD) $(fts_LDADD) $(obstack_LDADD) -ldl
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
141 +findtextrel_LDADD = $(libdw) $(libelf) $(libeu) $(argp_LDADD) $(fts_LDADD) $(obstack_LDADD)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
142 +addr2line_LDADD = $(libdw) $(libelf) $(libeu) $(argp_LDADD) $(fts_LDADD) $(obstack_LDADD) $(demanglelib)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
143 +elfcmp_LDADD = $(libebl) $(libelf) $(libeu) $(argp_LDADD) $(fts_LDADD) $(obstack_LDADD) -ldl
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
144 -size_LDADD = $(libelf) $(libeu) $(argp_LDADD)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
145 -strip_LDADD = $(libebl) $(libelf) $(libdw) $(libeu) $(argp_LDADD) -ldl
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
146 -elflint_LDADD = $(libebl) $(libelf) $(libeu) $(argp_LDADD) -ldl
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
147 -findtextrel_LDADD = $(libdw) $(libelf) $(libeu) $(argp_LDADD)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
148 -addr2line_LDADD = $(libdw) $(libelf) $(libeu) $(argp_LDADD) $(demanglelib)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
149 -elfcmp_LDADD = $(libebl) $(libelf) $(libeu) $(argp_LDADD) -ldl
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
150 objdump_LDADD = $(libasm) $(libebl) $(libelf) $(libeu) $(argp_LDADD) -ldl
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
151 +ranlib_LDADD = libar.a $(libelf) $(libeu) $(argp_LDADD) $(fts_LDADD) $(obstack_LDADD)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
152 +strings_LDADD = $(libelf) $(libeu) $(argp_LDADD) $(fts_LDADD) $(obstack_LDADD)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
153 +ar_LDADD = libar.a $(libelf) $(libeu) $(argp_LDADD) $(fts_LDADD) $(obstack_LDADD)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
154 +unstrip_LDADD = $(libebl) $(libelf) $(libdw) $(libeu) $(argp_LDADD) $(fts_LDADD) $(obstack_LDADD) -ldl
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
155 +stack_LDADD = $(libebl) $(libelf) $(libdw) $(libeu) $(argp_LDADD) $(fts_LDADD) $(obstack_LDADD) -ldl $(demanglelib)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
156 +elfcompress_LDADD = $(libebl) $(libelf) $(libdw) $(libeu) $(argp_LDADD) $(fts_LDADD) $(obstack_LDADD)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
157 -ranlib_LDADD = libar.a $(libelf) $(libeu) $(argp_LDADD)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
158 -strings_LDADD = $(libelf) $(libeu) $(argp_LDADD)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
159 -ar_LDADD = libar.a $(libelf) $(libeu) $(argp_LDADD)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
160 -unstrip_LDADD = $(libebl) $(libelf) $(libdw) $(libeu) $(argp_LDADD) -ldl
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
161 -stack_LDADD = $(libebl) $(libelf) $(libdw) $(libeu) $(argp_LDADD) -ldl $(demanglelib)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
162 -elfcompress_LDADD = $(libebl) $(libelf) $(libdw) $(libeu) $(argp_LDADD)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
163
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
164 installcheck-binPROGRAMS: $(bin_PROGRAMS)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
165 bad=0; pid=$$$$; list="$(bin_PROGRAMS)"; for p in $$list; do \
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
166 --- libdw/Makefile.am.orig 2017-08-05 01:41:04.103553705 +0000
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
167 +++ libdw/Makefile.am 2017-08-05 01:43:55.366543497 +0000
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
168 @@ -105,7 +105,7 @@
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
169 libdw_so_LIBS = libdw_pic.a ../libdwelf/libdwelf_pic.a \
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
170 ../libdwfl/libdwfl_pic.a ../libebl/libebl.a
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
171 libdw_so_DEPS = ../lib/libeu.a ../libelf/libelf.so
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
172 -libdw_so_LDLIBS = $(libdw_so_DEPS) -ldl -lz $(argp_LDADD) $(zip_LIBS)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
173 +libdw_so_LDLIBS = $(libdw_so_DEPS) -ldl -lz $(argp_LDADD) $(fts_LDADD) $(obstack_LDADD) $(zip_LIBS)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
174 libdw_so_SOURCES =
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
175 libdw.so$(EXEEXT): $(srcdir)/libdw.map $(libdw_so_LIBS) $(libdw_so_DEPS)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
176 # The rpath is necessary for libebl because its $ORIGIN use will
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
177 --- src/arlib.h 2015-08-21 14:22:37.000000000 +0200
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
178 +++ src/arlib.h 2015-11-20 08:02:55.153199611 +0100
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
179 @@ -29,6 +29,16 @@
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
180 #include <stdint.h>
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
181 #include <sys/types.h>
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
182
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
183 +#if !defined(ACCESSPERMS)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
184 +# define ACCESSPERMS (S_IRWXU|S_IRWXG|S_IRWXO) /* 0777 */
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
185 +#endif
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
186 +#if !defined(ALLPERMS)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
187 +# define ALLPERMS (S_ISUID|S_ISGID|S_ISVTX|S_IRWXU|S_IRWXG|S_IRWXO) /* 07777 */
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
188 +#endif
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
189 +#if !defined(DEFFILEMODE)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
190 +# define DEFFILEMODE (S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH)/* 0666*/
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
191 +#endif
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
192 +
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
193
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
194 /* State of -D/-U flags. */
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
195 extern bool arlib_deterministic_output;
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
196 --- src/elfcompress.c.orig 2016-04-02 12:51:26.903848894 +0200
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
197 +++ src/elfcompress.c 2016-04-02 12:55:15.076996338 +0200
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
198 @@ -35,6 +35,14 @@
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
199 #include <gelf.h>
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
200 #include "system.h"
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
201
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
202 +#if !defined(FNM_EXTMATCH)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
203 +# define FNM_EXTMATCH 0
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
204 +#endif
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
205 +
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
206 +#if !defined(ALLPERMS)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
207 +# define ALLPERMS (S_ISUID|S_ISGID|S_ISVTX|S_IRWXU|S_IRWXG|S_IRWXO) /* 07777 */
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
208 +#endif
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
209 +
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
210 /* Name and version of program. */
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
211 static void print_version (FILE *stream, struct argp_state *state);
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
212 ARGP_PROGRAM_VERSION_HOOK_DEF = print_version;
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
213 --- src/strip.c.orig 2017-08-02 12:06:25.000000000 +0000
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
214 +++ src/strip.c 2017-08-05 01:58:01.523493062 +0000
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
215 @@ -47,6 +47,14 @@
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
216 #include <system.h>
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
217 #include <printversion.h>
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
218
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
219 +#if !defined(FNM_EXTMATCH)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
220 +# define FNM_EXTMATCH 0
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
221 +#endif
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
222 +
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
223 +#if !defined(ACCESSPERMS)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
224 +#define ACCESSPERMS (S_IRWXU|S_IRWXG|S_IRWXO)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
225 +#endif
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
226 +
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
227 typedef uint8_t GElf_Byte;
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
228
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
229 /* Name and version of program. */
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
230 --- src/readelf.c
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
231 +++ src/readelf.c
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
232 @@ -4773,10 +4773,11 @@ listptr_base (struct listptr *p)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
233 return cudie_base (&cu);
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
234 }
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
235
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
236 +static const char *listptr_name;
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
237 +
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
238 static int
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
239 -compare_listptr (const void *a, const void *b, void *arg)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
240 +compare_listptr (const void *a, const void *b)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
241 {
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
242 - const char *name = arg;
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
243 struct listptr *p1 = (void *) a;
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
244 struct listptr *p2 = (void *) b;
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
245
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
246 @@ -4792,21 +4793,21 @@ compare_listptr (const void *a, const void *b, void *arg)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
247 p1->warned = p2->warned = true;
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
248 error (0, 0,
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
249 gettext ("%s %#" PRIx64 " used with different address sizes"),
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
250 - name, (uint64_t) p1->offset);
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
251 + listptr_name, (uint64_t) p1->offset);
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
252 }
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
253 if (p1->dwarf64 != p2->dwarf64)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
254 {
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
255 p1->warned = p2->warned = true;
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
256 error (0, 0,
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
257 gettext ("%s %#" PRIx64 " used with different offset sizes"),
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
258 - name, (uint64_t) p1->offset);
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
259 + listptr_name, (uint64_t) p1->offset);
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
260 }
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
261 if (listptr_base (p1) != listptr_base (p2))
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
262 {
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
263 p1->warned = p2->warned = true;
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
264 error (0, 0,
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
265 gettext ("%s %#" PRIx64 " used with different base addresses"),
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
266 - name, (uint64_t) p1->offset);
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
267 + listptr_name, (uint64_t) p1->offset);
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
268 }
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
269 if (p1->attr != p2 ->attr)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
270 {
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
271 @@ -4814,7 +4815,7 @@ compare_listptr (const void *a, const void *b, void *arg)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
272 error (0, 0,
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
273 gettext ("%s %#" PRIx64
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
274 " used with different attribute %s and %s"),
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
275 - name, (uint64_t) p1->offset, dwarf_attr_name (p2->attr),
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
276 + listptr_name, (uint64_t) p1->offset, dwarf_attr_name (p2->attr),
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
277 dwarf_attr_name (p2->attr));
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
278 }
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
279 }
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
280 @@ -4885,9 +4886,11 @@ notice_listptr (enum section_e section, struct listptr_table *table,
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
281 static void
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
282 sort_listptr (struct listptr_table *table, const char *name)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
283 {
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
284 - if (table->n > 0)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
285 - qsort_r (table->table, table->n, sizeof table->table[0],
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
286 - &compare_listptr, (void *) name);
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
287 + if (table->n > 0) {
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
288 + listptr_name = name;
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
289 + qsort (table->table, table->n, sizeof table->table[0],
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
290 + &compare_listptr);
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
291 + }
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
292 }
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
293
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
294 static bool
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
295 --- libdwfl/dwfl_error.c 2015-09-29 17:18:51.000000000 +0200
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
296 +++ libdwfl/dwfl_error.c 2015-11-20 05:11:29.889002058 +0100
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
297 @@ -154,7 +154,16 @@
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
298 switch (error &~ 0xffff)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
299 {
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
300 case OTHER_ERROR (ERRNO):
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
301 +#if defined(__GLIBC__)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
302 return strerror_r (error & 0xffff, "bad", 0);
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
303 +#else
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
304 + {
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
305 + static __thread char buf[128] = "";
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
306 + if (0 == strerror_r(error & 0xffff, buf, sizeof(buf)))
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
307 + return buf;
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
308 + }
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
309 + return "strerror_r() failed";
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
310 +#endif
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
311 case OTHER_ERROR (LIBELF):
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
312 return elf_errmsg (error & 0xffff);
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
313 case OTHER_ERROR (LIBDW):
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
314 --- src/unstrip.c.orig 2017-04-27 14:26:26.000000000 +0000
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
315 +++ src/unstrip.c 2017-05-05 15:51:33.515154220 +0000
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
316 @@ -56,6 +56,15 @@
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
317 # define _(str) gettext (str)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
318 #endif
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
319
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
320 +#ifndef strndupa
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
321 +#define strndupa(s, n) \
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
322 + (__extension__ ({const char *__in = (s); \
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
323 + size_t __len = strnlen (__in, (n)) + 1; \
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
324 + char *__out = (char *) alloca (__len); \
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
325 + __out[__len-1] = '\0'; \
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
326 + (char *) memcpy (__out, __in, __len-1);}))
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
327 +#endif
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
328 +
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
329 /* Name and version of program. */
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
330 ARGP_PROGRAM_VERSION_HOOK_DEF = print_version;
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
331
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
332 --- /dev/null 2019-03-09 09:00:22.527999555 +0100
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
333 +++ src/error.h 2019-03-09 16:37:44.828481636 +0100
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
334 @@ -0,0 +1,27 @@
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
335 +#ifndef _ERROR_H_
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
336 +#define _ERROR_H_
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
337 +
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
338 +#include <stdarg.h>
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
339 +#include <stdio.h>
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
340 +#include <stdlib.h>
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
341 +#include <string.h>
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
342 +#include <errno.h>
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
343 +
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
344 +static unsigned int error_message_count = 0;
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
345 +
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
346 +static inline void error(int status, int errnum, const char* format, ...)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
347 +{
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
348 + va_list ap;
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
349 + fprintf(stderr, "%s: ", program_invocation_name);
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
350 + va_start(ap, format);
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
351 + vfprintf(stderr, format, ap);
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
352 + va_end(ap);
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
353 + if (errnum)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
354 + fprintf(stderr, ": %s", strerror(errnum));
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
355 + fprintf(stderr, "\n");
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
356 + error_message_count++;
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
357 + if (status)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
358 + exit(status);
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
359 +}
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
360 +
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
361 +#endif /* _ERROR_H_ */
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
362 --- /dev/null 2019-03-09 09:00:22.527999555 +0100
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
363 +++ lib/error.h 2019-03-09 16:37:46.732481531 +0100
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
364 @@ -0,0 +1,27 @@
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
365 +#ifndef _ERROR_H_
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
366 +#define _ERROR_H_
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
367 +
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
368 +#include <stdarg.h>
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
369 +#include <stdio.h>
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
370 +#include <stdlib.h>
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
371 +#include <string.h>
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
372 +#include <errno.h>
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
373 +
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
374 +static unsigned int error_message_count = 0;
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
375 +
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
376 +static inline void error(int status, int errnum, const char* format, ...)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
377 +{
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
378 + va_list ap;
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
379 + fprintf(stderr, "%s: ", program_invocation_name);
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
380 + va_start(ap, format);
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
381 + vfprintf(stderr, format, ap);
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
382 + va_end(ap);
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
383 + if (errnum)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
384 + fprintf(stderr, ": %s", strerror(errnum));
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
385 + fprintf(stderr, "\n");
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
386 + error_message_count++;
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
387 + if (status)
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
388 + exit(status);
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
389 +}
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
390 +
2d954d043296 core/elfutils: initial import, closes #1142
David Demelier <markand@malikania.fr>
parents:
diff changeset
391 +#endif /* _ERROR_H_ */
132
5f0dfff1e37a core/elfutils: add necessary changes to build with musl
David Demelier <markand@malikania.fr>
parents: 113
diff changeset
392 --- /dev/null 2019-03-10 12:27:13.816667173 +0100
5f0dfff1e37a core/elfutils: add necessary changes to build with musl
David Demelier <markand@malikania.fr>
parents: 113
diff changeset
393 +++ lib/libintl.h 2019-03-10 19:04:03.646840388 +0100
5f0dfff1e37a core/elfutils: add necessary changes to build with musl
David Demelier <markand@malikania.fr>
parents: 113
diff changeset
394 @@ -0,0 +1,6 @@
5f0dfff1e37a core/elfutils: add necessary changes to build with musl
David Demelier <markand@malikania.fr>
parents: 113
diff changeset
395 +#ifndef LIBINTL_H
5f0dfff1e37a core/elfutils: add necessary changes to build with musl
David Demelier <markand@malikania.fr>
parents: 113
diff changeset
396 +#define LIBINTL_H
5f0dfff1e37a core/elfutils: add necessary changes to build with musl
David Demelier <markand@malikania.fr>
parents: 113
diff changeset
397 +
5f0dfff1e37a core/elfutils: add necessary changes to build with musl
David Demelier <markand@malikania.fr>
parents: 113
diff changeset
398 +#define _(x) (x)
5f0dfff1e37a core/elfutils: add necessary changes to build with musl
David Demelier <markand@malikania.fr>
parents: 113
diff changeset
399 +
5f0dfff1e37a core/elfutils: add necessary changes to build with musl
David Demelier <markand@malikania.fr>
parents: 113
diff changeset
400 +#endif