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