• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# -*- rpm-spec-*-
2Name: elfutils
3Version: @PACKAGE_VERSION@
4Release: 1
5URL: http://elfutils.org/
6License: GPLv3+ and (GPLv2+ or LGPLv3+) and GFDL
7Source: ftp://sourceware.org/pub/elfutils/%{version}/elfutils-%{version}.tar.bz2
8Summary: A collection of utilities and DSOs to handle ELF files and DWARF data
9
10Requires: elfutils-libelf = %{version}-%{release}
11Requires: elfutils-libs = %{version}-%{release}
12# Can be a Recommends if rpm supports that
13Requires: elfutils-debuginfod-client = %{version}-%{release}
14
15BuildRequires: gcc
16# For libstdc++ demangle support
17BuildRequires: gcc-c++
18
19BuildRequires: gettext
20BuildRequires: bison
21BuildRequires: flex
22
23# Compression support
24BuildRequires: zlib-devel
25BuildRequires: bzip2-devel
26BuildRequires: xz-devel
27BuildRequires: libzstd-devel
28
29# For debuginfod
30BuildRequires: pkgconfig(libmicrohttpd) >= 0.9.33
31BuildRequires: pkgconfig(libcurl) >= 7.29.0
32BuildRequires: pkgconfig(sqlite3) >= 3.7.17
33BuildRequires: pkgconfig(libarchive) >= 3.1.2
34
35# For tests need to bunzip2 test files.
36BuildRequires: bzip2
37BuildRequires: zstd
38# For the run-debuginfod-find.sh test case in %%check for /usr/sbin/ss etc.
39BuildRequires: iproute
40BuildRequires: procps
41BuildRequires: bsdtar
42BuildRequires: curl
43# For run-debuginfod-response-headers.sh test case
44BuildRequires: socat
45
46%define _gnu %{nil}
47%define _programprefix eu-
48
49%description
50Elfutils is a collection of utilities, including stack (to show
51backtraces), nm (for listing symbols from object files), size
52(for listing the section sizes of an object or archive file),
53strip (for discarding symbols), readelf (to see the raw ELF file
54structures), elflint (to check for well-formed ELF files) and
55elfcompress (to compress or decompress ELF sections).
56
57%package libs
58Summary: Libraries to handle compiled objects
59License: GPLv2+ or LGPLv3+
60Requires: elfutils-libelf = %{version}-%{release}
61Requires: default-yama-scope
62# Can be a Recommends if rpm supports that
63Requires: elfutils-debuginfod-client = %{version}-%{release}
64
65%description libs
66The elfutils-libs package contains libraries which implement DWARF, ELF,
67and machine-specific ELF handling and process introspection.  These
68libraries are used by the programs in the elfutils package.  The
69elfutils-devel package enables building other programs using these
70libraries.
71
72%package devel
73Summary: Development libraries to handle compiled objects
74License: GPLv2+ or LGPLv3+
75Requires: elfutils-libs = %{version}-%{release}
76Requires: elfutils-libelf-devel = %{version}-%{release}
77# Can be a Recommends if rpm supports that
78Requires: elfutils-debuginfod-client-devel = %{version}-%{release}
79
80%description devel
81The elfutils-devel package contains the libraries to create
82applications for handling compiled objects.  libdw provides access
83to the DWARF debugging information.  libasm provides a programmable
84assembler interface.
85
86%package devel-static
87Summary: Static archives to handle compiled objects
88License: GPLv2+ or LGPLv3+
89Requires: elfutils-devel = %{version}-%{release}
90Requires: elfutils-libelf-devel-static = %{version}-%{release}
91
92%description devel-static
93The elfutils-devel-static package contains the static archives
94with the code to handle compiled objects.
95
96%package libelf
97Summary: Library to read and write ELF files
98License: GPLv2+ or LGPLv3+
99
100%description libelf
101The elfutils-libelf package provides a DSO which allows reading and
102writing ELF files on a high level.  Third party programs depend on
103this package to read internals of ELF files.  The programs of the
104elfutils package use it also to generate new ELF files.
105
106%package libelf-devel
107Summary: Development support for libelf
108License: GPLv2+ or LGPLv3+
109Requires: elfutils-libelf = %{version}-%{release}
110Conflicts: libelf-devel
111
112%description libelf-devel
113The elfutils-libelf-devel package contains the libraries to create
114applications for handling compiled objects.  libelf allows you to
115access the internals of the ELF object file format, so you can see the
116different sections of an ELF file.
117
118%package libelf-devel-static
119Summary: Static archive of libelf
120License: GPLv2+ or LGPLv3+
121Requires: elfutils-libelf-devel = %{version}-%{release}
122Conflicts: libelf-devel
123
124%description libelf-devel-static
125The elfutils-libelf-static package contains the static archive
126for libelf.
127
128%package default-yama-scope
129Summary: Default yama attach scope sysctl setting
130License: GPLv2+ or LGPLv3+
131Provides: default-yama-scope
132BuildArch: noarch
133
134%description default-yama-scope
135Yama sysctl setting to enable default attach scope settings
136enabling programs to use ptrace attach, access to
137/proc/PID/{mem,personality,stack,syscall}, and the syscalls
138process_vm_readv and process_vm_writev which are used for
139interprocess services, communication and introspection
140(like synchronisation, signaling, debugging, tracing and
141profiling) of processes.
142
143%package debuginfod-client
144Summary: Library and command line client for build-id HTTP ELF/DWARF server
145License: GPLv3+ and (GPLv2+ or LGPLv3+)
146# For debuginfod-find binary
147Requires: elfutils-libs = %{version}-%{release}
148Requires: elfutils-libelf = %{version}-%{release}
149
150%package debuginfod-client-devel
151Summary: Libraries and headers to build debuginfod client applications
152License: GPLv2+ or LGPLv3+
153Requires: elfutils-debuginfod-client = %{version}-%{release}
154
155%package debuginfod
156Summary: HTTP ELF/DWARF file server addressed by build-id
157License: GPLv3+
158Requires: elfutils-libs = %{version}-%{release}
159Requires: elfutils-libelf = %{version}-%{release}
160Requires: elfutils-debuginfod-client = %{version}-%{release}
161BuildRequires: systemd
162Requires(post):   systemd
163Requires(preun):  systemd
164Requires(postun): systemd
165Requires(pre): shadow-utils
166# To extract .deb files with a bsdtar (= libarchive) subshell
167Requires: bsdtar
168
169%description debuginfod-client
170The elfutils-debuginfod-client package contains shared libraries
171dynamically loaded from -ldw, which use a debuginfod service
172to look up debuginfo and associated data. Also includes a
173command-line frontend.
174
175%description debuginfod-client-devel
176The elfutils-debuginfod-client-devel package contains the libraries
177to create applications to use the debuginfod service.
178
179%description debuginfod
180The elfutils-debuginfod package contains the debuginfod binary
181and control files for a service that can provide ELF/DWARF
182files to remote clients, based on build-id identification.
183The ELF/DWARF file searching functions in libdwfl can query
184such servers to download those files on demand.
185
186%prep
187%setup -q
188
189%build
190%configure --program-prefix=%{_programprefix} --enable-debuginfod --enable-debuginfod-urls
191make -s %{?_smp_mflags}
192
193%install
194rm -rf ${RPM_BUILD_ROOT}
195mkdir -p ${RPM_BUILD_ROOT}%{_prefix}
196
197%make_install
198
199chmod +x ${RPM_BUILD_ROOT}%{_prefix}/%{_lib}/lib*.so*
200mkdir -p ${RPM_BUILD_ROOT}%{_localstatedir}/cache/debuginfod
201touch ${RPM_BUILD_ROOT}%{_localstatedir}/cache/debuginfod/debuginfod.sqlite
202
203# XXX Nuke unpackaged files
204( cd ${RPM_BUILD_ROOT}
205  rm -f .%{_includedir}/elfutils/libasm.h
206  rm -f .%{_libdir}/libasm.so
207  rm -f .%{_libdir}/libasm.a
208)
209
210install -Dm0644 config/10-default-yama-scope.conf ${RPM_BUILD_ROOT}%{_sysctldir}/10-default-yama-scope.conf
211
212install -Dm0644 config/debuginfod.service ${RPM_BUILD_ROOT}%{_unitdir}/debuginfod.service
213install -Dm0644 config/debuginfod.sysconfig ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig/debuginfod
214mkdir -p ${RPM_BUILD_ROOT}%{_localstatedir}/cache/debuginfod
215touch ${RPM_BUILD_ROOT}%{_localstatedir}/cache/debuginfod/debuginfod.sqlite
216
217%check
218make -s %{?_smp_mflags} check
219
220%post libs -p /sbin/ldconfig
221%postun libs -p /sbin/ldconfig
222%post libelf -p /sbin/ldconfig
223%postun libelf -p /sbin/ldconfig
224%post debuginfod-client -p /sbin/ldconfig
225%postun debuginfod-client -p /sbin/ldconfig
226
227%post default-yama-scope
228# Due to circular dependencies might not be installed yet, so double check.
229# (systemd -> elfutils-libs -> default-yama-scope -> systemd)
230if [ -x /usr/lib/systemd/systemd-sysctl ] ; then
231%sysctl_apply 10-default-yama-scope.conf
232fi
233
234%files
235%license COPYING COPYING-GPLV2 COPYING-LGPLV3 doc/COPYING-GFDL
236%doc README TODO CONTRIBUTING
237%{_bindir}/eu-addr2line
238%{_bindir}/eu-ar
239%{_bindir}/eu-elfclassify
240%{_bindir}/eu-elfcmp
241%{_bindir}/eu-elfcompress
242%{_bindir}/eu-elflint
243%{_bindir}/eu-findtextrel
244%{_bindir}/eu-make-debug-archive
245%{_bindir}/eu-nm
246%{_bindir}/eu-objdump
247%{_bindir}/eu-ranlib
248%{_bindir}/eu-readelf
249%{_bindir}/eu-size
250%{_bindir}/eu-stack
251%{_bindir}/eu-strings
252%{_bindir}/eu-strip
253%{_bindir}/eu-unstrip
254%{_mandir}/man1/eu-*.1*
255
256%files libs
257%license COPYING-GPLV2 COPYING-LGPLV3
258%{_libdir}/libasm-%{version}.so
259%{_libdir}/libdw-%{version}.so
260%{_libdir}/libasm.so.*
261%{_libdir}/libdw.so.*
262
263%files devel
264%{_includedir}/dwarf.h
265%dir %{_includedir}/elfutils
266%{_includedir}/elfutils/elf-knowledge.h
267%{_includedir}/elfutils/known-dwarf.h
268#%%{_includedir}/elfutils/libasm.h
269%{_includedir}/elfutils/libdw.h
270%{_includedir}/elfutils/libdwfl.h
271%{_includedir}/elfutils/libdwelf.h
272%{_includedir}/elfutils/version.h
273#%%{_libdir}/libasm.so
274%{_libdir}/libdw.so
275%{_libdir}/pkgconfig/libdw.pc
276
277%files devel-static
278%{_libdir}/libdw.a
279#%%{_libdir}/libasm.a
280
281%files libelf
282%license COPYING-GPLV2 COPYING-LGPLV3
283%{_libdir}/libelf-%{version}.so
284%{_libdir}/libelf.so.*
285%{_datadir}/locale/*/LC_MESSAGES/elfutils.mo
286
287%files libelf-devel
288%{_includedir}/libelf.h
289%{_includedir}/gelf.h
290%{_includedir}/nlist.h
291%{_libdir}/libelf.so
292%{_libdir}/pkgconfig/libelf.pc
293%{_mandir}/man3/elf_*.3*
294
295%files libelf-devel-static
296%{_libdir}/libelf.a
297
298%files default-yama-scope
299%{_sysctldir}/10-default-yama-scope.conf
300
301%files debuginfod-client
302%defattr(-,root,root)
303%{_libdir}/libdebuginfod-%{version}.so
304%{_libdir}/libdebuginfod.so.*
305%{_bindir}/debuginfod-find
306%{_mandir}/man1/debuginfod-find.1*
307%{_mandir}/man7/debuginfod*.7*
308%config(noreplace) %{_sysconfdir}/profile.d/*
309%config(noreplace) %{_sysconfdir}/debuginfod/*
310
311%files debuginfod-client-devel
312%defattr(-,root,root)
313%{_libdir}/pkgconfig/libdebuginfod.pc
314%{_mandir}/man3/debuginfod_*.3*
315%{_mandir}/man7/debuginfod*.7*
316%{_includedir}/elfutils/debuginfod.h
317%{_libdir}/libdebuginfod.so
318
319%files debuginfod
320%defattr(-,root,root)
321%{_bindir}/debuginfod
322%config(noreplace) %{_sysconfdir}/sysconfig/debuginfod
323%{_unitdir}/debuginfod.service
324%{_mandir}/man8/debuginfod*.8*
325%{_mandir}/man7/debuginfod*.7*
326
327%dir %attr(0700,debuginfod,debuginfod) %{_localstatedir}/cache/debuginfod
328%ghost %attr(0600,debuginfod,debuginfod) %{_localstatedir}/cache/debuginfod/debuginfod.sqlite
329
330%pre debuginfod
331getent group debuginfod >/dev/null || groupadd -r debuginfod
332getent passwd debuginfod >/dev/null || \
333    useradd -r -g debuginfod -d /var/cache/debuginfod -s /sbin/nologin \
334            -c "elfutils debuginfo server" debuginfod
335exit 0
336
337%post debuginfod
338%systemd_post debuginfod.service
339
340%postun debuginfod
341%systemd_postun_with_restart debuginfod.service
342
343%changelog
344* Wed Nov  2 2022 Mark Wielaard <mark@klomp.org> 0.188-1
345- readelf: Add -D, --use-dynamic option.
346- debuginfod-client: Add $DEBUGINFOD_HEADERS_FILE setting to supply
347  outgoing HTTP headers.
348  Add new function debuginfod_find_section.
349- debuginfod: Add --disable-source-scan option.
350- libdwfl: Add new function dwfl_get_debuginfod_client.
351  Add new function dwfl_frame_reg.
352  Add new function dwfl_report_offline_memory.
353
354* Mon Apr 25 2022 Mark Wielaard <mark@klomp.org> 0.187-1
355- debuginfod: Support -C option for connection thread pooling.
356- debuginfod-client: Negative cache file are now zero sized instead
357  of no-permission files.
358- addr2line: The -A, --absolute option, which shows file names
359  includingthe full compilation directory is now the
360  default.  To get theold behavior use the new option --relative.
361- readelf, elflint: Recognize FDO Packaging Metadata ELF notes
362- libdw, debuginfo-client: Load libcurl lazily only when files need
363  to be fetched remotely. libcurl is now never loaded when
364  DEBUGINFOD_URLS is unset. And whenDEBUGINFOD_URLS is set,
365  libcurl is only loaded when the debuginfod_begin function is
366  called.
367
368* Wed Nov 10 2021 Mark Wielaard <mark@klomp.org> 0.186-1
369- debuginfod-client: Default $DEBUGINFOD_URLS is computed from
370  drop-in files /etc/debuginfod/*.urls rather than
371  hardcoded into the /etc/profile.d/debuginfod*
372  scripts.
373  Add $DEBUGINFOD_MAXSIZE and $DEBUGINFOD_MAXTIME settings
374  for skipping large/slow transfers.
375  Add $DEBUGINFOD_RETRY for retrying aborted lookups.
376- debuginfod: Supply extra HTTP response headers, describing
377  archive/file names that satisfy the requested buildid content.
378  Support -d :memory: option for in-memory databases.
379  Protect against loops in federated server configurations.
380  Add -r option to use -I/-X regexes for grooming stale files.
381  Protect against wasted CPU from duplicate concurrent requests.
382  Limit the duration of groom ops roughly to rescan (-t) times.
383  Add --passive mode for serving from read-only database.
384  Several other performance improvements & prometheus metrics.
385- libdw: Support for the NVIDIA Cuda line map extensions.
386  DW_LNE_NVIDIA_inlined_call and DW_LNE_NVIDIA_set_function_name
387  are defined in dwarf.h. New functions dwarf_linecontext and
388  dwarf_linefunctionname.
389- translations: Update Japanese translation.
390
391* Sat May 22 2021 Mark Wielaard <mark@klomp.org> 0.185-1
392- debuginfod-client: Simplify curl handle reuse so downloads which
393                     return an error are retried.
394- elfcompress: Always exit with code 0 when the operation succeeds
395               (even when nothing was done). On error the exit code is
396               now always 1.
397
398* Mon May 10 2021  Mark Wielaard <mark@klomp.org> 0.184-1
399- debuginfod: Use libarchive's bsdtar as the .deb-family file unpacker.
400- debuginfod-client: Client caches negative results. If a query for a
401		   file failed with 404, an empty 000 permission
402		   file is created in the cache. This will prevent
403		   requesting the same file for the next 10 minutes.
404- 		   Client objects now carry long-lived curl handles
405		   for outgoing connections.  This makes it more
406		   efficient for multiple sequential queries, because
407		   the TCP connections and/or TLS state info are kept
408		   around awhile, avoiding O(100ms) setup latencies.
409- libdw: handle DW_FORM_indirect when reading attributes
410- translations: Update Polish translation.
411
412* Fri Feb  5 2021 Mark Wielaard <mark@klomp.org> 0.183-1
413- debuginfod: New thread-busy metric and more detailed error metrics.
414  New --fdcache-mintmp and tracking of filesystem freespace.
415- debigonfod-client: DEBUGINFOD_SONAME macro added to debuginfod.h can
416  be used to dlopen the libdebuginfod.so library.
417  New function debuginfod_set_verbose_fd and DEBUGINFOD_VERBOSE
418  environment variable.
419- config: profile.sh and profile.csh won't export DEBUGINFOD_URLS
420  unless configured --enable-debuginfod-urls[=URLS]
421- elflint, readelf: Recognize SHF_GNU_RETAIN.
422  Handle SHT_X86_64_UNWIND as valid relocation target type.
423
424* Sat Oct 31 2020 Mark Wielaard <mark@klomp.org> 0.182-1
425- backends: Support for tilegx has been removed.
426- config: New /etc/profile.d files to provide default $DEBUGINFOD_URLS.
427- debuginfod: More efficient package traversal, tolerate various
428  errors during scanning, grooming progress is more visible and
429  interruptible, more prometheus metrics.
430- debuginfod-client: Now supports compressed (kernel) ELF images.
431- libdwfl: Add ZSTD compression support.
432
433* Tue Sep  8 2020 Mark Wielaard <mark@klomp.org> 0.181-1
434- libelf: elf_update now compensates (fixes up) a bad sh_addralign
435  for SHF_COMPRESSED sections.
436- libdebuginfod: configure now takes --enable-libdebuginfod=dummy or
437  --disable-libdebuginfod for bootstrapping.
438  DEBUGINFOD_URLS now accepts "scheme-free" urls
439  (guessing at what the user meant, either http:// or file://)
440- readelf, elflint: Handle aarch64 bti, pac bits in dynamic table and
441  gnu property notes.
442- libdw, readelf: Recognize DW_CFA_AARCH64_negate_ra_state. Allows
443  unwinding on arm64 for code that is compiled for PAC
444  (Pointer Authentication Code) as long as it isn't enabled.
445
446* Thu Jun 11 2020 Mark Wielaard <mark@klomp.org> 0.180-1
447- elflint: Allow SHF_EXCLUDE as generic section flag when --gnu is given.
448- libdw, readelf: Handle GCC LTO .gnu.debuglto_ prefix.
449- libdw: Use correct CU to resolve file names in dwarf_decl_file.
450- libdwfl: Handle debugaltlink in dwfl_standard_find_debuginfo.
451- size: Also obey radix printing for bsd format.
452- nm: Explicitly print weak 'V' or 'T' and common 'C' symbols.
453
454* Mon Mar 30 2020 Mark Wielaard <mark@klomp.org> 0.179-1
455- debuginfod-client: When DEBUGINFOD_PROGRESS is set and the program
456  doesn't install its own debuginfod_progressfn_t show download
457  progress on stderr.
458  DEBUGINFOD_TIMEOUT is now defined as seconds to get at least 100K,
459  defaults to 90 seconds.
460  Default to $XDG_CACHE_HOME/debuginfod_client.
461  New functions debuginfod_set_user_data, debuginfod_get_user_data,
462  debuginfod_get_url and debuginfod_add_http_header.
463  Support for file:// URLs.
464- debuginfod: Uses libarchive directly for reading rpm archives.
465  Support for indexing .deb/.ddeb archives through dpkg-deb or bsdtar.
466  Generic archive support through -Z EXT[=CMD]. Which can be used for
467  example for arch-linux pacman files by using -Z '.tar.zst=zstdcat'.
468  Better logging using User-Agent and X-Forwarded-For headers.
469  More prometheus metrics.
470  Support for eliding dots or extraneous slashes in path names.
471- debuginfod-find: Accept /path/names in place of buildid hex.
472- libelf: Handle PN_XNUM in elf_getphdrnum before shdr 0 is cached.
473  Ensure zlib resource cleanup on failure.
474- libdwfl: dwfl_linux_kernel_find_elf and dwfl_linux_kernel_report_offline
475  now find and handle a compressed vmlinuz image.
476- readelf, elflint: Handle PT_GNU_PROPERTY.
477- translations: Updated Ukrainian translation.
478
479* Tue Nov 26 2019 Mark Wielaard <mark@klomp.org> 0.178-1
480- debuginfod: New server, client tool and library to index and fetch
481              ELF/DWARF files addressed by build-id through HTTP.
482- doc: There are now some manual pages for functions and tools.
483- backends: The libebl libraries are no longer dynamically loaded
484            through dlopen, but are now compiled into libdw.so directly.
485- readelf: -n, --notes now takes an optional "SECTION" argument.
486           -p and -x now also handle section numbers.
487           New option --dyn-sym to show just the dynamic symbol table.
488- libcpu: Add RISC-V disassembler.
489- libdw: Abbrevs and DIEs can now be read concurrently by multiple
490         threads through the same Dwarf handle.
491- libdwfl: Will try to use debuginfod when installed as fallback to
492           retrieve ELF and DWARF debug data files by build-id.
493
494* Tue Aug 13 2019 Mark Wielaard <mark@klomp.org> 0.177-1
495- elfclassify: New tool to analyze ELF objects.
496- readelf: Print DW_AT_data_member_location as decimal offset.
497           Decode DW_AT_discr_list block attributes.
498- libdw: Add DW_AT_GNU_numerator, DW_AT_GNU_denominator and DW_AT_GNU_bias.
499- libdwelf: Add dwelf_elf_e_machine_string.
500            dwelf_elf_begin now only returns NULL when there is an error
501            reading or decompressing a file. If the file is not an ELF file
502            an ELF handle of type ELF_K_NONE is returned.
503- backends: Add support for C-SKY.
504
505* Thu Feb 14 2019 Mark Wielaard <mark@klomp.org> 0.176-1
506- build: Add new --enable-install-elfh option.
507  Do NOT use this for system installs (it overrides glibc elf.h).
508- backends: riscv improved core file and return value location support.
509- Fixes CVE-2019-7146, CVE-2019-7148, CVE-2019-7149, CVE-2019-7150,
510        CVE-2019-7664, CVE-2019-7665.
511
512* Wed Nov 14 2018 Mark Wielaard <mark@klomp.org> 0.175-1
513- readelf: Handle multiple .debug_macro sections.
514  Recognize and parse GNU Property notes, NT_VERSION notes and
515  GNU Build Attribute ELF Notes.
516- strip: Handle SHT_GROUP correctly.
517  Add strip --reloc-debug-sections-only option.
518  Handle relocations against GNU compressed sections.
519- libdwelf: New function dwelf_elf_begin.
520- libcpu: Recognize bpf jump variants BPF_JLT, BPF_JLE, BPF_JSLT
521  and BPF_JSLE.
522- backends: RISCV handles ADD/SUB relocations.
523  Handle SHT_X86_64_UNWIND.
524- Fixes CVE-2018-18310, CVE-2018-18520 and CVE-2018-18521.
525
526* Fri Sep 14 2018 Mark Wielaard <mark@klomp> 0.174-1
527- libelf, libdw and all tools now handle extended shnum and shstrndx
528  correctly.
529- elfcompress: Don't rewrite input file if no section data needs
530  updating.  Try harder to keep same file mode bits (suid) on rewrite.
531- strip: Handle mixed (out of order) allocated/non-allocated sections.
532- unstrip: Handle SHT_GROUP sections.
533- backends: RISCV and M68K now have backend implementations to
534  generate CFI based backtraces.
535- Fixes CVE-2018-16062, CVE-2018-16402 and CVE-2018-16403.
536
537* Fri Jun 29 2018 Mark Wielaard,,, <mark@klomp.org> 0.173-1
538- More fixes for crashes and hangs found by afl-fuzz. In particular
539  various functions now detect and break infinite loops caused by bad
540  DIE tree cycles.
541- readelf: Will now lookup the size and signedness of constant value
542  types to display them correctly (and not just how they were encoded).
543- libdw: New function dwarf_next_lines to read CU-less .debug_line data.
544  dwarf_begin_elf now accepts ELF files containing just .debug_line
545  or .debug_frame sections (which can be read without needing a DIE
546  tree from the .debug_info section).
547  Removed dwarf_getscn_info, which was never implemented.
548- backends: Handle BPF simple relocations.
549  The RISCV backends now handles ABI specific CFI and knows about
550  RISCV register types and names.
551
552* Mon Jun 11 2018 Mark Wielaard <mark@klomp.org> 0.172-1
553- No functional changes compared to 0.171.
554- Various bug fixes in libdw and eu-readelf dealing with bad DWARF5
555  data. Thanks to running the afl fuzzer on eu-readelf and various
556  testcases.
557- eu-readelf -N is ~15% faster.
558
559* Fri Jun 01 2018 Mark Wielaard <mark@klomp.org> 0.171-1
560- DWARF5 and split dwarf, including GNU DebugFission, support.
561- readelf: Handle all new DWARF5 sections.
562  --debug-dump=info+ will show split unit DIEs when found.
563  --dwarf-skeleton can be used when inspecting a .dwo file.
564  Recognizes GNU locviews with --debug-dump=loc.
565- libdw: New functions dwarf_die_addr_die, dwarf_get_units,
566  dwarf_getabbrevattr_data and dwarf_cu_info.
567  libdw will now try to resolve the alt file on first use
568  when not set yet with dwarf_set_alt.
569  dwarf_aggregate_size() now works with multi-dimensional arrays.
570- libdwfl: Use process_vm_readv when available instead of ptrace.
571- backends: Add a RISC-V backend.
572
573* Wed Aug  2 2017 Mark Wielaard <mark@klomp.org> 0.170-1
574- libdw: Added new DWARF5 attribute, tag, character encoding,
575  language code, calling convention, defaulted member function
576  and macro constants to dwarf.h.
577  New functions dwarf_default_lower_bound and dwarf_line_file.
578  dwarf_peel_type now handles DWARF5 immutable, packed and shared tags.
579  dwarf_getmacros now handles DWARF5 .debug_macro sections.
580- strip: Add -R, --remove-section=SECTION and --keep-section=SECTION.
581- backends: The bpf disassembler is now always build on all platforms.
582
583* Fri May  5 2017 Mark Wielaard <mark@klomp.org> 0.169-1
584- backends: Add support for EM_PPC64 GNU_ATTRIBUTES.
585  Frame pointer unwinding fallback support for i386, x86_64, aarch64.
586- translations: Update Polish translation.
587
588* Tue Dec 27 2016 Mark Wielaard <mark@klomp.org> 0.168-1
589- http://elfutils.org/ is now hosted at http://sourceware.org/elfutils/
590- libelf: gelf_newehdr and gelf_newehdr now return void *.
591- libdw: dwarf.h corrected the DW_LANG_PLI constant name (was DW_LANG_PL1).
592- readelf: Add optional --symbols[=SECTION] argument to select section name.
593
594* Thu Aug  4 2016 Mark Wielaard <mjw@redhat.com> 0.167-1
595- libasm: Add eBPF disassembler for EM_BPF files.
596- backends: Add m68k and BPF backends.
597- ld: Removed.
598- dwelf: Add ELF/DWARF string table creation functions.
599  dwelf_strtab_init, dwelf_strtab_add, dwelf_strtab_add_len,
600  dwelf_strtab_finalize, dwelf_strent_off, dwelf_strent_str and
601  dwelf_strtab_free.
602
603* Thu Mar 31 2016 Mark Wielaard <mjw@redhat.com> 0.166-1
604- config: The default program prefix for the installed tools is now
605  eu-. Use configure --program-prefix="" to not use a program prefix.
606
607* Fri Jan  8 2016 Mark Wielaard <mjw@redhat.com> 0.165-1
608- elfcompress: New utility to compress or decompress ELF sections.
609- readelf: Add -z,--decompress option.
610- libelf: Add elf_compress, elf_compress_gnu, elf32_getchdr,
611  elf64_getchdr and gelf_getchdr.
612- libdwelf: New function dwelf_scn_gnu_compressed_size.
613- config: Add libelf and libdw pkg-config files.
614- backends: sparc support for core and live backtraces.
615- translations: Updated Polish translation.
616
617* Thu Oct 15 2015 Mark Wielaard <mjw@redhat.com> 0.164-1
618- strip, unstrip: Handle ELF files with merged strtab/shstrtab
619  tables. Handle missing SHF_INFO_LINK section flags.
620- libelf: Use int64_t for offsets in libelf.h instead of loff_t.
621- libdw: dwarf.h Add preliminary DWARF5 DW_LANG_Haskell.
622- libdwfl: dwfl_standard_find_debuginfo now searches any subdir of
623  the binary path under the debuginfo root when the separate
624  debug file couldn't be found by build-id.
625  dwfl_linux_proc_attach can now be called before any Dwfl_Modules
626  have been reported.
627- backends: Better sparc and sparc64 support.
628- translations: Updated Ukrainian translation.
629- Provide default-yama-scope subpackage.
630
631* Fri Jun 19 2015 Mark Wielaard <mjw@redhat.com> 0.163-1
632- Bug fixes only, no new features.
633
634* Wed Jun 10 2015 Mark Wielaard <mjw@redhat.com> 0.162-1
635- libdw: Install new header elfutils/known-dwarf.h.
636  dwarf.h Add preliminary DWARF5 constants DW_TAG_atomic_type,
637  DW_LANG_Fortran03, DW_LANG_Fortran08. dwarf_peel_type now also
638  handles DW_TAG_atomic_type.
639- addr2line: Input addresses are now always interpreted as
640  hexadecimal numbers, never as octal or decimal numbers.
641  New option -a, --addresses to print address before each entry.
642  New option -C, --demangle to show demangled symbols.
643  New option --pretty-print to print all information on one line.
644- ar: CVE-2014-9447 Directory traversal vulnerability in ar
645  extraction.
646- backends: x32 support.
647
648* Thu Dec 18 2014 Mark Wielaard <mjw@redhat.com> 0.161-1
649- libdw: New function dwarf_peel_type. dwarf_aggregate_size now uses
650  dwarf_peel_type to also provide the sizes of qualified types.
651  dwarf_getmacros will now serve either of .debug_macro and
652  .debug_macinfo transparently.  New interfaces dwarf_getmacros_off,
653  dwarf_macro_getsrcfiles, dwarf_macro_getparamcnt, and
654  dwarf_macro_param are available for more generalized inspection of
655  macros and their parameters.
656  dwarf.h: Add DW_AT_GNU_deleted, DW_AT_noreturn, DW_LANG_C11,
657  DW_LANG_C_plus_plus_11 and DW_LANG_C_plus_plus_14.
658
659* Mon Aug 25 2014 Mark Wielaard <mjw@redhat.com> 0.160-1
660- libdw: New functions dwarf_cu_getdwarf, dwarf_cu_die.
661  dwarf.h remove non-existing DW_TAG_mutable_type.
662- libdwfl: Handle LZMA .ko.xz compressed kernel modules.
663- unstrip: New option -F, --force to combining files even if some ELF
664  headers don't seem to match.
665- backends: Handle ARM THUMB functions. Add support for ppc64le ELFv2 abi.
666
667* Sat May 17 2014 Mark Wielaard <mjw@redhat.com> 0.159-1
668- stack: New option -d, --debugname to lookup DWARF debuginfo name
669  for frame.  New option -i, --inlines to show inlined frames
670  using DWARF debuginfo.
671- libdwelf: New libdwelf.h header for libdw.so DWARF ELF Low-level
672  Functions.  New function dwelf_elf_gnu_debuglink,
673  dwelf_dwarf_gnu_debugaltlink, and dwelf_elf_gnu_build_id.
674- libdw: Support for DWZ multifile forms DW_FORM_GNU_ref_alt and
675  DW_FORM_GNU_strp_alt is now enabled by default and no longer
676  experimental. Added new functions dwarf_getalt and dwarf_setalt
677  to get or set the alternative debug file used for the alt FORMs.
678  The dwfl_linux_proc_find_elf callback will now find ELF from
679  process memory for (deleted) files if the Dwfl has process state
680  attached.
681- libdwfl: The dwfl_build_id_find_debuginfo and
682  dwfl_standard_find_debuginfo functions will now try to
683  resolve and set the alternative debug file.
684- backends: Add CFI unwinding for arm. Relies on .debug_frame.
685  Add arm process initial register state compatible mode to AARCH64.
686  Add aarch64 native and core unwind support.
687- other: All separate elfutils-robustify patches have been merged.
688  CVE-2014-0172 Check overflow before calling malloc to uncompress
689  data.
690
691* Fri Jan  3 2014 Mark Wielaard <mjw@redhat.com> 0.158-1
692- libdwfl: dwfl_core_file_report has new parameter executable.
693  New functions dwfl_module_getsymtab_first_global,
694  dwfl_module_getsym_info and dwfl_module_addrinfo.
695  Added unwinder with type Dwfl_Thread_Callbacks, opaque types
696  Dwfl_Thread and Dwfl_Frame and functions dwfl_attach_state,
697  dwfl_pid, dwfl_thread_dwfl, dwfl_thread_tid, dwfl_frame_thread,
698  dwfl_thread_state_registers, dwfl_thread_state_register_pc,
699  dwfl_getthread_frames, dwfl_getthreads, dwfl_thread_getframes
700  and dwfl_frame_pc.
701- addr2line: New option -x to show the section an address was found in.
702- stack: New utility that uses the new unwinder for processes and cores.
703- backends: Unwinder support for i386, x86_64, s390, s390x, ppc and ppc64.
704  aarch64 support.
705
706* Mon Sep 30 2013 Mark Wielaard <mjw@redhat.com> 0.157-1
707- libdw: Add new functions dwarf_getlocations, dwarf_getlocation_attr
708         and dwarf_getlocation_die.
709- readelf: Show contents of NT_SIGINFO and NT_FILE core notes.
710- addr2line: Support -i, --inlines output option.
711- backends: abi_cfi hook for arm, ppc and s390.
712
713* Thu Jul 25 2013 Jan Kratochvil <jan.kratochvil@redhat.com> 0.156-1
714- lib: New macro COMPAT_VERSION_NEWPROTO.
715- libdw: Handle GNU extension opcodes in dwarf_getlocation.
716- libdwfl: Fix STB_GLOBAL over STB_WEAK preference in
717  dwfl_module_addrsym.          Add minisymtab support.          Add
718  parameter add_p_vaddr to dwfl_report_elf.          Use DT_DEBUG
719  library search first.
720- libebl: Handle new core note types in EBL.
721- backends: Interpret NT_ARM_VFP.           Implement core file
722  registers parsing for s390/s390x.
723- readelf: Add --elf-section input option to inspect an embedded ELF
724  file.          Add -U, --unresolved-address-offsets output control.
725         Add --debug-dump=decodedline support.          Accept version
726  8 .gdb_index section format.          Adjust output formatting width.
727           When highpc is in constant form print it also as address.
728        Display raw .debug_aranges. Use libdw only for decodedaranges.
729- elflint: Add __bss_start__ to the list of allowed symbols.
730- tests: Add configure --enable-valgrind option to run all tests
731  under valgrind.        Enable automake parallel-tests for make check.
732- translations: Updated Polish translation.
733- Updates for Automake 1.13.
734
735* Fri Aug 24 2012 Mark Wielaard <mjw@redhat.com> 0.155-1
736- libelf: elf*_xlatetomd now works for cross-endian ELF note data.
737       elf_getshdr now works consistently on non-mmaped ELF files after
738          calling elf_cntl(ELF_C_FDREAD).         Implement support for
739  ar archives with 64-bit symbol table.
740- libdw: dwarf.h corrected the DW_LANG_ObjC constant name (was
741  DW_LANG_Objc).        Any existing sources using the old name will
742  have to be updated.        Add DW_MACRO_GNU .debug_macro type
743  encodings constants, DW_ATE_UTF        and DW_OP_GNU_parameter_ref to
744  dwarf.h.        Experimental support for DWZ multifile forms
745  DW_FORM_GNU_ref_alt        and DW_FORM_GNU_strp_alt.  Disabled by
746  default.  Use configure        --enable-dwz to test it.
747- readelf: Add .debug_macro parsing support.          Add .gdb_index
748  version 7 parsing support.          Recognize DW_OP_GNU_parameter_ref.
749- backends: Add support for Tilera TILE-Gx processor.
750- translations: Updated Ukrainian translation.
751
752* Fri Jun 22 2012 Mark Wielaard <mjw@redhat.com> 0.154-1
753- libelf: [g]elf[32|64]_offscn() do not match SHT_NOBITS sections at
754  OFFSET.
755- libdw: dwarf_highpc function now handles DWARF 4 DW_AT_high_pc
756  constant form.        Fix bug using dwarf_next_unit to iterate over
757  .debug_types.
758- elflint: Now accepts gold linker produced executables.
759- The license is now GPLv2/LGPLv3+ for the libraries and GPLv3+ for
760  stand-alone programs. There is now also a formal CONTRIBUTING
761  document describing how to submit patches.
762
763* Thu Feb 23 2012 Mark Wielaard <mjw@redhat.com> 0.153-1
764- libdw: Support reading .zdebug_* DWARF sections compressed via zlib.
765- libdwfl: Speed up dwfl_module_addrsym.
766- nm: Support C++ demangling.
767- ar: Support D modifier for "deterministic output" with no
768  uid/gid/mtime info.     The U modifier is the inverse.     elfutils
769  can be configured with the --enable-deterministic-archives     option
770  to make the D behavior the default when U is not specified.
771- ranlib: Support -D and -U flags with same meaning.
772- readelf: Improve output of -wline. Add support for printing SDT elf
773  notes.          Add printing of .gdb_index section. 	 Support for
774  typed DWARF stack, call_site and entry_value.
775- strip: Add --reloc-debug-sections option.        Improved SHT_GROUP
776  sections handling.
777
778* Tue Feb 15 2011  <drepper@gmail.com> 0.152-1
779- Various build and warning nits fixed for newest GCC and Autoconf.
780- libdwfl: Yet another prelink-related fix for another regression.
781  	 Look for Linux kernel images in files named with compression
782  suffixes.
783- elfcmp: New flag --ignore-build-id to ignore differing build ID
784  bits. 	New flag -l/--verbose to print all differences.
785
786* Wed Jan 12 2011  <drepper@gmail.com> 0.151-1
787- libdwfl: Fix for more prelink cases with separate debug file.
788- strip: New flag --strip-sections to remove section headers entirely.
789
790* Mon Nov 22 2010  <drepper@gmail.com> 0.150-1
791- libdw: Fix for handling huge .debug_aranges section.
792- libdwfl: Fix for handling prelinked DSO with separate debug file.
793- findtextrel: Fix diagnostics to work with usual section ordering.
794- libebl: i386 backend fix for multi-register integer return value
795  location.
796
797* Mon Sep 13 2010  <drepper@redhat.com> 0.149-1
798- libdw: Decode new DW_OP_GNU_implicit_pointer operation;        new
799  function dwarf_getlocation_implicit_pointer.
800- libdwfl: New function dwfl_dwarf_line.
801- addr2line: New flag -F/--flags to print more DWARF line information
802  details.
803- strip: -g recognizes .gdb_index as a debugging section.
804
805* Mon Jun 28 2010  <drepper@redhat.com> 0.148-1
806- libdw: Accept DWARF 4 format: new functions dwarf_next_unit,
807  dwarf_offdie_types.        New functions dwarf_lineisa,
808  dwarf_linediscriminator, dwarf_lineop_index.
809- libdwfl: Fixes in core-file handling, support cores from PIEs.
810  	 When working from build IDs, don't open a named file that
811  mismatches.
812- readelf: Handle DWARF 4 formats.
813
814* Mon May  3 2010 Ulrich Drepper <drepper@redhat.com> 0.147-1
815- libdw: Fixes in CFI handling, best possible handling of bogus CFA
816  ops.
817- libdwfl: Ignore R_*_NONE relocs, works around old (binutils) ld -r
818  bugs.
819
820* Wed Apr 21 2010  <drepper@redhat.com> 0.146-1
821- libdwfl: New function dwfl_core_file_report.
822
823* Tue Feb 23 2010 Ulrich Drepper <drepper@redhat.com> 0.145-1
824- Fix build with --disable-dependency-tracking.
825- Fix build with most recent glibc headers.
826- libelf: More robust to bogus section headers.
827- libdw: Fix CFI decoding.
828- libdwfl: Fix address bias returned by CFI accessors. 	 Fix core
829  file module layout identification.
830- readelf: Fix CFI decoding.
831
832* Thu Jan 14 2010  <drepper@redhat.com> 0.144-1
833- libelf: New function elf_getphdrnum. 	Now support using more than
834  65536 program headers in a file.
835- libdw: New function dwarf_aggregate_size for computing (constant)
836  type        sizes, including array_type cases with nontrivial
837  calculation.
838- readelf: Don't give errors for missing info under -a.
839  Handle Linux "VMCOREINFO" notes under -n.
840
841* Mon Sep 21 2009  <drepper@redhat.com> 0.143-1
842- libdw: Various convenience functions for individual attributes now
843  use dwarf_attr_integrate to look up indirect inherited
844  attributes.  Location expression handling now supports
845  DW_OP_implicit_value.
846- libdwfl: Support automatic decompression of files in XZ format,
847  and of Linux kernel images made with bzip2 or LZMA (as well
848  as gzip).
849
850* Mon Jun 29 2009  <drepper@redhat.com> 0.142-1
851- libelf: Add elf_getshdrnum alias for elf_getshnum and elf_getshdrstrndx alias
852  for elf_getshstrndx and deprecate original names.  Sun screwed up
853  their implementation and asked for a solution.
854- libebl: Add support for STB_GNU_UNIQUE.
855- elflint: Add support for STB_GNU_UNIQUE.
856- readelf: Add -N option, speeds up DWARF printing without address->name lookups.
857- libdw: Add support for decoding DWARF CFI into location description form.
858  Handle some new DWARF 3 expression operations previously omitted.
859  Basic handling of some new encodings slated for DWARF
860
861* Thu Apr 23 2009 Ulrich Drepper <drepper@redhat.com> 0.141-1
862- libebl: sparc backend fixes; 	some more arm backend support
863- libdwfl: fix dwfl_module_build_id for prelinked DSO case;
864  fixes in core file support; 	 dwfl_module_getsym interface
865  improved for non-address symbols
866- strip: fix infinite loop on strange inputs with -f
867- addr2line: take -j/--section=NAME option for binutils compatibility
868  	   (same effect as '(NAME)0x123' syntax already supported)
869
870* Mon Feb 16 2009 Ulrich Drepper <drepper@redhat.com> 0.140-1
871- libelf: Fix regression in creation of section header
872- libdwfl: Less strict behavior if DWARF reader is just used to
873  display data
874
875* Thu Jan 22 2009 Ulrich Drepper <drepper@redhat.com> 0.139-1
876- libcpu: Add Intel SSE4 disassembler support
877- readelf: Implement call frame information and exception handling
878  dumping.          Add -e option.  Enable it implicitly for -a.
879- elflint: Check PT_GNU_EH_FRAME program header entry.
880- libdwfl: Support automatic gzip/bzip2 decompression of ELF files.
881
882* Wed Dec 31 2008 Roland McGrath <roland@redhat.com> 0.138-1
883- Install <elfutils/version.h> header file for applications to use in
884  source version compatibility checks.
885- libebl: backend fixes for i386 TLS relocs; backend support for
886  NT_386_IOPERM
887- libcpu: disassembler fixes
888- libdwfl: bug fixes
889- libelf: bug fixes
890- nm: bug fixes for handling corrupt input files
891
892* Tue Aug 26 2008 Ulrich Drepper <drepper@redhat.com> 0.137-1
893- Minor fixes for unreleased 0.136 release.
894
895* Mon Aug 25 2008 Ulrich Drepper <drepper@redhat.com> 0.136-1
896- libdwfl: bug fixes; new segment interfaces;	 all the libdwfl-based
897 tools now support --core=COREFILE option
898
899* Mon May 12 2008 Ulrich Drepper <drepper@redhat.com> 0.135-1
900- libdwfl: bug fixes
901- strip: changed handling of ET_REL files wrt symbol tables and relocs
902
903* Tue Apr  8 2008 Ulrich Drepper <drepper@redhat.com> 0.134-1
904- elflint: backend improvements for sparc, alpha
905- libdwfl, libelf: bug fixes
906
907* Sat Mar  1 2008 Ulrich Drepper <drepper@redhat.com> 0.133-1
908- readelf, elflint, libebl: SHT_GNU_ATTRIBUTE section handling (readelf -A)
909- readelf: core note handling for NT_386_TLS, NT_PPC_SPE, Alpha NT_AUXV
910- libdwfl: bug fixes and optimization in relocation handling
911- elfcmp: bug fix for non-allocated section handling
912- ld: implement newer features of binutils linker.
913
914* Mon Jan 21 2008 Ulrich Drepper <drepper@redhat.com> 0.132-1
915- libcpu: Implement x86 and x86-64 disassembler.
916- libasm: Add interface for disassembler.
917- all programs: add debugging of branch prediction.
918- libelf: new function elf_scnshndx.
919
920* Sun Nov 11 2007 Ulrich Drepper <drepper@redhat.com> 0.131-1
921- libdw: DW_FORM_ref_addr support; dwarf_formref entry point now depreca
922ted;       bug fixes for oddly-formatted DWARF
923- libdwfl: bug fixes in offline archive support, symbol table handling;
924	 apply partial relocations for dwfl_module_address_section on
925ET_REL
926- libebl: powerpc backend support for Altivec registers
927
928* Mon Oct 15 2007 Ulrich Drepper <drepper@redhat.com> 0.130-1
929- readelf: -p option can take an argument like -x for one section,
930	 or no argument (as before) for all SHF_STRINGS sections;
931	 new option --archive-index (or -c);	 improved -n output for
932core files, on many machines
933- libelf: new function elf_getdata_rawchunk, replaces gelf_rawchunk;
934	new functions gelf_getnote, gelf_getauxv, gelf_update_auxv
935- readelf, elflint: handle SHT_NOTE sections without requiring phdrs
936- elflint: stricter checks on debug sections
937- libdwfl: new functions dwfl_build_id_find_elf, dwfl_build_id_find_debu
938ginfo,	 dwfl_module_build_id, dwfl_module_report_build_id;	 suppo
939rt dynamic symbol tables found via phdrs;	 dwfl_standard_find_de
940buginfo now uses build IDs when available
941- unstrip: new option --list (or -n)
942- libebl: backend improvements for sparc, alpha, powerpc
943
944* Tue Aug 14 2007 Ulrich Drepper <drepper@redhat.com> 0.129-1
945- readelf: new options --hex-dump (or -x), --strings (or -p)
946- addr2line: new option --symbols (or -S)
947
948* Wed Apr 18 2007 Ulrich Drepper <drepper@redhat.com> 0.127-1
949- libdw: new function dwarf_getsrcdirs
950- libdwfl: new functions dwfl_module_addrsym, dwfl_report_begin_add,
951	 dwfl_module_address_section
952
953* Mon Feb  5 2007 Ulrich Drepper <drepper@redhat.com> 0.126-1
954- new program: ar
955
956* Mon Dec 18 2006 Ulrich Drepper <drepper@redhat.com> 0.125-1
957- elflint: Compare DT_GNU_HASH tests.
958- move archives into -static RPMs
959- libelf, elflint: better support for core file handling
960
961* Tue Oct 10 2006 Ulrich Drepper <drepper@redhat.com> 0.124-1
962- libebl: sparc backend support for return value location
963- libebl, libdwfl: backend register name support extended with more info
964- libelf, libdw: bug fixes for unaligned accesses on machines that care
965- readelf, elflint: trivial bugs fixed
966
967* Mon Aug 14 2006 Roland McGrath <roland@redhat.com> 0.123-1
968- libebl: Backend build fixes, thanks to Stepan Kasal.
969- libebl: ia64 backend support for register names, return value location
970- libdwfl: Handle truncated linux kernel module section names.
971- libdwfl: Look for linux kernel vmlinux files with .debug suffix.
972- elflint: Fix checks to permit --hash-style=gnu format.
973
974* Wed Jul 12 2006 Ulrich Drepper <drepper@redhat.com> 0.122-1
975- libebl: add function to test for relative relocation
976- elflint: fix and extend DT_RELCOUNT/DT_RELACOUNT checks
977- elflint, readelf: add support for DT_GNU_HASHlibelf: add elf_gnu_hash
978- elflint, readelf: add support for 64-bit SysV-style hash tables
979- libdwfl: new functions dwfl_module_getsymtab, dwfl_module_getsym.
980
981* Wed Jun 14 2006  <drepper@redhat.com> 0.121-1
982- libelf: bug fixes for rewriting existing files when using mmap.
983- make all installed headers usable in C++ code.
984- readelf: better output format.
985- elflint: fix tests of dynamic section content.
986- ld: Implement --as-needed, --execstack, PT_GNU_STACK.  Many small patc
987hes.
988- libdw, libdwfl: handle files without aranges info.
989
990* Tue Apr  4 2006 Ulrich Drepper <drepper@redhat.com> 0.120-1
991- Bug fixes.
992- dwarf.h updated for DWARF 3.0 final specification.
993- libdwfl: New function dwfl_version.
994- The license is now GPL for most files.  The libelf, libebl, libdw,and
995libdwfl libraries have additional exceptions.  Add reference toOIN.
996
997* Thu Jan 12 2006 Roland McGrath <roland@redhat.com> 0.119-1
998- elflint: more tests.
999- libdwfl: New function dwfl_module_register_names.
1000- libebl: New backend hook for register names.
1001
1002* Tue Dec  6 2005 Ulrich Drepper <drepper@redhat.com> 0.118-1
1003- elflint: more tests.
1004- libdwfl: New function dwfl_module_register_names.
1005- libebl: New backend hook for register names.
1006
1007* Thu Nov 17 2005 Ulrich Drepper <drepper@redhat.com> 0.117-1
1008- libdwfl: New function dwfl_module_return_value_location.
1009- libebl: Backend improvements for several CPUs.
1010
1011* Mon Oct 31 2005 Ulrich Drepper <drepper@redhat.com> 0.116-1
1012- libdw: New functions dwarf_ranges, dwarf_entrypc, dwarf_diecu,       d
1013warf_entry_breakpoints.  Removed Dwarf_Func type and functions       d
1014warf_func_name, dwarf_func_lowpc, dwarf_func_highpc,       dwarf_func_
1015entrypc, dwarf_func_die; dwarf_getfuncs callback now uses       Dwarf_
1016Die, and dwarf_func_file, dwarf_func_line, dwarf_func_col       replac
1017ed by dwarf_decl_file, dwarf_decl_line, dwarf_decl_column;       dwarf
1018_func_inline, dwarf_func_inline_instances now take Dwarf_Die.       Ty
1019pe Dwarf_Loc renamed to Dwarf_Op; dwarf_getloclist,       dwarf_addrlo
1020clists renamed dwarf_getlocation, dwarf_getlocation_addr.
1021
1022* Fri Sep  2 2005 Ulrich Drepper <drepper@redhat.com> 0.115-1
1023- libelf: speed-ups of non-mmap reading.
1024- strings: New program.
1025- Implement --enable-gcov option for configure.
1026- libdw: New function dwarf_getscopes_die.
1027
1028* Wed Aug 24 2005 Ulrich Drepper <drepper@redhat.com> 0.114-1
1029- libelf: new function elf_getaroff
1030- libdw: Added dwarf_func_die, dwarf_func_inline, dwarf_func_inline_inst
1031ances.
1032- libdwfl: New functions dwfl_report_offline, dwfl_offline_section_addre
1033ss,	 dwfl_linux_kernel_report_offline.
1034- ranlib: new program
1035
1036* Mon Aug 15 2005 Ulrich Drepper <drepper@redhat.com> 0.114-1
1037- libelf: new function elf_getaroff
1038- ranlib: new program
1039
1040* Wed Aug 10 2005 Ulrich Drepper <@redhat.com> 0.113-1
1041- elflint: relax a bit. Allow version definitions for defined symbols ag
1042ainstDSO versions also for symbols in nobits sections.  Allow .rodata
1043sectionto have STRINGS and MERGE flag set.
1044- strip: add some more compatibility with binutils.
1045
1046* Sat Aug  6 2005 Ulrich Drepper <@redhat.com> 0.113-1
1047- elflint: relax a bit. Allow version definitions for defined symbols ag
1048ainstDSO versions also for symbols in nobits sections.  Allow .rodata
1049sectionto have STRINGS and MERGE flag set.
1050
1051* Sat Aug  6 2005 Ulrich Drepper <@redhat.com> 0.113-1
1052- elflint: relax a bit. Allow version definitions for defined symbols ag
1053ainstDSO versions also for symbols in nobits sections.
1054
1055* Fri Aug  5 2005 Ulrich Drepper <@redhat.com> 0.112-1
1056- elfcmp: some more relaxation.
1057- elflint: many more tests, especially regarding to symbol versioning.
1058- libelf: Add elfXX_offscn and gelf_offscn.
1059- libasm: asm_begin interface changes.
1060- libebl: Add three new interfaces to directly access machine, class, an
1061ddata encoding information.
1062- objdump: New program.  Just the beginning.
1063
1064* Thu Jul 28 2005 Ulrich Drepper <@redhat.com> 0.111-1
1065- libdw: now contains all of libdwfl.  The latter is not installed anymore.
1066- elfcmp: little usability tweak, name and index of differing section is
1067 printed.
1068
1069* Sun Jul 24 2005 Ulrich Drepper <@redhat.com> 0.110-1
1070- libelf: fix a numbe rof problems with elf_update
1071- elfcmp: fix a few bugs.  Compare gaps.
1072- Fix a few PLT problems and mudflap build issues.
1073- libebl: Don't expose Ebl structure definition in libebl.h.  It's now p
1074rivate.
1075
1076* Thu Jul 21 2005 Ulrich Drepper <@redhat.com> 0.109-1
1077- libebl: Check for matching modules.
1078- elflint: Check that copy relocations only happen for OBJECT or NOTYPE
1079symbols.
1080- elfcmp: New program.
1081- libdwfl: New library.
1082
1083* Mon May  9 2005 Ulrich Drepper <@redhat.com> 0.108-1
1084- strip: fix bug introduced in last change
1085- libdw: records returned by dwarf_getsrclines are now sorted by address
1086
1087* Sun May  8 2005 Ulrich Drepper <@redhat.com> 0.108-1
1088- strip: fix bug introduced in last change
1089
1090* Sun May  8 2005 Ulrich Drepper <@redhat.com> 0.107-1
1091- readelf: improve DWARF output format
1092- strip: support Linux kernel modules
1093
1094* Fri Apr 29 2005 Ulrich Drepper <drepper@redhat.com> 0.107-1
1095- readelf: improve DWARF output format
1096
1097* Mon Apr  4 2005 Ulrich Drepper <drepper@redhat.com> 0.106-1
1098- libdw: Updated dwarf.h from DWARF3 speclibdw: add new functions dwarf_f
1099unc_entrypc, dwarf_func_file, dwarf_func_line,dwarf_func_col, dwarf_ge
1100tsrc_file
1101
1102* Fri Apr  1 2005 Ulrich Drepper <drepper@redhat.com> 0.105-1
1103- addr2line: New program
1104- libdw: add new functions: dwarf_addrdie, dwarf_macro_*, dwarf_getfuncs
1105,dwarf_func_*.
1106- findtextrel: use dwarf_addrdie
1107
1108* Mon Mar 28 2005 Ulrich Drepper <drepper@redhat.com> 0.104-1
1109- findtextrel: New program.
1110
1111* Mon Mar 21 2005 Ulrich Drepper <drepper@redhat.com> 0.103-1
1112- libdw: Fix using libdw.h with gcc < 4 and C++ code.  Compiler bug.
1113
1114* Tue Feb 22 2005 Ulrich Drepper <drepper@redhat.com> 0.102-1
1115- More Makefile and spec file cleanups.
1116
1117* Fri Jan 16 2004 Jakub Jelinek <jakub@redhat.com> 0.94-1
1118- upgrade to 0.94
1119
1120* Fri Jan 16 2004 Jakub Jelinek <jakub@redhat.com> 0.93-1
1121- upgrade to 0.93
1122
1123* Thu Jan  8 2004 Jakub Jelinek <jakub@redhat.com> 0.92-1
1124- full version
1125- macroized spec file for GPL or OSL builds
1126- include only libelf under GPL plus wrapper scripts
1127
1128* Wed Jan  7 2004 Jakub Jelinek <jakub@redhat.com> 0.91-2
1129- macroized spec file for GPL or OSL builds
1130
1131* Wed Jan  7 2004 Ulrich Drepper <drepper@redhat.com>
1132- split elfutils-devel into two packages.
1133
1134* Wed Jan  7 2004 Jakub Jelinek <jakub@redhat.com> 0.91-1
1135- include only libelf under GPL plus wrapper scripts
1136
1137* Tue Dec 23 2003 Jeff Johnson <jbj@redhat.com> 0.89-3
1138- readelf, not readline, in %%description (#111214).
1139
1140* Fri Sep 26 2003 Bill Nottingham <notting@redhat.com> 0.89-1
1141- update to 0.89 (fix eu-strip)
1142
1143* Tue Sep 23 2003 Jakub Jelinek <jakub@redhat.com> 0.86-3
1144- update to 0.86 (fix eu-strip on s390x/alpha)
1145- libebl is an archive now; remove references to DSO
1146
1147* Mon Jul 14 2003 Jeff Johnson <jbj@redhat.com> 0.84-3
1148- upgrade to 0.84 (readelf/elflint improvements, rawhide bugs fixed).
1149
1150* Fri Jul 11 2003 Jeff Johnson <jbj@redhat.com> 0.83-3
1151- upgrade to 0.83 (fix invalid ELf handle on *.so strip, more).
1152
1153* Wed Jul  9 2003 Jeff Johnson <jbj@redhat.com> 0.82-3
1154- upgrade to 0.82 (strip tests fixed on big-endian).
1155
1156* Tue Jul  8 2003 Jeff Johnson <jbj@redhat.com> 0.81-3
1157- upgrade to 0.81 (strip excludes unused symtable entries, test borked).
1158
1159* Thu Jun 26 2003 Jeff Johnson <jbj@redhat.com> 0.80-3
1160- upgrade to 0.80 (debugedit changes for kernel in progress).
1161
1162* Wed Jun 04 2003 Elliot Lee <sopwith@redhat.com>
1163- rebuilt
1164
1165* Wed May 21 2003 Jeff Johnson <jbj@redhat.com> 0.79-2
1166- upgrade to 0.79 (correct formats for size_t, more of libdw "works").
1167
1168* Mon May 19 2003 Jeff Johnson <jbj@redhat.com> 0.78-2
1169- upgrade to 0.78 (libdwarf bugfix, libdw additions).
1170
1171* Mon Feb 24 2003 Elliot Lee <sopwith@redhat.com>
1172- debuginfo rebuild
1173
1174* Thu Feb 20 2003 Jeff Johnson <jbj@redhat.com> 0.76-2
1175- use the correct way of identifying the section via the sh_info link.
1176
1177* Sat Feb 15 2003 Jakub Jelinek <jakub@redhat.com> 0.75-2
1178- update to 0.75 (eu-strip -g fix)
1179
1180* Tue Feb 11 2003 Jakub Jelinek <jakub@redhat.com> 0.74-2
1181- update to 0.74 (fix for writing with some non-dirty sections)
1182
1183* Thu Feb  6 2003 Jeff Johnson <jbj@redhat.com> 0.73-3
1184- another -0.73 update (with sparc fixes).
1185- do "make check" in %%check, not %%install, section.
1186
1187* Mon Jan 27 2003 Jeff Johnson <jbj@redhat.com> 0.73-2
1188- update to 0.73 (with s390 fixes).
1189
1190* Wed Jan 22 2003 Tim Powers <timp@redhat.com>
1191- rebuilt
1192
1193* Wed Jan 22 2003 Jakub Jelinek <jakub@redhat.com> 0.72-4
1194- fix arguments to gelf_getsymshndx and elf_getshstrndx
1195- fix other warnings
1196- re-enable checks on s390x
1197
1198* Sat Jan 11 2003 Karsten Hopp <karsten@redhat.de> 0.72-3
1199- temporarily disable checks on s390x, until someone has
1200  time to look at it
1201
1202* Thu Dec 12 2002 Jakub Jelinek <jakub@redhat.com> 0.72-2
1203- update to 0.72
1204
1205* Wed Dec 11 2002 Jakub Jelinek <jakub@redhat.com> 0.71-2
1206- update to 0.71
1207
1208* Wed Dec 11 2002 Jeff Johnson <jbj@redhat.com> 0.69-4
1209- update to 0.69.
1210- add "make check" and segfault avoidance patch.
1211- elfutils-libelf needs to run ldconfig.
1212
1213* Tue Dec 10 2002 Jeff Johnson <jbj@redhat.com> 0.68-2
1214- update to 0.68.
1215
1216* Fri Dec  6 2002 Jeff Johnson <jbj@redhat.com> 0.67-2
1217- update to 0.67.
1218
1219* Tue Dec  3 2002 Jeff Johnson <jbj@redhat.com> 0.65-2
1220- update to 0.65.
1221
1222* Mon Dec  2 2002 Jeff Johnson <jbj@redhat.com> 0.64-2
1223- update to 0.64.
1224
1225* Sun Dec 1 2002 Ulrich Drepper <drepper@redhat.com> 0.64
1226- split packages further into elfutils-libelf
1227
1228* Sat Nov 30 2002 Jeff Johnson <jbj@redhat.com> 0.63-2
1229- update to 0.63.
1230
1231* Fri Nov 29 2002 Ulrich Drepper <drepper@redhat.com> 0.62
1232- Adjust for dropping libtool
1233
1234* Sun Nov 24 2002 Jeff Johnson <jbj@redhat.com> 0.59-2
1235- update to 0.59
1236
1237* Thu Nov 14 2002 Jeff Johnson <jbj@redhat.com> 0.56-2
1238- update to 0.56
1239
1240* Thu Nov  7 2002 Jeff Johnson <jbj@redhat.com> 0.54-2
1241- update to 0.54
1242
1243* Sun Oct 27 2002 Jeff Johnson <jbj@redhat.com> 0.53-2
1244- update to 0.53
1245- drop x86_64 hack, ICE fixed in gcc-3.2-11.
1246
1247* Sat Oct 26 2002 Jeff Johnson <jbj@redhat.com> 0.52-3
1248- get beehive to punch a rhpkg generated package.
1249
1250* Wed Oct 23 2002 Jeff Johnson <jbj@redhat.com> 0.52-2
1251- build in 8.0.1.
1252- x86_64: avoid gcc-3.2 ICE on x86_64 for now.
1253
1254* Tue Oct 22 2002 Ulrich Drepper <drepper@redhat.com> 0.52
1255- Add libelf-devel to conflicts for elfutils-devel
1256
1257* Mon Oct 21 2002 Ulrich Drepper <drepper@redhat.com> 0.50
1258- Split into runtime and devel package
1259
1260* Fri Oct 18 2002 Ulrich Drepper <drepper@redhat.com> 0.49
1261- integrate into official sources
1262
1263* Wed Oct 16 2002 Jeff Johnson <jbj@redhat.com> 0.46-1
1264- Swaddle.
1265