2 Summary: A collection of utilities and DSOs to handle compiled objects
4 Version: @PACKAGE_VERSION@
6 License: GPLv2 with exceptions
7 Group: Development/Tools
8 Source: elfutils-%{version}.tar.gz
9 Obsoletes: libelf libelf-devel
10 Requires: elfutils-libelf = %{version}-%{release}
11 Requires: glibc >= 2.3.1-2
15 BuildRoot: %{_tmppath}/%{name}-root
16 BuildRequires: gcc >= 3.4
17 BuildRequires: bison >= 1.875
18 BuildRequires: flex >= 2.5.4a
22 %define _programprefix eu-
25 Elfutils is a collection of utilities, including ld (a linker),
26 nm (for listing symbols from object files), size (for listing the
27 section sizes of an object or archive file), strip (for discarding
28 symbols), readelf (to see the raw ELF file structures), and elflint
29 (to check for well-formed ELF files). Also included are numerous
30 helper libraries which implement DWARF, ELF, and machine-specific ELF
34 Summary: Development libraries to handle compiled objects.
35 Group: Development/Tools
36 Requires: elfutils = %{version}-%{release}
37 Requires: elfutils-libelf-devel = %{version}-%{release}
40 The elfutils-devel package contains the libraries to create
41 applications for handling compiled objects. libebl provides some
42 higher-level ELF access functionality. libdw provides access to
43 the DWARF debugging information. libasm provides a programmable
47 Summary: Static archives to handle compiled objects.
48 Group: Development/Tools
49 Requires: elfutils-devel = %{version}-%{release}
51 %description devel-static
52 The elfutils-devel-static archive contains the static archives
53 with the code the handle compiled objects.
56 Summary: Library to read and write ELF files.
57 Group: Development/Tools
60 The elfutils-libelf package provides a DSO which allows reading and
61 writing ELF files on a high level. Third party programs depend on
62 this package to read internals of ELF files. The programs of the
63 elfutils package use it also to generate new ELF files.
66 Summary: Development support for libelf
67 Group: Development/Tools
68 Requires: elfutils-libelf = %{version}-%{release}
69 Conflicts: libelf-devel
71 %description libelf-devel
72 The elfutils-libelf-devel package contains the libraries to create
73 applications for handling compiled objects. libelf allows you to
74 access the internals of the ELF object file format, so you can see the
75 different sections of an ELF file.
77 %package libelf-devel-static
78 Summary: Static archive of libelf
79 Group: Development/Tools
80 Requires: elfutils-libelf-devel = %{version}-%{release}
81 Conflicts: libelf-devel
83 %description libelf-devel-static
84 The elfutils-libelf-static package contains the static archive
91 %configure --program-prefix=%{_programprefix}
95 rm -rf ${RPM_BUILD_ROOT}
96 mkdir -p ${RPM_BUILD_ROOT}%{_prefix}
100 chmod +x ${RPM_BUILD_ROOT}%{_prefix}/%{_lib}/lib*.so*
101 chmod +x ${RPM_BUILD_ROOT}%{_prefix}/%{_lib}/elfutils/lib*.so*
103 # XXX Nuke unpackaged files
104 { cd ${RPM_BUILD_ROOT}
105 rm -f .%{_bindir}/eu-ld
106 rm -f .%{_includedir}/elfutils/libasm.h
107 rm -f .%{_libdir}/libasm-%{version}.so
108 rm -f .%{_libdir}/libasm.so.*
109 rm -f .%{_libdir}/libasm.so
110 rm -f .%{_libdir}/libasm.a
117 rm -rf ${RPM_BUILD_ROOT}
119 %post -p /sbin/ldconfig
121 %postun -p /sbin/ldconfig
123 %post libelf -p /sbin/ldconfig
125 %postun libelf -p /sbin/ldconfig
128 %defattr(-,root,root)
130 %{_bindir}/eu-elflint
132 %{_bindir}/eu-readelf
135 %{_bindir}/eu-findtextrel
136 %{_bindir}/eu-addr2line
139 %{_bindir}/eu-strings
140 %{_bindir}/eu-objdump
142 %{_bindir}/eu-unstrip
144 #%{_libdir}/libasm-%{version}.so
145 %{_libdir}/libdw-%{version}.so
146 #%{_libdir}/libasm.so.*
147 %{_libdir}/libdw.so.*
148 %dir %{_libdir}/elfutils
149 %{_libdir}/elfutils/lib*.so
152 %defattr(-,root,root)
153 %{_includedir}/dwarf.h
154 %dir %{_includedir}/elfutils
155 %{_includedir}/elfutils/elf-knowledge.h
156 %{_includedir}/elfutils/libebl.h
157 %{_includedir}/elfutils/libdw.h
158 %{_includedir}/elfutils/libdwfl.h
160 #%{_libdir}/libasm.so
168 %defattr(-,root,root)
169 %{_libdir}/libelf-%{version}.so
170 %{_libdir}/libelf.so.*
173 %defattr(-,root,root)
174 %{_includedir}/libelf.h
175 %{_includedir}/gelf.h
176 %{_includedir}/nlist.h
179 %files libelf-devel-static
183 * Sun Nov 11 2007 Ulrich Drepper <drepper@redhat.com> 0.131-1
184 - libdw: DW_FORM_ref_addr support; dwarf_formref entry point now depreca
185 ted; bug fixes for oddly-formatted DWARF
186 - libdwfl: bug fixes in offline archive support, symbol table handling;
187 apply partial relocations for dwfl_module_address_section on
189 - libebl: powerpc backend support for Altivec registers
191 * Mon Oct 15 2007 Ulrich Drepper <drepper@redhat.com> 0.130-1
192 - readelf: -p option can take an argument like -x for one section,
193 or no argument (as before) for all SHF_STRINGS sections;
194 new option --archive-index (or -c); improved -n output fo
195 r core files, on many machines
196 - libelf: new function elf_getdata_rawchunk, replaces gelf_rawchunk;
197 new functions gelf_getnote, gelf_getauxv, gelf_update_auxv
198 - readelf, elflint: handle SHT_NOTE sections without requiring phdrs
199 - elflint: stricter checks on debug sections
200 - libdwfl: new functions dwfl_build_id_find_elf, dwfl_build_id_find_debu
201 ginfo, dwfl_module_build_id, dwfl_module_report_build_id; suppo
202 rt dynamic symbol tables found via phdrs; dwfl_standard_find_de
203 buginfo now uses build IDs when available
204 - unstrip: new option --list (or -n)
205 - libebl: backend improvements for sparc, alpha, powerpc
207 * Tue Aug 14 2007 Ulrich Drepper <drepper@redhat.com> 0.129-1
208 - readelf: new options --hex-dump (or -x), --strings (or -p)
209 - addr2line: new option --symbols (or -S)
211 * Wed Apr 18 2007 Ulrich Drepper <drepper@redhat.com> 0.127-1
212 - libdw: new function dwarf_getsrcdirs
213 - libdwfl: new functions dwfl_module_addrsym, dwfl_report_begin_add,
214 dwfl_module_address_section
216 * Mon Feb 5 2007 Ulrich Drepper <drepper@redhat.com> 0.126-1
219 * Mon Dec 18 2006 Ulrich Drepper <drepper@redhat.com> 0.125-1
220 - elflint: Compare DT_GNU_HASH tests.
221 - move archives into -static RPMs
222 - libelf, elflint: better support for core file handling
224 * Tue Oct 10 2006 Ulrich Drepper <drepper@redhat.com> 0.124-1
225 - libebl: sparc backend support for return value location
226 - libebl, libdwfl: backend register name support extended with more info
227 - libelf, libdw: bug fixes for unaligned accesses on machines that care
228 - readelf, elflint: trivial bugs fixed
230 * Mon Aug 14 2006 Roland McGrath <roland@redhat.com> 0.123-1
231 - libebl: Backend build fixes, thanks to Stepan Kasal.
232 - libebl: ia64 backend support for register names, return value location
233 - libdwfl: Handle truncated linux kernel module section names.
234 - libdwfl: Look for linux kernel vmlinux files with .debug suffix.
235 - elflint: Fix checks to permit --hash-style=gnu format.
237 * Wed Jul 12 2006 Ulrich Drepper <drepper@redhat.com> 0.122-1
238 - libebl: add function to test for relative relocation
239 - elflint: fix and extend DT_RELCOUNT/DT_RELACOUNT checks
240 - elflint, readelf: add support for DT_GNU_HASHlibelf: add elf_gnu_hash
241 - elflint, readelf: add support for 64-bit SysV-style hash tables
242 - libdwfl: new functions dwfl_module_getsymtab, dwfl_module_getsym.
244 * Wed Jun 14 2006 <drepper@redhat.com> 0.121-1
245 - libelf: bug fixes for rewriting existing files when using mmap.
246 - make all installed headers usable in C++ code.
247 - readelf: better output format.
248 - elflint: fix tests of dynamic section content.
249 - ld: Implement --as-needed, --execstack, PT_GNU_STACK. Many small patc
251 - libdw, libdwfl: handle files without aranges info.
253 * Tue Apr 4 2006 Ulrich Drepper <drepper@redhat.com> 0.120-1
255 - dwarf.h updated for DWARF 3.0 final specification.
256 - libdwfl: New function dwfl_version.
257 - The license is now GPL for most files. The libelf, libebl, libdw,and
258 libdwfl libraries have additional exceptions. Add reference toOIN.
260 * Thu Jan 12 2006 Roland McGrath <roland@redhat.com> 0.119-1
261 - elflint: more tests.
262 - libdwfl: New function dwfl_module_register_names.
263 - libebl: New backend hook for register names.
265 * Tue Dec 6 2005 Ulrich Drepper <drepper@redhat.com> 0.118-1
266 - elflint: more tests.
267 - libdwfl: New function dwfl_module_register_names.
268 - libebl: New backend hook for register names.
270 * Thu Nov 17 2005 Ulrich Drepper <drepper@redhat.com> 0.117-1
271 - libdwfl: New function dwfl_module_return_value_location.
272 - libebl: Backend improvements for several CPUs.
274 * Mon Oct 31 2005 Ulrich Drepper <drepper@redhat.com> 0.116-1
275 - libdw: New functions dwarf_ranges, dwarf_entrypc, dwarf_diecu, d
276 warf_entry_breakpoints. Removed Dwarf_Func type and functions d
277 warf_func_name, dwarf_func_lowpc, dwarf_func_highpc, dwarf_func_
278 entrypc, dwarf_func_die; dwarf_getfuncs callback now uses Dwarf_
279 Die, and dwarf_func_file, dwarf_func_line, dwarf_func_col replac
280 ed by dwarf_decl_file, dwarf_decl_line, dwarf_decl_column; dwarf
281 _func_inline, dwarf_func_inline_instances now take Dwarf_Die. Ty
282 pe Dwarf_Loc renamed to Dwarf_Op; dwarf_getloclist, dwarf_addrlo
283 clists renamed dwarf_getlocation, dwarf_getlocation_addr.
285 * Fri Sep 2 2005 Ulrich Drepper <drepper@redhat.com> 0.115-1
286 - libelf: speed-ups of non-mmap reading.
287 - strings: New program.
288 - Implement --enable-gcov option for configure.
289 - libdw: New function dwarf_getscopes_die.
291 * Wed Aug 24 2005 Ulrich Drepper <drepper@redhat.com> 0.114-1
292 - libelf: new function elf_getaroff
293 - libdw: Added dwarf_func_die, dwarf_func_inline, dwarf_func_inline_inst
295 - libdwfl: New functions dwfl_report_offline, dwfl_offline_section_addre
296 ss, dwfl_linux_kernel_report_offline.
297 - ranlib: new program
299 * Mon Aug 15 2005 Ulrich Drepper <drepper@redhat.com> 0.114-1
300 - libelf: new function elf_getaroff
301 - ranlib: new program
303 * Wed Aug 10 2005 Ulrich Drepper <@redhat.com> 0.113-1
304 - elflint: relax a bit. Allow version definitions for defined symbols ag
305 ainstDSO versions also for symbols in nobits sections. Allow .rodata
306 sectionto have STRINGS and MERGE flag set.
307 - strip: add some more compatibility with binutils.
309 * Sat Aug 6 2005 Ulrich Drepper <@redhat.com> 0.113-1
310 - elflint: relax a bit. Allow version definitions for defined symbols ag
311 ainstDSO versions also for symbols in nobits sections. Allow .rodata
312 sectionto have STRINGS and MERGE flag set.
314 * Sat Aug 6 2005 Ulrich Drepper <@redhat.com> 0.113-1
315 - elflint: relax a bit. Allow version definitions for defined symbols ag
316 ainstDSO versions also for symbols in nobits sections.
318 * Fri Aug 5 2005 Ulrich Drepper <@redhat.com> 0.112-1
319 - elfcmp: some more relaxation.
320 - elflint: many more tests, especially regarding to symbol versioning.
321 - libelf: Add elfXX_offscn and gelf_offscn.
322 - libasm: asm_begin interface changes.
323 - libebl: Add three new interfaces to directly access machine, class, an
324 ddata encoding information.
325 - objdump: New program. Just the beginning.
327 * Thu Jul 28 2005 Ulrich Drepper <@redhat.com> 0.111-1
328 - libdw: now contains all of libdwfl. The latter is not installed anymore.
329 - elfcmp: little usability tweak, name and index of differing section is
332 * Sun Jul 24 2005 Ulrich Drepper <@redhat.com> 0.110-1
333 - libelf: fix a numbe rof problems with elf_update
334 - elfcmp: fix a few bugs. Compare gaps.
335 - Fix a few PLT problems and mudflap build issues.
336 - libebl: Don't expose Ebl structure definition in libebl.h. It's now p
339 * Thu Jul 21 2005 Ulrich Drepper <@redhat.com> 0.109-1
340 - libebl: Check for matching modules.
341 - elflint: Check that copy relocations only happen for OBJECT or NOTYPE
343 - elfcmp: New program.
344 - libdwfl: New library.
346 * Mon May 9 2005 Ulrich Drepper <@redhat.com> 0.108-1
347 - strip: fix bug introduced in last change
348 - libdw: records returned by dwarf_getsrclines are now sorted by address
350 * Sun May 8 2005 Ulrich Drepper <@redhat.com> 0.108-1
351 - strip: fix bug introduced in last change
353 * Sun May 8 2005 Ulrich Drepper <@redhat.com> 0.107-1
354 - readelf: improve DWARF output format
355 - strip: support Linux kernel modules
357 * Fri Apr 29 2005 Ulrich Drepper <drepper@redhat.com> 0.107-1
358 - readelf: improve DWARF output format
360 * Mon Apr 4 2005 Ulrich Drepper <drepper@redhat.com> 0.106-1
361 - libdw: Updated dwarf.h from DWARF3 speclibdw: add new funtions dwarf_f
362 unc_entrypc, dwarf_func_file, dwarf_func_line,dwarf_func_col, dwarf_ge
365 * Fri Apr 1 2005 Ulrich Drepper <drepper@redhat.com> 0.105-1
366 - addr2line: New program
367 - libdw: add new functions: dwarf_addrdie, dwarf_macro_*, dwarf_getfuncs
369 - findtextrel: use dwarf_addrdie
371 * Mon Mar 28 2005 Ulrich Drepper <drepper@redhat.com> 0.104-1
372 - findtextrel: New program.
374 * Mon Mar 21 2005 Ulrich Drepper <drepper@redhat.com> 0.103-1
375 - libdw: Fix using libdw.h with gcc < 4 and C++ code. Compiler bug.
377 * Tue Feb 22 2005 Ulrich Drepper <drepper@redhat.com> 0.102-1
378 - More Makefile and spec file cleanups.
380 * Fri Jan 16 2004 Jakub Jelinek <jakub@redhat.com> 0.94-1
383 * Fri Jan 16 2004 Jakub Jelinek <jakub@redhat.com> 0.93-1
386 * Thu Jan 8 2004 Jakub Jelinek <jakub@redhat.com> 0.92-1
388 - macroized spec file for GPL or OSL builds
389 - include only libelf under GPL plus wrapper scripts
391 * Wed Jan 7 2004 Jakub Jelinek <jakub@redhat.com> 0.91-2
392 - macroized spec file for GPL or OSL builds
394 * Wed Jan 7 2004 Ulrich Drepper <drepper@redhat.com>
395 - split elfutils-devel into two packages.
397 * Wed Jan 7 2004 Jakub Jelinek <jakub@redhat.com> 0.91-1
398 - include only libelf under GPL plus wrapper scripts
400 * Tue Dec 23 2003 Jeff Johnson <jbj@redhat.com> 0.89-3
401 - readelf, not readline, in %%description (#111214).
403 * Fri Sep 26 2003 Bill Nottingham <notting@redhat.com> 0.89-1
404 - update to 0.89 (fix eu-strip)
406 * Tue Sep 23 2003 Jakub Jelinek <jakub@redhat.com> 0.86-3
407 - update to 0.86 (fix eu-strip on s390x/alpha)
408 - libebl is an archive now; remove references to DSO
410 * Mon Jul 14 2003 Jeff Johnson <jbj@redhat.com> 0.84-3
411 - upgrade to 0.84 (readelf/elflint improvements, rawhide bugs fixed).
413 * Fri Jul 11 2003 Jeff Johnson <jbj@redhat.com> 0.83-3
414 - upgrade to 0.83 (fix invalid ELf handle on *.so strip, more).
416 * Wed Jul 9 2003 Jeff Johnson <jbj@redhat.com> 0.82-3
417 - upgrade to 0.82 (strip tests fixed on big-endian).
419 * Tue Jul 8 2003 Jeff Johnson <jbj@redhat.com> 0.81-3
420 - upgrade to 0.81 (strip excludes unused symtable entries, test borked).
422 * Thu Jun 26 2003 Jeff Johnson <jbj@redhat.com> 0.80-3
423 - upgrade to 0.80 (debugedit changes for kernel in progress).
425 * Wed Jun 04 2003 Elliot Lee <sopwith@redhat.com>
428 * Wed May 21 2003 Jeff Johnson <jbj@redhat.com> 0.79-2
429 - upgrade to 0.79 (correct formats for size_t, more of libdw "works").
431 * Mon May 19 2003 Jeff Johnson <jbj@redhat.com> 0.78-2
432 - upgrade to 0.78 (libdwarf bugfix, libdw additions).
434 * Mon Feb 24 2003 Elliot Lee <sopwith@redhat.com>
437 * Thu Feb 20 2003 Jeff Johnson <jbj@redhat.com> 0.76-2
438 - use the correct way of identifying the section via the sh_info link.
440 * Sat Feb 15 2003 Jakub Jelinek <jakub@redhat.com> 0.75-2
441 - update to 0.75 (eu-strip -g fix)
443 * Tue Feb 11 2003 Jakub Jelinek <jakub@redhat.com> 0.74-2
444 - update to 0.74 (fix for writing with some non-dirty sections)
446 * Thu Feb 6 2003 Jeff Johnson <jbj@redhat.com> 0.73-3
447 - another -0.73 update (with sparc fixes).
448 - do "make check" in %%check, not %%install, section.
450 * Mon Jan 27 2003 Jeff Johnson <jbj@redhat.com> 0.73-2
451 - update to 0.73 (with s390 fixes).
453 * Wed Jan 22 2003 Tim Powers <timp@redhat.com>
456 * Wed Jan 22 2003 Jakub Jelinek <jakub@redhat.com> 0.72-4
457 - fix arguments to gelf_getsymshndx and elf_getshstrndx
459 - reenable checks on s390x
461 * Sat Jan 11 2003 Karsten Hopp <karsten@redhat.de> 0.72-3
462 - temporarily disable checks on s390x, until someone has
465 * Thu Dec 12 2002 Jakub Jelinek <jakub@redhat.com> 0.72-2
468 * Wed Dec 11 2002 Jakub Jelinek <jakub@redhat.com> 0.71-2
471 * Wed Dec 11 2002 Jeff Johnson <jbj@redhat.com> 0.69-4
473 - add "make check" and segfault avoidance patch.
474 - elfutils-libelf needs to run ldconfig.
476 * Tue Dec 10 2002 Jeff Johnson <jbj@redhat.com> 0.68-2
479 * Fri Dec 6 2002 Jeff Johnson <jbj@redhat.com> 0.67-2
482 * Tue Dec 3 2002 Jeff Johnson <jbj@redhat.com> 0.65-2
485 * Mon Dec 2 2002 Jeff Johnson <jbj@redhat.com> 0.64-2
488 * Sun Dec 1 2002 Ulrich Drepper <drepper@redhat.com> 0.64
489 - split packages further into elfutils-libelf
491 * Sat Nov 30 2002 Jeff Johnson <jbj@redhat.com> 0.63-2
494 * Fri Nov 29 2002 Ulrich Drepper <drepper@redhat.com> 0.62
495 - Adjust for dropping libtool
497 * Sun Nov 24 2002 Jeff Johnson <jbj@redhat.com> 0.59-2
500 * Thu Nov 14 2002 Jeff Johnson <jbj@redhat.com> 0.56-2
503 * Thu Nov 7 2002 Jeff Johnson <jbj@redhat.com> 0.54-2
506 * Sun Oct 27 2002 Jeff Johnson <jbj@redhat.com> 0.53-2
508 - drop x86_64 hack, ICE fixed in gcc-3.2-11.
510 * Sat Oct 26 2002 Jeff Johnson <jbj@redhat.com> 0.52-3
511 - get beehive to punch a rhpkg generated package.
513 * Wed Oct 23 2002 Jeff Johnson <jbj@redhat.com> 0.52-2
515 - x86_64: avoid gcc-3.2 ICE on x86_64 for now.
517 * Tue Oct 22 2002 Ulrich Drepper <drepper@redhat.com> 0.52
518 - Add libelf-devel to conflicts for elfutils-devel
520 * Mon Oct 21 2002 Ulrich Drepper <drepper@redhat.com> 0.50
521 - Split into runtime and devel package
523 * Fri Oct 18 2002 Ulrich Drepper <drepper@redhat.com> 0.49
524 - integrate into official sources
526 * Wed Oct 16 2002 Jeff Johnson <jbj@redhat.com> 0.46-1