Imported Upstream version 0.153
[platform/upstream/elfutils.git] / libebl / ChangeLog
1 2011-04-26  Mark Wielaard  <mjw@redhat.com>
2
3         * libebl.h (ebl_object_note_type_name): Add const char *name arg.
4         * eblhooks.h (object_note_type_name): Likewise.
5         * eblopenbackend.c (default_object_note_type_name): Likewise.
6         * eblobjnotetypename.c (ebl_object_note_type_name): Likewise.
7         And print version if name is "stapsdt".
8         * eblobjnote.c (ebl_object_note): Add output for "stapsdt" notes.
9
10 2011-03-21  Marek Polacek  <mpolacek@redhat.com>
11
12         * ebldynamictagname.c: Fix typo in TLSDESC_GOT.
13
14 2011-03-10  Mark Wielaard  <mjw@redhat.com>
15
16         * Makefile.am (gen_SOURCES): Add eblstother.c.
17         * eblstother.c: New file.
18         * ebl-hooks.h: Add check_st_other_bits hook.
19         * eblopenbackend.c (default_check_st_other_bits): New function.
20         (fill_defaults): Hook default_check_st_other_bits.
21         * libebl.h (ebl_check_st_other_bits): New prototype.
22
23 2010-07-07  Roland McGrath  <roland@redhat.com>
24
25         * eblopenbackend.c (default_debugscn_p): Match .gdb_index section.
26
27 2010-02-15  Roland McGrath  <roland@redhat.com>
28
29         * Makefile.am: Use config/eu.am for common stuff.
30
31 2010-01-04  Roland McGrath  <roland@redhat.com>
32
33         * eblcorenote.c (ebl_core_note): Take GElf_Nhdr * and name data
34         pointer instead of only n_type and n_descsz.
35         * libebl.h: Update declaration.
36         * ebl-hooks.h: Update core_note hook signature.
37         * eblopenbackend.c (default_core_note): Likewise.
38
39 2009-10-14  Roland McGrath  <roland@redhat.com>
40
41         * eblobjnote.c (ebl_object_note): Clean up NT_GNU_GOLD_VERSION printing.
42
43 2009-10-05  Roland McGrath  <roland@redhat.com>
44
45         * eblopenbackend.c (default_debugscn_p): Match .debug_pubtypes and
46         .debug_types too.
47
48 2009-09-02  Petr Machata  <pmachata@redhat.com>
49
50         * libebl/eblstrtab.c (morememory): Allocate memory in multiples of
51         pagesize.
52
53 2009-08-06  Petr Machata  <pmachata@redhat.com>
54
55         * libebl/eblstrtab.c (ebl_strtabfinalize): Only call copystrings
56         if we have any strings to copy.
57
58 2009-07-26  Mark Wielaard  <mjw@redhat.com>
59
60         * eblobjnote.c (ebl_object_note): Handle NT_GNU_GOLD_VERSION.
61
62         * eblobjnotetypename.c (ebl_object_note_type_name): Recognize
63         NT_GNU_GOLD_VERSION.
64
65 2009-07-08  Roland McGrath  <roland@redhat.com>
66
67         * ebl-hooks.h: Add abi_cfi hook.
68         * eblopenbackend.c (default_abi_cfi): New function.
69         (fill_defaults): Add initializer.
70         * eblabicfi.c: New file.
71         * Makefile.am (gen_SOURCES): Add it.
72         * libebl.h: Declare ebl_abi_cfi.
73
74 2009-07-08  Ulrich Drepper  <drepper@redhat.com>
75
76         * eblsymbolbindingname.c (ebl_symbol_binding_name): Handle
77         STB_GNU_UNIQUE.
78
79         * eblsymboltypename.c (ebl_symbol_type_name): Only handle STT_GNU_IFUNC
80         if the binary is marked as being for Linux.
81
82 2009-04-01  Roland McGrath  <roland@redhat.com>
83
84         * eblsymboltypename.c (ebl_symbol_type_name): Add STT_GNU_IFUNC.
85
86         * eblauxvinfo.c (AUXV_TYPES): Add RANDOM and BASE_PLATFORM.
87
88 2009-02-01  Ulrich Drepper  <drepper@redhat.com>
89
90         * eblreloctypename.c (ebl_reloc_type_name): Return "<INVALID RELOC>"
91         instead of "???" for invalid relocations.
92
93 2008-08-01  Roland McGrath  <roland@redhat.com>
94
95         * eblcorenotetypename.c: Handle NT_386_IOPERM.
96
97 2008-07-28  Roland McGrath  <roland@redhat.com>
98
99         * eblauxvinfo.c (AUXV_TYPES): Add EXECFN.
100
101         * eblauxvinfo.c (ebl_auxv_info): Handle missing elements of standard
102         table.
103
104 2008-07-04  Roland McGrath  <roland@redhat.com>
105
106         * libebl.h: Declare ebl_syscall_abi.
107         * ebl_syscall_abi.c: New file.
108         * Makefile.am (gen_SOURCES): Add it.
109         * ebl-hooks.h: New hook syscall_abi.
110         * eblopenbackend.c (default_syscall_abi): New function.
111         (fill_defaults): Use it.
112
113 2008-03-31  Roland McGrath  <roland@redhat.com>
114
115         * ebldynamictagname.c (ebl_dynamic_tag_name): Use hex for unknown tag.
116
117         * ebl-hooks.h: Add check_special_section hook.
118         * eblopenbackend.c (fill_defaults): Set new hook to ...
119         (default_check_special_section): ... this, new function.
120         * ebl_check_special_section.c: New file.
121         * Makefile.am (gen_SOURCES): Add it.
122         * libebl.h: Declare it.
123
124 2008-02-20  Roland McGrath  <roland@redhat.com>
125
126         * libebl.h: Declare ebl_check_object_attribute.
127         * eblcheckobjattr.c: New file.
128         * Makefile.am (gen_SOURCES): Add it.
129         * ebl-hooks.h: Add check_object_attribute hook.
130         * eblopenbackend.c (default_check_object_attribute): New function.
131         (fill_defaults): Initialize pointer to it.
132
133 2008-02-19  Roland McGrath  <roland@redhat.com>
134
135         * eblsectiontypename.c (ebl_section_type_name):
136         Handle SHT_GNU_ATTRIBUTES.
137
138 2008-02-08  Roland McGrath  <roland@redhat.com>
139
140         * eblcorenotetypename.c (ebl_core_note_type_name): Handle NT_PPC_SPE.
141
142 2008-01-30  Roland McGrath  <roland@redhat.com>
143
144         * eblcorenotetypename.c (ebl_core_note_type_name): Handle NT_386_TLS.
145
146 2007-10-18  Roland McGrath  <roland@redhat.com>
147
148         * eblcorenotetypename.c (ebl_core_note_type_name): Handle NT_PPC_VMX.
149
150 2007-10-11  Roland McGrath  <roland@redhat.com>
151
152         * eblobjnote.c (ebl_object_note): Translate target format (byte-swap)
153         for NT_GNU_ABI_TAG contents.
154
155 2007-08-22  Roland McGrath  <roland@redhat.com>
156
157         * libebl.h (Ebl_Core_Item): New member `group'.
158
159 2007-08-19  Roland McGrath  <roland@redhat.com>
160
161         * ebl-hooks.h: Add new hook auxv_info.
162         * eblopenbackend.c (default_auxv_info): New function.
163         (fill_defaults): Initialize auxv_info hook.
164         * eblauxvinfo.c : New file.
165         * Makefile.am (gen_SOURCES): Add it.
166         * libebl.h: Declare ebl_auxv_info.
167
168         * eblcorenote.c: Rewritten with new signature.
169         * Makefile.am (gen_SOURCES): Add it.
170         * libebl.h (Ebl_Register_Location, Ebl_Core_Item): New types.
171         (ebl_core_note_info): Completely revamp signature.
172         * ebl-hooks.h: Update decl.
173         * eblopenbackend.c (default_core_note): Update signature.
174
175 2007-07-09  Roland McGrath  <roland@redhat.com>
176
177         * eblobjnotetypename.c (ebl_object_note_type_name): Handle
178         NT_GNU_HWCAP, NT_GNU_BUILD_ID.
179
180         * eblobjnote.c (ebl_object_note): Handle NT_GNU_BUILD_ID.
181
182 2007-04-22  Roland McGrath  <roland@redhat.com>
183
184         * eblcorenotetypename.c (ebl_core_note_type_name): Handle NT_PRXFPREG.
185
186 2007-03-10  Roland McGrath  <roland@redhat.com>
187
188         * eblcorenote.c (ebl_core_note): For normally-zero types,
189         print in hex if not zero.
190
191 2007-01-11  Roland McGrath  <roland@redhat.com>
192
193         * ebl-hooks.h (machine_section_flag_check): New hook.
194         * libebl.h: Declare ebl_machine_section_flag_check.
195         * eblmachinesectionflagcheck.c: New file.
196         * Makefile.am (gen_SOURCES): Add it.
197         * eblopenbackend.c (default_machine_section_flag_check): New function.
198         (fill_defaults): Use it.
199
200 2006-09-04  Roland McGrath  <roland@redhat.com>
201
202         * ebl-hooks.h: Replace register_name hook with register_info.
203         Also yield natural bit width and base type encoding.
204         * eblopenbackend.c (default_register_name): Renamed
205         default_register_info, new args added.
206         (fill_defaults): Update initialization.
207         * eblregname.c: File renamed ...
208         * eblreginfo.c: ... to this.
209         (ebl_register_name): Renamed to ebl_register_info, new args added.
210         * libebl.h: Update decl.
211
212         * Makefile.am (gen_SOURCES): Update list.
213
214 2006-07-06  Ulrich Drepper  <drepper@redhat.com>
215
216         * ebldynamictagname.c: Add support for DT_GNU_HASH.
217         * ebldynamictagcheck.c: Likewise.
218         * eblsectiontypename.c: Add support for SHT_GNU_HASH.
219
220 2006-07-05  Ulrich Drepper  <drepper@redhat.com>
221
222         * Makefile.am (gen_SOURCES): Add eblsysvhashentrysize.c.
223         * libeblP.h (struct ebl): Add sysvhash_entrysize element.
224         * eblopenbackend.c (fill_defaults): Initialize sysvhash_entrysize.
225
226         * eblopenbackend.c (openbackend): If possible, fill machine, class,
227         and data values in from the ELF file.
228
229 2006-07-04  Ulrich Drepper  <drepper@redhat.com>
230
231         * Makefile.am (gen_SOURCES): Add eblrelativerelocp.c.
232         * eblrelativerelocp.c: New file.
233         * ebl-hooks.c: Add relative_reloc_p.
234         * eblopenbackend.c (default_relative_reloc_p): New function.
235         (fill_defaults): Hook it up.
236         * libebl.h: Declare ebl_relative_reloc_p.
237
238 2006-06-12  Ulrich Drepper  <drepper@redhat.com>
239
240         * Makefile.am (gen_SOURCES): Add eblnonerelocp.c.
241         * eblnonerelocp.c: New file.
242         * ebl-hooks.c: Add none_reloc_p.
243         * eblopenbackend.c (default_none_reloc_p): New function.
244         (fill_defaults): Hook it up.
245         * libebl.h: Declare ebl_none_reloc_p.
246
247 2006-05-27  Ulrich Drepper  <drepper@redhat.com>
248
249         * libebl.h: Add extern "C".
250
251 2005-11-25  Roland McGrath  <roland@redhat.com>
252
253         * eblregname.c: New file.
254         * Makefile.am (gen_SOURCES): Add it.
255         * ebl-hooks.h: Declare register_name hook.
256         * libebl.h: Declare ebl_register_name.
257         * eblopenbackend.c (default_register_name): New function.
258         (fill_defaults): Use it.
259
260 2005-11-16  Roland McGrath  <roland@redhat.com>
261
262         * libebl.h: Use "" for elf-knowledge.h, not <>.
263
264 2005-11-15  Roland McGrath  <roland@redhat.com>
265
266         * Makefile.am: Removed everything for building libebl_*.so modules,
267         now in ../backends/Makefile.am instead.
268         * alpha_init.c: Moved to ../backends.
269         * alpha_reloc.def: Likewise.
270         * alpha_retval.c: Likewise.
271         * alpha_symbol.c: Likewise.
272         * arm_init.c: Likewise.
273         * arm_reloc.def: Likewise.
274         * arm_symbol.c: Likewise.
275         * common-reloc.c: Likewise.
276         * i386_corenote.c: Likewise.
277         * i386_init.c: Likewise.
278         * i386_reloc.def: Likewise.
279         * i386_retval.c: Likewise.
280         * i386_symbol.c: Likewise.
281         * ia64_init.c: Likewise.
282         * ia64_reloc.def: Likewise.
283         * ia64_symbol.c: Likewise.
284         * libebl_CPU.h: Likewise.
285         * ppc64_init.c: Likewise.
286         * ppc64_reloc.def: Likewise.
287         * ppc64_retval.c: Likewise.
288         * ppc64_symbol.c: Likewise.
289         * ppc_init.c: Likewise.
290         * ppc_reloc.def: Likewise.
291         * ppc_retval.c: Likewise.
292         * ppc_symbol.c: Likewise.
293         * s390_init.c: Likewise.
294         * s390_reloc.def: Likewise.
295         * s390_symbol.c: Likewise.
296         * sh_init.c: Likewise.
297         * sh_reloc.def: Likewise.
298         * sh_symbol.c: Likewise.
299         * sparc_init.c: Likewise.
300         * sparc_reloc.def: Likewise.
301         * sparc_symbol.c: Likewise.
302         * x86_64_corenote.c: Likewise.
303         * x86_64_init.c: Likewise.
304         * x86_64_reloc.def: Likewise.
305         * x86_64_retval.c: Likewise.
306         * x86_64_symbol.c: Likewise.
307
308         * libebl.h: Comment fixes.
309
310         * alpha_retval.c: New file.
311         * Makefile.am (alpha_SRCS): Add it.
312         * alpha_init.c (alpha_init): Initialize return_value_location hook.
313
314         * ppc64_retval.c: New file.
315         * Makefile.am (ppc64_SRCS): Add it.
316         * ppc64_init.c (ppc64_init): Initialize return_value_location hook.
317
318         * ppc_retval.c: New file.
319         * Makefile.am (ppc_SRCS): Add it.
320         * ppc_init.c (ppc_init): Initialize return_value_location hook.
321
322 2005-11-14  Roland McGrath  <roland@redhat.com>
323
324         * ia64_init.c (ia64_init): Initialize EH->reloc_simple_type.
325         * sh_init.c (sh_init): Likewise.
326         * x86_64_init.c (x86_64_init): Likewise.
327
328         * sparc_symbol.c (sparc_reloc_simple_type): New function.
329         * sparc_init.c (sparc_init): Use it.
330
331         * arm_symbol.c (arm_reloc_simple_type): New function.
332         * arm_init.c (arm_init): Use it.
333
334         * alpha_symbol.c (alpha_reloc_simple_type): New function.
335         * alpha_init.c (alpha_init): Use it.
336
337         * ia64_reloc.def: Update bits per H. J. Lu <hjl@lucon.org>.
338
339         * arm_reloc.def: Update bits per Daniel Jacobowitz <drow@false.org>.
340
341         * alpha_reloc.def: Update bits per Richard Henderson <rth@redhat.com>.
342
343 2005-11-13  Roland McGrath  <roland@redhat.com>
344
345         * x86_64_retval.c: New file.
346         * Makefile.am (x86_64_SRCS): Add it.
347         * x86_64_init.c (x86_64_init): Use x86_64_return_value_location.
348
349         * i386_retval.c: New file.
350         * Makefile.am (i386_SRCS): Add it.
351         (libdw): New variable.
352         (libebl_%.so): Use $(libdw) in link; use --as-needed.
353         * i386_init.c (i386_init): Use i386_return_value_location.
354
355         * eblretval.c: New file.
356         * Makefile.am (gen_SOURCES): Add it.
357         (INCLUDES): Search in libdw.
358         * libebl.h: Include <libdw.h>.   Declare ebl_return_value_location.
359         * ebl-hooks.h: Declare return_value_location hook.
360         * eblopenbackend.c (default_return_value_location): New function.
361         (fill_defaults): Use it.
362
363 2005-11-10  Roland McGrath  <roland@redhat.com>
364
365         * s390_init.c: New file.
366         * s390_reloc.def: New file.
367         * s390_symbol.c: New file.
368         * Makefile.am (modules, libebl_pic): Add s390.
369         (s390_SRCS, libebl_s390_pic_a_SOURCES): New variables.
370         (am_libebl_s390_pic_a_OBJECTS): New variable.
371
372         * ppc64_init.c: Use common-reloc.c.
373         * ppc64_symbol.c (ppc64_backend_name): Removed.
374         (ppc64_reloc_type_check, ppc64_reloc_type_name): Likewise.
375         (ppc64_copy_reloc_p, ppc64_reloc_valid_use): Likewise.
376
377         * ppc_init.c: Use common-reloc.c.
378         * ppc_symbol.c (ppc_backend_name): Removed.
379         (ppc_reloc_type_name, ppc_reloc_type_check): Likewise.
380         (ppc_reloc_valid_use, ppc_copy_reloc_p): Likewise.
381
382         * sparc_init.c: Use common-reloc.c.
383         * sparc_symbol.c (sparc_backend_name): Removed.
384         (sparc_reloc_type_name, sparc_reloc_type_check): Likewise.
385         (sparc_copy_reloc_p): Likewise.
386
387         * arm_init.c: Use common-reloc.c.
388         * arm_symbol.c (arm_backend_name): Removed.
389         (arm_reloc_type_name, arm_reloc_type_check, arm_copy_reloc_p): Removed.
390
391         * alpha_init.c: Use common-reloc.c.
392         * alpha_symbol.c (alpha_backend_name): Removed.
393         (alpha_reloc_type_name, alpha_reloc_type_check): Likewise.
394         (alpha_copy_reloc_p): Likewise.
395
396         * ia64_symbol.c (ia64_backend_name): Removed.
397         (ia64_reloc_type_name, ia64_reloc_type_check): Likewise.
398         (ia64_copy_reloc_p): Likewise.
399
400         * x86_64_init.c: Use common-reloc.c.
401         * x86_64_symbol.c (x86_64_backend_name): Removed.
402         (x86_64_copy_reloc_p, x86_64_reloc_valid_use): Likewise.
403         (x86_64_reloc_type_check, x86_64_reloc_type_name): Likewise.
404
405         * sh_init.c: Use common-reloc.c.
406         * sh_symbol.c: All functions removed.
407         (sh_reloc_simple_type): New function.
408         (sh_gotpc_reloc_check): New function.
409
410         * common-reloc.c: New file.
411         * Makefile.am (noinst_HEADERS): Add it.
412         * i386_init.c: Include it.
413
414         * sh_reloc.def: New file.
415         * i386_reloc.def: New file.
416         * alpha_reloc.def: New file.
417         * arm_reloc.def: New file.
418         * i386_reloc.def: New file.
419         * ia64_reloc.def: New file.
420         * ppc64_reloc.def: New file.
421         * ppc_reloc.def: New file.
422         * sh_reloc.def: New file.
423         * sparc_reloc.def: New file.
424         * x86_64_reloc.def: New file.
425         * Makefile.am (EXTRA_DIST): Add $(modules:=_reloc.def).
426
427         * libebl_alpha.map: Removed.
428         * libebl_ia64.map: Removed.
429         * libebl_ppc.map: Removed.
430         * libebl_sparc.map: Removed.
431         * libebl_arm.map: Removed.
432         * libebl_i386.map: Removed.
433         * libebl_ppc64.map: Removed.
434         * libebl_sh.map: Removed.
435         * libebl_x86_64.map: Removed.
436         * Makefile.am (EXTRA_DIST): Remove them.
437         (libebl_%.map, libebl_%.so): New pattern rules.
438
439         * libebl_alpha.h: Removed.
440         * libebl_ia64.h: Removed.
441         * libebl_ppc.h: Removed.
442         * libebl_sparc.h: Removed.
443         * libebl_arm.h: Removed.
444         * libebl_i386.h: Removed.
445         * libebl_ppc64.h: Removed.
446         * libebl_sh.h: Removed.
447         * libebl_x86_64.h: Removed.
448         * Makefile.am (noinst_HEADERS): Remove them.
449
450         * x86_64_corenote.c: Use libebl_CPU.h instead.
451         * x86_64_symbol.c: Likewise.
452         * i386_corenote.c: Likewise.
453
454 2005-11-09  Roland McGrath  <roland@redhat.com>
455
456         * ia64_symbol.c (ia64_reloc_simple_type): New function.
457
458         * ebl-hooks.h (reloc_simple_type): Take the Ebl handle, not Elf handle.
459         * eblrelocsimpletype.c (ebl_reloc_simple_type): Update caller.
460         * eblopenbackend.c (default_reloc_simple_type): Update signature.
461         * i386_symbol.c (i386_reloc_simple_type): Likewise.
462         * ppc64_symbol.c (ppc64_reloc_simple_type): Likewise.
463         * ppc_symbol.c (ppc_reloc_simple_type): Likewise.
464         * x86_64_symbol.c (x86_64_reloc_simple_type): Likewise.
465
466         * i386_symbol.c (i386_backend_name): Removed.
467         (i386_reloc_type_name, i386_reloc_type_check): Likewise.
468         (i386_reloc_valid_use): Removed.
469         (i386_copy_reloc_p): Removed.
470
471         * alpha_destr.c: Removed.
472         * arm_destr.c: Removed.
473         * i386_destr.c: Removed.
474         * ia64_destr.c: Removed.
475         * ppc64_destr.c: Removed.
476         * ppc_destr.c: Removed.
477         * sh_destr.c: Removed.
478         * sparc_destr.c: Removed.
479         * x86_64_destr.c: Removed.
480
481         * ebl-hooks.h: New file, broken out of ...
482         * libeblP.h (struct ebl): ... here.  #include that for hook
483         declarations, after defining EBLHOOK macro.
484         * libebl_CPU.h: New file.
485         * Makefile.am (noinst_HEADERS): Add them.
486
487         * libeblP.h (struct ebl): Use uint_fast16_t for machine,
488         and uint_fast8_t for class and data.
489
490 2005-08-14  Roland McGrath  <roland@redhat.com>
491
492         * ia64_symbol.c (ia64_section_type_name): New function.
493         (ia64_dynamic_tag_check): New function.
494         (ia64_reloc_valid_use): New function.
495         * libebl_ia64.h: Declare them.
496         * ia64_init.c (ia64_init): Use them.
497         * Makefile.am (libebl_ia64.so): Link with libelf.
498
499 2005-08-28  Ulrich Drepper  <drepper@redhat.com>
500
501         * Makefile.am: Use $(LINK) not $(CC) when creating DSOs.
502
503 2005-08-13  Roland McGrath  <roland@redhat.com>
504
505         * ia64_symbol.c (ia64_machine_flag_check): New function.
506         * libebl_ia64.h: Declare it.
507         * ia64_init.c (ia64_init): Use it.
508
509 2005-08-13  Ulrich Drepper  <drepper@redhat.com>
510
511         * libebl.h: Add ehdr parameter to ebl_bss_plt_p and
512         ebl_check_special_symbol.
513         * libeblP.h (struct ebl): Adjust callback functions.
514         * eblopenbackend.c: Adjust dummy functions.
515         * ebl_check_special_symbol.c: Add parameter and pass it on.
516         * eblbsspltp.c: Likewise.
517         * ppc_symbol.c (find_dyn_got): With ehdr passed, simplify search for
518         the dynamic section entry.
519         (ppc_check_special_symbol): Add ehdr parameter.
520         (ppc_bss_plt_p): Likewise.
521         * libebl_ppc.h: Adjust prototypes.
522         * ppc64_symbol.c (ppc_check_special_symbol): Add ehdr parameter.
523         (ppc_bss_plt_p): Likewise.
524         * libebl_ppc64.h: Adjust prototypes.
525
526 2005-08-12  Roland McGrath  <roland@redhat.com>
527
528         * ppc_symbol.c (find_dyn_got): New function, broken out of ...
529         (ppc_bss_plt_p): ... here.  Call that.
530         (ppc_check_special_symbol): Use find_dyn_got to fetch value to check
531         against _GLOBAL_OFFSET_TABLE_.
532
533         * libeblP.h (struct ebl): Add bss_plt_p hook.
534         * eblopenbackend.c (default_bss_plt_p): New function.
535         (fill_defaults): Use it.
536         * eblbsspltp.c: New file.
537         * Makefile.am (gen_SOURCES): Add it.
538         * libebl.h: Declare ebl_bss_plt_p.
539         * ppc_symbol.c (ppc_bss_plt_p): New function.
540         * libebl_ppc.h: Declare it.
541         * ppc_init.c (ppc_init): Use it.
542         * ppc64_symbol.c (ppc64_bss_plt_p): New function.
543         * libebl_ppc64.h: Declare it.
544         * ppc64_init.c (ppc64_init): Use it.
545
546         * ebl_check_special_symbol.c: New file.
547         * Makefile.am (gen_SOURCES): Add it.
548         * libebl.h: Declare ebl_check_special_symbol.
549         * libeblP.h (struct ebl): Add check_special_symbol hook.
550         * eblopenbackend.c (default_check_special_symbol): New function.
551         (fill_defaults): Use it.
552         * ppc_symbol.c (ppc_check_special_symbol): New function.
553         * libebl_ppc.h: Add prototype.
554         * ppc_init.c (ppc_init): Use it.
555         * ppc64_symbol.c (ppc64_check_special_symbol): New function.
556         * libebl_ppc64.h: Add prototype.
557         * ppc64_init.c (ppc64_init): Use it.
558
559 2005-08-07  Ulrich Drepper  <drepper@redhat.com>
560
561         * ppc_init.c: Add support for new DT_PPC_* and R_PPC_* values.
562         * ppc_symbol.c: Likewise.
563         * libebl_ppc.h: Likewise.
564         * ppc64_init.c: There is now also a dynamic_tag_check functions
565         * ppc64_symbol.c: Add dynamic_tag_check.
566         * libebl_ppc64.h: Add prototype.
567         * alpha_init.c: Add support for new DT_ALPHA_* value.
568         * alpha_symbol.c: Likewise.
569         * libebl_alpha.h: Likewise.
570
571 2005-08-03  Ulrich Drepper  <drepper@redhat.com>
572
573         * libebl_alpha.map: Remove unnecessary exports.
574         * libebl_arm.map: Likewise.
575         * libebl_i386.map: Likewise.
576         * libebl_ia64.map: Likewise.
577         * libebl_ppc.map: Likewise.
578         * libebl_ppc64.map: Likewise.
579         * libebl_sh.map: Likewise.
580         * libebl_sparc.map: Likewise.
581         * libebl_x86_64.map: Likewise.
582
583 2005-08-02  Ulrich Drepper  <drepper@redhat.com>
584
585         * Makefile.am (libebl_a_SOURCES): Add eblelfclass.c, eblelfdata.c,
586         and eblelfmachine.c.
587         * elbopenbackend.c (machines): Add class and data fields.  Initialize
588         them.
589         (ebl_openbackend): Initialize machine, class, data fields in result.
590         * libebl.h: Declare Add eblelfclass, eblelfdata, and eblelfmachine.
591         * libeblP.h (Ebl): Add machine, class, data fields.
592
593 2005-07-23  Ulrich Drepper  <drepper@redhat.com>
594
595         * eblsectionstripp.c: New file.
596         * Makefile.am (gen_SOURCES): Add eblsectionstripp.c.
597         * i386_init.c (i386_init): Install specific debugscn_p callback.
598         * i386_symbol.c (i386_debugscn_p): New function.
599         * libebl.h: Declare ebl_section_strip_p.
600         * libebl_i386.h: Declare i386_debugscn_p.
601
602         * libebl.h: Move Ebl definition to...
603         * libeblP.h: ...here.
604
605 2005-07-21  Roland McGrath  <roland@redhat.com>
606
607         * Makefile.am (install-ebl-modules): New target, commands from ...
608         (install): ... here.  Make this depend on it.
609         (LIBEBL_SUBDIR): New variable, substituted by configure.
610         (install-ebl-modules): Install in $(libdir)/$(LIBEBL_SUBDIR).
611         * eblopenbackend.c (openbackend): Use LIBEBL_SUBDIR in module name.
612
613 2005-07-21  Ulrich Drepper  <drepper@redhat.com>
614
615         * eblcopyrelocp.c: New file.
616         * Makefile.am (gen_SOURCES): Add eblcopyrelocp.c.
617         * libebl.h: Declare ebl_copy_reloc_p.
618         * eblopenbackend.c (fill_defaults): Fill in copy_reloc_p.
619         (default_copy_reloc_p): New function.
620         * alpha_init.c: Define and use arch-specific copy_reloc_p function.
621         * alpha_symbol.c: Likewise.
622         * arm_init.c: Likewise.
623         * arm_symbol.c: Likewise.
624         * i386_init.c: Likewise.
625         * i386_symbol.c: Likewise.
626         * ia64_init.c: Likewise.
627         * ia64_symbol.c: Likewise.
628         * ppc64_init.c: Likewise.
629         * ppc64_symbol.c: Likewise.
630         * ppc_init.c: Likewise.
631         * ppc_symbol.c: Likewise.
632         * sh_init.c: Likewise.
633         * sh_symbol.c: Likewise.
634         * sparc_init.c: Likewise.
635         * sparc_symbol.c: Likewise.
636         * x86_64_init.c: Likewise.
637         * x86_64_symbol.c: Likewise.
638         * libebl_alpha.h: Declare the copy_reloc_p function.
639         * libebl_arm.h: Likewise.
640         * libebl_i386.h: Likewise.
641         * libebl_ia64.h: Likewise.
642         * libebl_ppc.h: Likewise.
643         * libebl_ppc64.h: Likewise.
644         * libebl_sh.h: Likewise.
645         * libebl_sparc.h: Likewise.
646         * libebl_x86_64.h: Likewise.
647
648 2005-05-31  Roland McGrath  <roland@redhat.com>
649
650         * Makefile.am (libebl_*_so_SOURCES): Set to $(*_SRCS) so dependency
651         tracking works right.
652
653 2005-05-21  Ulrich Drepper  <drepper@redhat.com>
654
655         * libebl_x86_64.map: Add x86_64_core_note.
656
657 2005-05-19  Roland McGrath  <roland@redhat.com>
658
659         * libebl_i386.map: Add i386_reloc_valid_use, i386_reloc_simple_type.
660         * libebl_ppc.map: Add ppc_reloc_simple_type.
661         * libebl_ppc64.map: Add ppc64_reloc_simple_type.
662         * libebl_x86_64.map: Add x86_64_reloc_simple_type.
663
664 2005-05-11  Ulrich Drepper  <drepper@redhat.com>
665
666         * eblcorenote.c: Handle new AT_* values and files with different
667         endianess.
668         * Makefile.am (x86_64_SRCS): Add x86_64_corenote.c.
669         * x86-64_corenote.c: New file.
670         * x86_64_init.c: Hook in x86_64_corenote.
671         * i386_corenote.c: Make file usable on 64-bit platforms.
672
673         * eblopenbackend.c: If modules version comparison fails, reinitialize
674         hooks.
675
676 2005-05-10  Ulrich Drepper  <drepper@redhat.com>
677
678         * eblopenbackend.c: Require the init function to return a string.
679         Compare it with MODVERSION from config.h.
680         * alpha_init.c: Change return type.  Return MODVERSION or NULL.
681         * arm_init.c: Likewise.
682         * eblopenbackend.c: Likewise.
683         * i386_init.c: Likewise.
684         * ia64_init.c: Likewise.
685         * ppc64_init.c: Likewise.
686         * ppc_init.c: Likewise.
687         * sh_init.c: Likewise.
688         * sparc_init.c: Likewise.
689         * x86_64_init.c: Likewise.
690         * libeblP.h: Adjust ebl_bhinit_t.
691         * libebl_alpha.h: Adjust init function prototype.
692         * libebl_arm.h: Likewise.
693         * libebl_i386.h: Likewise.
694         * libebl_ia64.h: Likewise.
695         * libebl_ppc.h: Likewise.
696         * libebl_ppc64.h: Likewise.
697         * libebl_sh.h: Likewise.
698         * libebl_sparc.h: Likewise.
699         * libebl_x86_64.h: Likewise.
700
701         * mips_destr.c: Removed.
702         * mips_init.c: Removed.
703         * mips_symbol.c: Removed.
704         * libebl_mips.h: Removed.
705         * libebl_mips.map: Removed.
706
707 2005-05-03  Roland McGrath  <roland@redhat.com>
708
709         * libebl.h (Ebl): Add `reloc_simple_type' member.
710         * eblopenbackend.c (default_reloc_simple_type): New function.
711         (openbackend): Use that as default reloc_simple_type callback.
712         * eblrelocsimpletype.c: New file.
713         * Makefile.am (gen_SOURCES): Add it.
714         * i386_symbol.c (i386_reloc_simple_type): New function.
715         * libebl_i386.h: Declare it.
716         * i386_init.c (i386_init): Use it.
717         * x86_64_symbol.c (x86_64_reloc_simple_type): New function.
718         * libebl_x86_64.h: Declare it.
719         * x86_64_init.c (x86_64_init): Use it.
720         * ppc_symbol.c (ppc_reloc_simple_type): New function.
721         * libebl_ppc.h: Declare it.
722         * ppc_init.c (ppc_init): Use it.
723         * ppc64_symbol.c (ppc64_reloc_simple_type): New function.
724         * libebl_ppc64.h: Declare it.
725         * ppc64_init.c (ppc64_init): Use it.
726
727 2005-03-17  Ulrich Drepper  <drepper@redhat.com>
728
729         * eblcorenote.c (ebl_core_note): Add support for AT_SECURE.
730
731 2005-02-15  Ulrich Drepper  <drepper@redhat.com>
732
733         * Makefile.am (AM_CFLAGS): Add -Wformat=2.
734
735 2005-02-14  Ulrich Drepper  <drepper@redhat.com>
736
737         * alpha_destr.c: Add __attribute__((unused)) where needed.
738         * alpha_init.c: Likewise.
739         * alpha_symbol.c: Likewise.
740         * arm_destr.c: Likewise.
741         * arm_init.c: Likewise.
742         * arm_symbol.c: Likewise.
743         * i386_corenote.c: Likewise.
744         * i386_destr.c: Likewise.
745         * i386_init.c: Likewise.
746         * i386_symbol.c: Likewise.
747         * ia64_destr.c: Likewise.
748         * ia64_init.c: Likewise.
749         * ia64_symbol.c: Likewise.
750         * mips_destr.c: Likewise.
751         * mips_init.c: Likewise.
752         * mips_symbol.c: Likewise.
753         * ppc64_destr.c: Likewise.
754         * ppc64_init.c: Likewise.
755         * ppc64_symbol.c: Likewise.
756         * ppc_destr.c: Likewise.
757         * ppc_init.c: Likewise.
758         * ppc_symbol.c: Likewise.
759         * sh_destr.c: Likewise.
760         * sh_init.c: Likewise.
761         * sh_symbol.c: Likewise.
762         * sparc_destr.c: Likewise.
763         * sparc_init.c: Likewise.
764         * sparc_symbol.c: Likewise.
765         * x86_64_destr.c: Likewise.
766         * x86_64_init.c: Likewise.
767         * x86_64_symbol.c: Likewise.
768
769         * x86_64_symbol.c (reloc_map_table): Fix entries for R_X86_64_64
770         and R_X86_64_32..
771
772 2005-02-06  Ulrich Drepper  <drepper@redhat.com>
773
774         * eblstrtab.c: A few cleanups.
775
776         * eblopenbackend.c: Mark unused parameters.
777
778         * eblgstrtab.c: Cleanups a few printf format strings.
779
780         * Makefile.am: Cleanup AM_CFLAGS handling.  Add -Wunused -Wextra.
781
782 2005-02-05  Ulrich Drepper  <drepper@redhat.com>
783
784         * Makefile.am: Check for text relocations in constructed DSOs.
785
786         * eblstrtab.c: Minor cleanups.
787
788         * Makefile.am (AM_CFLAGS): Add -std=gnu99 and -fmudflap for MUDFLAP.
789
790 2004-08-16  Ulrich Drepper  <drepper@redhat.com>
791
792         * Makefile.am (AM_CFLAGS): Add LIBSTR definition with base name of
793         the lib directory.
794         * eblopenbackend.c (openbackend): Use LIBSTR instead of hardcoded
795         lib in path to ebl modules.
796
797 2004-04-01  Ulrich Drepper  <drepper@redhat.com>
798
799         * Makefile.am: Add rules for ppc and ppc64 ebl module.
800         * ppc_init..c: New file.
801         * ppc_destr.c: New file.
802         * ppc_symbol.c: New file.
803         * libebl_ppc.h: New file.
804         * libebl_ppc.map: New file.
805         * ppc64_init..c: New file.
806         * ppc64_destr.c: New file.
807         * ppc64_symbol.c: New file.
808         * libebl_ppc64.h: New file.
809         * libebl_ppc64.map: New file.
810
811 2004-01-20  Ulrich Drepper  <drepper@redhat.com>
812
813         * Makefile.am: Support building with mudflap.
814
815 2004-01-18  Ulrich Drepper  <drepper@redhat.com>
816
817         * libeblP.h (_): Use elfutils domain.
818
819 2004-01-16  Ulrich Drepper  <drepper@redhat.com>
820
821         * eblsectionname.c: Add support for SHN_BEFORE and SHN_AFTER.
822
823 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
824
825         * eblsegmenttypename.c ((ebl_segment_type_name): Add support for
826         PT_GNU_RELRO.
827
828 2004-01-08  Ulrich Drepper  <drepper@redhat.com>
829
830         * libebl.h: Remove last traces of libtool.
831
832 2004-01-05  Ulrich Drepper  <drepper@redhat.com>
833
834         * elf-knowledge.h: Move to libelf subdir.
835
836         * Makefile.am (EXTRA_DIST): Remove libebl.map.
837         * libebl.map: Removed.
838
839 2003-12-08  Ulrich Drepper  <drepper@redhat.com>
840
841         * eblsectiontypename.c (ebl_section_type_name): Add support for
842         SHT_SUNW_move, SHT_CHECKSUM, and SHT_GNU_LIBLIST.
843
844 2003-11-19  Ulrich Drepper  <drepper@redhat.com>
845
846         * ia64_symbol.c (ia64_dynamic_tag_name): New function.
847         * libebl_ia64.h (ia64_dynamic_tag_name): Declare.
848         * ia64_init.c (ia64_init): Register i164_dynamic_tag_name.
849
850 2003-09-24  Ulrich Drepper  <drepper@redhat.com>
851
852         * ia64_init.c (ia64_init): Initialize segment_type_name callback.
853         * ia64_symbol.c (ia64_segment_type_name): Define.
854         * libebl_ia64.h (ia64_segment_type_name): Declare.
855
856 2003-09-22  Ulrich Drepper  <drepper@redhat.com>
857
858         * Makefile.am (AM_CFLAGS): Add -fpic.
859
860 2003-08-14  Ulrich Drepper  <drepper@redhat.com>
861
862         * Makefile.am (install): Remove dependency on libebl.so.
863
864 2003-08-13  Ulrich Drepper  <drepper@redhat.com>
865
866         * eblopenbackend.c: Adjust relative path to arch-specific DSOs
867         assuming the code ends up in the application.  Add second dlopen()
868         try without any path, just the filename.
869         * Makefile.in: Remove rules to build and install libebl.so.
870
871 2003-08-11  Ulrich Drepper  <drepper@redhat.com>
872
873         * Moved to CVS archive.