blob: d257c1fd393cfc2d71bf2d9927d2a287589ed324 [file] [log] [blame]
Roland McGrathc76f0b02007-09-27 07:31:33 +00001Version 0.130:
2
3readelf: -p option can take an argument like -x for one section,
4 or no argument (as before) for all SHF_STRINGS sections
5
Roland McGrath60fc84c2007-08-03 21:59:15 +00006Version 0.129:
7
8readelf: new options --hex-dump (or -x), --strings (or -p)
9
10addr2line: new option --symbols (or -S)
11
Roland McGrath4be15242007-04-25 03:09:33 +000012Version 0.128:
13
14new program: unstrip
15
16elfcmp: new option --hash-inexact
17
Ulrich Dreppera1090f82007-03-30 19:16:14 +000018Version 0.127:
Ulrich Drepper6258e742007-03-13 06:22:40 +000019
Roland McGrath43da9892007-04-16 23:13:37 +000020libdw: new function dwarf_getsrcdirs
21
Ulrich Drepperf527aa82007-04-19 04:15:00 +000022libdwfl: new functions dwfl_module_addrsym, dwfl_report_begin_add,
23 dwfl_module_address_section
Ulrich Drepper6258e742007-03-13 06:22:40 +000024
Ulrich Drepperce0bdb62007-02-05 07:13:52 +000025Version 0.126:
26
27new program: ar
28
Ulrich Drepper56bc0b82006-12-18 22:38:08 +000029Version 0.125:
30
31elflint: Compare DT_GNU_HASH tests.
32
33move archives into -static RPMs
34
35libelf, elflint: better support for core file handling
36
Roland McGrathc373d852006-10-10 00:25:21 +000037Version 0.124:
38
39libebl: sparc backend support for return value location
40
41libebl, libdwfl: backend register name support extended with more info
42
43libelf, libdw: bug fixes for unaligned accesses on machines that care
44
45readelf, elflint: trivial bugs fixed
46
Roland McGrath1dee3602006-08-15 01:57:03 +000047Version 0.123:
48
49libebl: Backend build fixes, thanks to Stepan Kasal.
50
51libebl: ia64 backend support for register names, return value location
52
53libdwfl: Handle truncated linux kernel module section names.
54
55libdwfl: Look for linux kernel "vmlinux" files with ".debug" suffix.
56
57elflint: Fix checks to permit --hash-style=gnu format.
58
Ulrich Drepper28ed8952006-07-07 03:43:47 +000059Version 0.122:
60
Ulrich Dreppercc415622006-07-12 19:42:23 +000061libebl: add function to test for relative relocation
Ulrich Drepper28ed8952006-07-07 03:43:47 +000062
63elflint: fix and extend DT_RELCOUNT/DT_RELACOUNT checks
64
65elflint, readelf: add support for DT_GNU_HASH
66libelf: add elf_gnu_hash
67
68elflint, readelf: add support for 64-bit SysV-style hash tables
69
Ulrich Dreppercc415622006-07-12 19:42:23 +000070libdwfl: new functions dwfl_module_getsymtab, dwfl_module_getsym.
71
Ulrich Drepperd9a87122006-05-28 08:00:33 +000072Version 0.121:
73
74libelf: bug fixes for rewriting existing files when using mmap.
75
76make all installed headers usable in C++ code.
77
78readelf: better output format.
79
Ulrich Drepper6ca46002006-06-12 22:40:23 +000080elflint: fix tests of dynamic section content.
81
82ld: Implement --as-needed, --execstack, PT_GNU_STACK. Many small patches.
83
Ulrich Drepperd9a87122006-05-28 08:00:33 +000084libdw, libdwfl: handle files without aranges info.
85
Ulrich Drepper361df7d2006-04-04 21:38:57 +000086Version 0.120:
87
88Bug fixes.
89
90dwarf.h updated for DWARF 3.0 final specification.
91
92libdwfl: New function dwfl_version.
93
Ulrich Drepper82c345d2006-04-04 22:07:54 +000094The license is now GPL for most files. The libelf, libebl, libdw,
95and libdwfl libraries have additional exceptions. Add reference to
96OIN.
97
tailor808b4122006-01-13 18:50:48 +000098Version 0.119:
99
100bug fixes
101
Ulrich Drepper607e0542005-12-04 15:51:06 +0000102Version 0.118:
103
104elflint: more tests.
105
Roland McGrath994b4892005-12-05 22:46:21 +0000106libdwfl: New function dwfl_module_register_names.
107
108libebl: New backend hook for register names.
109
Roland McGrath37ecca72005-11-18 01:42:03 +0000110Version 0.117:
111
112libdwfl: New function dwfl_module_return_value_location.
113
114libebl: Backend improvements for several CPUs.
115
Roland McGrath07d4f2f2005-10-28 06:56:24 +0000116Version 0.116:
117
118libdw: New functions dwarf_ranges, dwarf_entrypc, dwarf_diecu,
Roland McGrath6724c902005-10-28 07:07:19 +0000119 dwarf_entry_breakpoints. Removed Dwarf_Func type and functions
120 dwarf_func_name, dwarf_func_lowpc, dwarf_func_highpc,
121 dwarf_func_entrypc, dwarf_func_die; dwarf_getfuncs callback now uses
122 Dwarf_Die, and dwarf_func_file, dwarf_func_line, dwarf_func_col
123 replaced by dwarf_decl_file, dwarf_decl_line, dwarf_decl_column;
124 dwarf_func_inline, dwarf_func_inline_instances now take Dwarf_Die.
125 Type Dwarf_Loc renamed to Dwarf_Op; dwarf_getloclist,
126 dwarf_addrloclists renamed dwarf_getlocation, dwarf_getlocation_addr.
Roland McGrath07d4f2f2005-10-28 06:56:24 +0000127
Roland McGrathc94e47d2005-08-27 10:37:20 +0000128Version 0.115:
129
Ulrich Drepperfbe998a2005-08-29 16:27:10 +0000130libelf: speed-ups of non-mmap reading.
131
132strings: New program.
133
134Implement --enable-gcov option for configure.
135
Roland McGrathc94e47d2005-08-27 10:37:20 +0000136libdw: New function dwarf_getscopes_die.
137
Ulrich Drepper5d832292005-08-15 21:36:27 +0000138Version 0.114:
139
140libelf: new function elf_getaroff
141
Roland McGratha5c26432005-08-18 23:41:56 +0000142libdw: Added dwarf_func_die, dwarf_func_inline, dwarf_func_inline_instances.
143
Roland McGrath7c777292005-08-24 18:53:53 +0000144libdwfl: New functions dwfl_report_offline, dwfl_offline_section_address,
145 dwfl_linux_kernel_report_offline.
146
Ulrich Drepper5d832292005-08-15 21:36:27 +0000147ranlib: new program
148
Ulrich Drepper637963b2005-08-07 05:33:07 +0000149Version 0.113:
150
151elflint: relax a bit. Allow version definitions for defined symbols against
152DSO versions also for symbols in nobits sections. Allow .rodata section
153to have STRINGS and MERGE flag set.
154
Roland McGrath1c83bf12005-08-11 07:03:55 +0000155strip: add some more compatibility with binutils.
156
Ulrich Drepperc911c9e2005-08-02 16:07:42 +0000157Version 0.112:
158
159elfcmp: some more relaxation.
160
Ulrich Drepperdbace232005-08-06 01:37:23 +0000161elflint: many more tests, especially regarding to symbol versioning.
Ulrich Drepper41de4882005-08-03 00:02:56 +0000162
163libelf: Add elfXX_offscn and gelf_offscn.
164
Ulrich Dreppera38998e2005-08-03 02:05:39 +0000165libasm: asm_begin interface changes.
166
167libebl: Add three new interfaces to directly access machine, class, and
168data encoding information.
169
Ulrich Drepper8a687742005-08-03 02:24:12 +0000170objdump: New program. Just the beginning.
171
Ulrich Drepper70189152005-07-28 21:31:36 +0000172Version 0.111:
173
174libdw: now contains all of libdwfl. The latter is not installed anymore.
175
176elfcmp: little usability tweak, name and index of differing section is printed.
177
Ulrich Drepperb08d5a82005-07-26 05:00:05 +0000178Version 0.110:
179
Roland McGrath1c83bf12005-08-11 07:03:55 +0000180libelf: fix a number of problems with elf_update
Ulrich Drepperb08d5a82005-07-26 05:00:05 +0000181
182elfcmp: fix a few bugs. Compare gaps.
183
184Fix a few PLT problems and mudflap build issues.
185
186libebl: Don't expose Ebl structure definition in libebl.h. It's now private.
187
188Version 0.109:
189
190libebl: Check for matching modules.
191
192elflint: Check that copy relocations only happen for OBJECT or NOTYPE symbols.
193
194elfcmp: New program.
195
196libdwfl: New library.
197
198Version 0.108:
199
200strip: fix bug introduced in last change
201
202libdw: records returned by dwarf_getsrclines are now sorted by address
203
204Version 0.107:
205
206readelf: improve DWARF output format
207
208strip: support Linux kernel modules
209
210Version 0.106:
211
212libdw: Updated dwarf.h from DWARF3 spec
213libdw: add new funtions dwarf_func_entrypc, dwarf_func_file, dwarf_func_line,
214dwarf_func_col, dwarf_getsrc_file
215
216Version 0.105:
217
218addr2line: New program
219
220libdw: add new functions: dwarf_addrdie, dwarf_macro_*, dwarf_getfuncs,
221dwarf_func_*.
222
223findtextrel: use dwarf_addrdie
224
225Version 0.104:
226
227findtextrel: New program.
228
229Version 0.103:
230
231libdw: Fix using libdw.h with gcc < 4 and C++ code. Compiler bug.
232
233Version 0.102:
234
235More Makefile and spec file cleanups.
236
237Version 0.101:
238
239Remove most gettext autoconf handling.
240
241Add more warnings
242
243Fix resulting problems. One actual bug found and fixed this way
244
245Version 0.100:
246
247libebl: Fix x86-64 relocations.
248
249Add -Wunused -Wextra warnings.
250
251Some cleanups resulting from those additional warnings.
252
253Lots of Makefile cleanup.
254
255Version 0.99:
256
257libelf: add gelf_checksum prototype to <libelf.h>
258
259libelf: fix elf*_checksum handling of NOBITS sections
260
261Finish mudflap support.
262
263Fix three bugs found by mudflap.
264
265ld: add as_needed support
266
267Version 0.98:
268
269readelf: in section to segment mapping, indicate read-only sections.
270
271elflint: more relaxation for GNU ld
272
273Version 0.97:
274
275Fix compiling with gcc 4.0.
276Some tests called elflint without appropriate LD_LIBRARY_PATH.
277
278Version 0.96:
279
280Fix support for platforms with lib64.
281
282Version 0.95:
283
284libebl: add ppc and ppc64 support
285
286readelf: fix minimal memory leak.
287
288Add support to compile with mudflap.
289
290Modernize configure.ac. Move scripts in config subdir.
291
292Modernize *-po directory infrastructure.
293
294libelf: Add gelf_getlib and gelf_update_lib
295
296readelf: print liblist sections
297
298Version 0.94:
299
300Fix some minimal build problems.
301
302Version 0.93:
303
304ibdw: tons of new functionality and bug fixes. Several interface changes.
305
306readelf: use libdw now.
307
308libdwarf: removed completely.
309
310Version 0.92:
311
312configuration changes.
313
314Version 0.91:
315
316libdw: fix memory handling. Implement source line handling.
317nm: use libdw instead of libdwarf.
318libelf: change to GPL from OSL1 for now.
319
320Version 0.90:
321
322libebl: Recognize a few more section types and dynamic tags and return
323approriate strings.
324
325Version 0.89:
326
327strip: fix overwriting of symbol table in input file.
328
329Version 0.88:
330
331libebl: Add some ia64 bits.
332
333Version 0.87:
334
335Bug fixes for big endian and some 64-bit machines.
336
337Version 0.86:
338
339strip: fix handling of Alpha and s390x which use incorrect hash bucket sizes.
340
341ld: tons of changes, moving towards usability.
342
343Version 0.85:
344
345strip: update section group symbol index if the associated symbol table changed
346
347libelf: fix two problems with generating output not via mmap
348
349elflint: add probably 10-15 more tests
350libebl: add support for some of the new tests
351
352ld: gazillion changes
353
354Version 0.84:
355
356elflint: deal with .rel.dyn section. Fix a problem with rela platforms.
357Handle PT_GNU_STACK. Change to write messages to stdout.
358
359readelf: fix a problem with version information in the symbol table output.
360
361strip: update all version symbol table entries
362
363Version 0.83:
364
365size: fix a warning
366
367strip: last changed caused problems when the symbol table is before the
368relocation section. Fixed. This fix also improved the asymptotic
369behavior if many symbol table sections are present.
370
371Version 0.82:
372
373Run strip tests with the correct libelf and libebl.
374
375libelf: fix bug in verneed byte order changing code.
376
377Version 0.81:
378
379strip: Remove unused symbol table entries. This might require updating
380various other sections.
381
382Version 0.80:
383
384Fix some libelf problems with ET_REL files.
385
386Version 0.79:
387
388More warning changes, mainly by jbj.
389
390libdw: yet more new code. dwarf_child and dwarf_sibling should now actually
391work.
392
393Version 0.78:
394
395libdw: 10+ new functions. get-pubnames2 works now fully. Almost all the
396code needed for nm is in place.
397
398Version 0.77:
399
400cleanups to compile cleanly with gcc 3.3 and -Werror.
401
402libdw: some new code.
403
404Version 0.76:
405
406libebl: Fix last patch to recognize relocation sections. We must not
407use the name.
408
409Version 0.75:
410
411libebl: .debug_ranges is a DWARF 3 debug section
412libebl: recognize relocation sections for debug section
413Patches by Jakub Jelinek.
414
415Version 0.74:
416
417Cleanups and more SPARC support by Tom Callaway <tcallaway@redhat.com>.
418
419Version 0.73:
420
42164-bit cleanups for the programs.
422
423Version 0.72:
424
425libelf: and yet more fun with endian tranformation at output time.
426
427Version 0.71:
428
429libelf: more fun with endian tranformation at output time. Add test for it.
430
431Version 0.70:
432
433libelf: Two little bugs left from previous patch to handle section output
434order.
435
436libelf: add unlikely in some more places.
437
438Version 0.69:
439
440libelf: fix output routines to handle case where section indeces and
441ordre in the output file don't match correctly. Patch by Jakub.
442
443elflint: fix test of note section content for 64-bit platforms and files
444with different byte order.
445
446Version 0.68:
447
448libebl: Fix SH_ENTSIZE_HASH definition (patch by Jakub)
449
450Version 0.67:
451
452libelf: correct mistake in error string handling.
453
454libelf: Implement ELF_F_PERMISSIVE.
455strip: Implement --permissive option.
456
457Version 0.66:
458
459strip: Implement -g option.
460
461libelf: Handle broken hash table entry sizes.
462
463libebl: New function ebl_debugscn_p. Use it where appropriate.
464
465Version 0.65:
466
467libelf: Use correct file size for NOBITS section with ELF_F_LAYOUT set
468
469Version 0.64:
470
471libelf: Make error handling more robust.
472libelf: Use TLS in error handler if configured with --enable-tls
473
474tests: input files are now distributed, not uuencoded in the shell scripts
475
476libdw: implement error handling, dwarf_get_pubnames
477
478Version 0.63:
479
480Build (incomplete) libdw.
481
482Version 0.62:
483
484Get rid of libtool.
485
486Version 0.61:
487
488Fix URL of OSL.
489
490Version 0.60:
491
492libebl: Handle .gnu.warning.* sections correctly.
493
494size: Implement -t option.
495
496libebl: Add IA-64 support.
497libebl: Update SH relocations.
498libebl: Add Alpha support.
499libebl: Add Arm support.
500libebl: Add support for all currently known architecture to the loader.
501
502Version 0.59:
503
504nm: Implement -S option. Correct portable output format. Implement -s option.
505
506libelf: Take offset of archive into account in elf_rand.
507
508Version 0.58:
509
510strip: fix handling of ET_REL files.
511Add tests for strip.
512
513Version 0.57:
514
515strip: respect layout of input file
516
517Version 0.56:
518
519strip: handle files with large number of sections.
520
521Version 0.55:
522
523libelf: quite a few bug fixes by Alex Larsson.
524
525strip: implement -f option to place stripped sections into a separate
526file. By Alex Larsson.
527
528Version 0.54:
529
530strip: don't let STT_SECTION symbols keeps sections from being removed
531
532elflint: local symbols are allowed in .dynsym
533elflint: special case .rel.dyn a bit
534
535Version 0.53:
536
537elflint: check types and flags of special sections defined in gABI
538
539libebl: add x86-64 support
540
541Version 0.52:
542
543Start improvement of debug info handling in nm.
544
545libasm: implement asm_adduleb128 and asm_addsleb128 and a test for them
546
547Version 0.51:
548
549Fix build on 64-bit platforms.
550
551Version 0.50:
552
553nm: print file/line number also for local symbols
554
555use versions scripts not libtool's useless -export-symbols option
556
557Version 0.49:
558
559Update to autoconf 2.54 and automake 1.7.
560
561elflint: check note sections
562
563libdwarf: a number of bug fixes
564
565readelf: print .debug_info section content
566
567dwarf.h: Update from draft 7
568
569Version 0.48:
570
571libcpu: beginning
572
573libelf: new function to read parts of the ELF file
574
575libebl: support for note section handling
576
577readelf: dump note sections
578
579Version 0.47:
580
581libelf: fix little new section-handling related bugs in elf_getshstrndx
582and elf_nextscn
583
584elflint: tests for mandatory content of dynamic section
585
586libasm: better handling of absolute symbols
587
588Version 0.46:
589
590libasm: rewrite to store Elf_Scn* instead of indices
591
592nm: finish many-section support
593
594nm: use debug in to print file/line info in sysv format
595
596libdwarf: fix a few bugs in DIE handling
597
598Version 0.45:
599
600libelf: major rewrite to keep Elf_Scn references valid until elf_end
601
602Version 0.44:
603
604libasm: Add support for bss, ABS, and COM sections.
605
606libebl: ebl_section_name takes now two index arguments to distinguish
607between special sections and extended sections
608
609Version 0.43:
610
611General: fix a few problem gcc 3.1 had with the code.
612
613libelf: implement {gelf,elf32,elf64}_checksum
614
615libelf: optimze DSO: fewer relocations, fewer PLTs
616
617add msg_tst test
618
619ld: use correct section header string table index; write correct index
620
621add dependencies for *.sym files
622
623Version 0.42:
624
625libelf: add elf_getshnum and elf_getshstrndx
626
627libebl: update section type name function
628
629elflint: tons of fixes wrt large number of sections. New tests in this area.
630Same amount of other bug fixes.
631
632size, strip, nm: better support for large number of sections. Including
633using correct section header string table
634
635libasm: correctly create data structures for large number of sections
636
637new tests asm-tst4 and asm-tst5 to check large number of sections
638
639libasm: implement section group generation
640
641elflint: more tests on section groups. Improve performance on existing
642section group tests
643
644Version 0.41:
645
646ld: add undefined symbols to dynamic symbol table if --export-dynamic is
647not given
648
649ld: fix value of e_entry
650
651Version 0.40:
652
653elflint: print section names in error messages
654
655elflint: mustn't warn about multiple DT_NULL
656
657ld: don't emit all symbols if --export-dynamic is not given
658
659ld: correct compute symbol address in output file (section index was off by 1)
660
661ld: generate correct version info in dynsym without --export-dynamic and
662in symtab
663
664Version 0.39:
665
666Fix check of various e_*size entries in elflint.
667
668Handle text output in asm_newsym.
669
670Finish checks in asm-tst3.
671
672Version 0.38:
673
674Update to autoconf 2.53, automake 1.6, gettext 0.11+.
675
676Introduce *.sym files to restrict export from DSOs.
677
678Use attribute_hidden and internal_function to optimize DSO code.
679
680Add TLS definitions in elf.h and handle them in readelf.
681
682Fix bug in verdef section generation in ld.
683
684Add initial libasm code.
685
686Version 0.37:
687
688Implement better hash size optimization heuristic in ld. It uses a formula
689taking number of tests into account.
690
691Lots of small bug fixes.
692
693Improve readelf output format. Respect various sh_link/sh_info values.
694Correctly print versioning information for symbol tables.
695
696Version 0.36:
697
698Implement preprocessing of linker script. Recognize -z combreloc.
699
700Version 0.35:
701
702Implement -z ignore|record for ld.
703
704Implement creating of .gnu.version_r and .gnu.version sections. The
705.gnu.version does not yet contain correct info for defined and versioned
706symbols (means .gnu.version_d is not yet implemented).
707
708Implement gelf_update_* functions to create versioning data.
709
710Version 0.34:
711
712Add DT_RUNPATH/DT_RPATH entries to dynamic section. Create .plt and
713.rel.plt sections (completely). Add support for all four PLT related
714dynamic section entries. Add callback function for PLT creation.
715
716More tests in elflint. Add support for very strict checking which for
717now flags level 2 (deprecated features) usage.
718
719Version 0.33:
720
721Create dynamic symbol table, dynamic string table, and hash table to ld.
722
723Add hash table histogram support to readelf.
724
725Version 0.32:
726
727more work on elflint
728
729ld now creates the dynamic section and references it. Start adding entries
730to dynamic section.
731
732Version 0.31:
733
734Start implementing elflint.
735
736Version 0.30:
737
738Fix handling of NOBITS sections in elf_getdata.
739
740Start implementing generation of executables and DSOs in ld.
741Generation of program header mostly done. Address computation done.
742Extension of linker script syntax.
743
744Various cleanups.
745
746Implement section group handling in readelf.
747
748Version 0.29:
749
750Implement section groups. This involved a lot of code moving. The
751new code is entirely untested since gas/gcc are currently not able to
752create section groups. ld works fine on files without section groups.
753
754Version 0.28:
755
756Fix problem with adding more section in elf_newscn. The section pointers
757for the data buffers wasn't adjusted.
758
759Fix elf_getdata with nonzero second parameter. Correctly handle creation
760of internal data buffer for machines without unaligned access.
761
762Version 0.27:
763
764Start adding support to selectively add sections. Includes support for
765section groups.
766Add --gc-sections/--no-gc-sections options.
767Add general section merging support.
768
769Fix a bug in section group support in strip.
770
771Fix some potential problems with hash value in dynamic hash implementation.
772
773Version 0.26:
774
775section merging works in ld.
776
777Version 0.25:
778
779Actually create data structures from version map file and use it to hide
780symbols in ld.
781
782Implement -s -s for ld.
783
784Version 0.24:
785
786Improve relocation table output in readelf. Avoid some crashes.
787Finish many section handling in readelf.
788
789Finish: finish implementation of ld -r. At least some simple tests pass.
790
791Version 0.23:
792
793Fix a number of errors in ELF_C_WRITE handling.
794
795Almost finished implementation of ld -r. The data sections are all copied.
796Handling of symbol tables is missing.
797
798Version 0.22:
799
800Handle DSO and archive input files correctly if -r option is given.
801
802Gracefully deal with no phdr in new file in libelf.
803Fix various small error handling problems.
804Don't mmap file for output unless the command says so.
805
806Add code to create ELF section header table to ld finalize routines.
807
808Version 0.21:
809
810Fix some problems with recursive handling of archives in libelf.
811
812Improve messages printed by nm.
813
814Add symbol binding name handling to libebl. Fix section name handling in
815libebl.
816
817readelf and nm use more libebl functions.
818
819Handle XINDEX correctly in nm and string.
820
821Add first machine ld backend library (i386).
822Use it. Recognize -r and --shared. Avoid using -lxxx parameters for -r.
823Create ELF header in output file. Change mode of output file according to
824output file type. Reorganize callback initialization in ld.
825
826Version 0.20:
827
828Fix some memory leaks in libelf.
829
830Version 0.19:
831
832Implement reading version script. Both inside linker scripts and via the
833--version-script command line parameter. Uses the same code.
834What remains to be done is to implement a data structure which allows
835efficient matching against the version names to decide which pattern
836matches.
837
838Beginning of output generation and output writing functions.
839
840Version 0.18:
841
842Finish implementation for DSO input file handling. Implement rpath, runpath,
843and LD_LIBRARY_PATH handling.
844
845Version 0.17:
846
847make handling of e_shnum overflow in libelf standard conforming
848
849ld now actually can handle DSOs in linker scripts. Handling of DT_RUNPATH,
850DT_RPATH, -rpath, -rpath-link still remains to be implemented.
851
852fix handling of -L parameters. Make actual use of the default_paths element.
853
854make re-definition of symbols in and from DSO compatible with existing linker
855
856Version 0.16:
857
858more work on assigning input sections to output sections.
859
860Add gelf_xlatetof and gelf_xlatetom which were accidently left out.
861
862Fix memory handling of section headers.
863
864Version 0.15:
865
866Add many-section support to ld. Add various new command line parameters.
867Allow pagesize to be specified in linker script or on the command line.
868Collect input sections in list for the output section according to the rules
869specified in the linker script.
870
871Version 0.14:
872
873Fix some problems in the internal list handling which had the result
874that we didn't look for some of the unresolved symbols.
875
876Free some memory if we know we don't need it anymore.
877
878Optimize the list of unresolved symbols. Throw out symbols which are
879meanwhile resolved.
880
881Version 0.13:
882
883Got file reading correct now. The files are all read while parsing
884the parameters. No creating of data structures to describe the linker
885command line. The symbol table is built up while reading the files.
886DSOs are handled now. -( -) handling is optimized.
887
888Version 0.12:
889
890Linker read linker scripts everywhere. Handles --whole-archive. Recognizes
891--dynamic and --static. Collects defined and undefined symbols. Recognizes
892conflicts.
893
894libebl now defines functions to call the callbacks. Add generic name handling
895in these new functions. Remove the code from readelf and call the new
896functions.
897
898Version 0.11:
899
900Start of linker. Basic argument parsing, finding of input files,
901linker script reading.
902
903Version 0.10:
904
905Implement dwarf_get_fde_n(), dwarf_get_abbrev(), dwarf_get_abbrev_tag(),
906dwarf_get_abbrev_code(), dwarf_get_abbrev_children_flag(),
907dwarf_get_abbrev_entry(), dwarf_get_fde_at_pc(), and tests for it.
908
909Version 0.9:
910
911Implement dwarf_get_fde_list_eh(), dwarf_get_cie_of_fde(),
912dwarf_get_fde_range(), dwarf_get_cie_info(), dwarf_get_fde_instr_bytes(),
913and tests for them.
914
915Version 0.8:
916
917Make handling of binaries in other byte order work and add tests for it.
918
919Version 0.7:
920
921Implement dwarf_get_aranges(), dwarf_get_arange(), dwarf_get_cu_die_offset(),
922dwarf_get_arange_info(), and tests for them.
923
924Version 0.6:
925
926Implement dwarf_get_global(), dwarf_globname(), dwarf_global_die_offset(),
927dwarf_global_cu_offset(), dwarf_global_name_offsets(), and tests for them
928
929Version 0.5:
930
931Implemented dwarf_srclines(), dwarf_srcfiles(), dwarf_linebeginstatement(),
932dwarf_lineendsequence(), dwarf_lineno(), dwarf_lineaddr(), dwarf_lineoff(),
933dwarf_linesrc(), dwarf_lineblock(), dwarf_lineprologueend(),
934dwarf_lineepiloguebegin(), and tests for them.
935
936Version 0.4:
937
938Implemented dwarf_loclist().
939
940Version 0.3:
941
942Implemented dwarf_dieoffset(), dwarf_die_CU_offset(), dwarf_diename() and
943tests.
944
945Implemented dwarf_attrlist(), dwarf_hasattr(), dwarf_attr(), dwarf_lowpc(),
946dwarf_highpc(), dwarf_bytesize(), dwarf_bitsize(), dwarf_bitoffset(),
947dwarf_srclang(), dwarf_arrayorder(), dwarf_hasform(), dwarf_whatform(),
948dwarf_whatattr(), dwarf_formref(), dwarf_global_formref(), dwarf_formaddr(),
949dwarf_formflag(), dwarf_formudata(), dwarf_formsdata(), dwarf_formblock,
950dwarf_formstring() and tests for them.
951
952Version 0.2:
953
954Implemented dwarf_offdie()), dwarf_tag(), dwarf_dieoffset(),
955dwarf_die_CU_offset(), dwarf_diename() and tests for them.
956
957Version 0.1:
958
959First libdwarf functions work.
960
961Version 0.0:
962
963libelf and parts of libebl are done.