blob: 6c5f7a5aa6813a3b8ab0b430b868a80ce9777ad2 [file] [log] [blame]
Ulrich Drepperb08d5a82005-07-26 05:00:05 +00001# -*- rpm-spec-*-
Ulrich Drepperb08d5a82005-07-26 05:00:05 +00002Summary: A collection of utilities and DSOs to handle compiled objects.
3Name: elfutils
4Version: @PACKAGE_VERSION@
5Release: 1
Ulrich Drepperb08d5a82005-07-26 05:00:05 +00006License: GPL
Ulrich Drepperb08d5a82005-07-26 05:00:05 +00007Group: Development/Tools
Ulrich Drepperb08d5a82005-07-26 05:00:05 +00008Source: elfutils-%{version}.tar.gz
9Obsoletes: libelf libelf-devel
10Requires: elfutils-libelf = %{version}-%{release}
Ulrich Drepperb08d5a82005-07-26 05:00:05 +000011Requires: glibc >= 2.3.1-2
12
13# ExcludeArch: xxx
14
15BuildRoot: %{_tmppath}/%{name}-root
16BuildRequires: gcc >= 3.4
17BuildRequires: bison >= 1.875
18BuildRequires: flex >= 2.5.4a
19BuildRequires: bzip2
20
21%define _gnu %{nil}
22%define _programprefix eu-
23
24%description
25Elfutils is a collection of utilities, including ld (a linker),
26nm (for listing symbols from object files), size (for listing the
27section sizes of an object or archive file), strip (for discarding
28symbols), readelf (to see the raw ELF file structures), and elflint
29(to check for well-formed ELF files). Also included are numerous
30helper libraries which implement DWARF, ELF, and machine-specific ELF
31handling.
32
33%package devel
34Summary: Development libraries to handle compiled objects.
35Group: Development/Tools
Ulrich Drepperb08d5a82005-07-26 05:00:05 +000036Requires: elfutils = %{version}-%{release}
37Requires: elfutils-libelf-devel = %{version}-%{release}
38
39%description devel
40The elfutils-devel package contains the libraries to create
41applications for handling compiled objects. libebl provides some
42higher-level ELF access functionality. libdw provides access to
43the DWARF debugging information. libasm provides a programmable
44assembler interface.
45
46%package libelf
47Summary: Library to read and write ELF files.
48Group: Development/Tools
Ulrich Drepperb08d5a82005-07-26 05:00:05 +000049
50%description libelf
51The elfutils-libelf package provides a DSO which allows reading and
52writing ELF files on a high level. Third party programs depend on
53this package to read internals of ELF files. The programs of the
54elfutils package use it also to generate new ELF files.
55
56%package libelf-devel
57Summary: Development support for libelf
58Group: Development/Tools
59Requires: elfutils-libelf = %{version}-%{release}
60Conflicts: libelf-devel
Ulrich Drepperb08d5a82005-07-26 05:00:05 +000061
62%description libelf-devel
63The elfutils-libelf-devel package contains the libraries to create
64applications for handling compiled objects. libelf allows you to
65access the internals of the ELF object file format, so you can see the
66different sections of an ELF file.
67
68%prep
69%setup -q
70
71%build
72%configure --program-prefix=%{_programprefix}
73make
74
75%install
76rm -rf ${RPM_BUILD_ROOT}
77mkdir -p ${RPM_BUILD_ROOT}%{_prefix}
78
79%makeinstall
80
81chmod +x ${RPM_BUILD_ROOT}%{_prefix}/%{_lib}/lib*.so*
Ulrich Drepperb08d5a82005-07-26 05:00:05 +000082chmod +x ${RPM_BUILD_ROOT}%{_prefix}/%{_lib}/elfutils/lib*.so*
Ulrich Drepperb08d5a82005-07-26 05:00:05 +000083
Ulrich Drepperb08d5a82005-07-26 05:00:05 +000084# XXX Nuke unpackaged files
85{ cd ${RPM_BUILD_ROOT}
86 rm -f .%{_bindir}/eu-ld
87 rm -f .%{_includedir}/elfutils/libasm.h
88 rm -f .%{_libdir}/libasm-%{version}.so
89 rm -f .%{_libdir}/libasm.so.*
90 rm -f .%{_libdir}/libasm.so
91 rm -f .%{_libdir}/libasm.a
92}
Ulrich Drepperb08d5a82005-07-26 05:00:05 +000093
94%check
95make check
96
97%clean
98rm -rf ${RPM_BUILD_ROOT}
99
100%post -p /sbin/ldconfig
101
102%postun -p /sbin/ldconfig
103
104%post libelf -p /sbin/ldconfig
105
106%postun libelf -p /sbin/ldconfig
107
108%files
109%defattr(-,root,root)
110%doc README TODO
Ulrich Drepperb08d5a82005-07-26 05:00:05 +0000111%{_bindir}/eu-elflint
112%{_bindir}/eu-nm
113%{_bindir}/eu-readelf
114%{_bindir}/eu-size
115%{_bindir}/eu-strip
116%{_bindir}/eu-findtextrel
117%{_bindir}/eu-addr2line
118%{_bindir}/eu-elfcmp
Ulrich Drepperfbe998a2005-08-29 16:27:10 +0000119%{_bindir}/eu-ranlib
120%{_bindir}/eu-strings
Ulrich Drepperb08d5a82005-07-26 05:00:05 +0000121#%{_bindir}/eu-ld
122#%{_libdir}/libasm-%{version}.so
123%{_libdir}/libdw-%{version}.so
Ulrich Drepperb08d5a82005-07-26 05:00:05 +0000124#%{_libdir}/libasm.so.*
125%{_libdir}/libdw.so.*
Ulrich Drepperb08d5a82005-07-26 05:00:05 +0000126%dir %{_libdir}/elfutils
127%{_libdir}/elfutils/lib*.so
Ulrich Drepperb08d5a82005-07-26 05:00:05 +0000128
129%files devel
130%defattr(-,root,root)
131%{_includedir}/dwarf.h
132%dir %{_includedir}/elfutils
133%{_includedir}/elfutils/elf-knowledge.h
Ulrich Drepperb08d5a82005-07-26 05:00:05 +0000134%{_includedir}/elfutils/libebl.h
135%{_includedir}/elfutils/libdw.h
136%{_includedir}/elfutils/libdwfl.h
137#%{_libdir}/libasm.a
138%{_libdir}/libebl.a
139%{_libdir}/libdw.a
Ulrich Drepperb08d5a82005-07-26 05:00:05 +0000140#%{_libdir}/libasm.so
141%{_libdir}/libdw.so
Ulrich Drepperb08d5a82005-07-26 05:00:05 +0000142
143%files libelf
144%defattr(-,root,root)
145%{_libdir}/libelf-%{version}.so
146%{_libdir}/libelf.so.*
147
148%files libelf-devel
149%defattr(-,root,root)
150%{_includedir}/libelf.h
151%{_includedir}/gelf.h
152%{_includedir}/nlist.h
153%{_libdir}/libelf.a
154%{_libdir}/libelf.so
155
156%changelog
Ulrich Drepperee4b9272006-06-15 03:21:46 +0000157* Wed Jun 14 2006 <drepper@redhat.com> 0.121-1
158- libelf: bug fixes for rewriting existing files when using mmap.
159- make all installed headers usable in C++ code.
160- readelf: better output format.
161- elflint: fix tests of dynamic section content.
162- ld: Implement --as-needed, --execstack, PT_GNU_STACK. Many small patc
163hes.
164- libdw, libdwfl: handle files without aranges info.
Ulrich Drepperd9a87122006-05-28 08:00:33 +0000165
Ulrich Drepper3a5052a2006-04-05 03:13:34 +0000166* Tue Apr 4 2006 Ulrich Drepper <drepper@redhat.com> 0.120-1
167- Bug fixes.
168- dwarf.h updated for DWARF 3.0 final specification.
169- libdwfl: New function dwfl_version.
170- The license is now GPL for most files. The libelf, libebl, libdw,and
171libdwfl libraries have additional exceptions. Add reference toOIN.
172
Ulrich Drepper361df7d2006-04-04 21:38:57 +0000173* Thu Jan 12 2006 Roland McGrath <roland@redhat.com> 0.119-1
Roland McGrath321327a2006-01-13 00:51:21 +0000174- elflint: more tests.
175- libdwfl: New function dwfl_module_register_names.
176- libebl: New backend hook for register names.
177
Ulrich Drepper539529a2005-12-07 00:52:10 +0000178* Tue Dec 6 2005 Ulrich Drepper <drepper@redhat.com> 0.118-1
179- elflint: more tests.
180- libdwfl: New function dwfl_module_register_names.
181- libebl: New backend hook for register names.
182
Ulrich Drepper32240f32005-11-18 03:25:35 +0000183* Thu Nov 17 2005 Ulrich Drepper <drepper@redhat.com> 0.117-1
184- libdwfl: New function dwfl_module_return_value_location.
185- libebl: Backend improvements for several CPUs.
186
Ulrich Dreppercf18d522005-10-31 20:19:31 +0000187* Mon Oct 31 2005 Ulrich Drepper <drepper@redhat.com> 0.116-1
188- libdw: New functions dwarf_ranges, dwarf_entrypc, dwarf_diecu, d
189warf_entry_breakpoints. Removed Dwarf_Func type and functions d
190warf_func_name, dwarf_func_lowpc, dwarf_func_highpc, dwarf_func_
191entrypc, dwarf_func_die; dwarf_getfuncs callback now uses Dwarf_
192Die, and dwarf_func_file, dwarf_func_line, dwarf_func_col replac
193ed by dwarf_decl_file, dwarf_decl_line, dwarf_decl_column; dwarf
194_func_inline, dwarf_func_inline_instances now take Dwarf_Die. Ty
195pe Dwarf_Loc renamed to Dwarf_Op; dwarf_getloclist, dwarf_addrlo
196clists renamed dwarf_getlocation, dwarf_getlocation_addr.
197
Ulrich Drepper3bbc9502005-09-02 20:29:56 +0000198* Fri Sep 2 2005 Ulrich Drepper <drepper@redhat.com> 0.115-1
199- libelf: speed-ups of non-mmap reading.
200- strings: New program.
201- Implement --enable-gcov option for configure.
202- libdw: New function dwarf_getscopes_die.
203
Ulrich Drepper958bf132005-08-24 21:40:55 +0000204* Wed Aug 24 2005 Ulrich Drepper <drepper@redhat.com> 0.114-1
205- libelf: new function elf_getaroff
206- libdw: Added dwarf_func_die, dwarf_func_inline, dwarf_func_inline_inst
207ances.
208- libdwfl: New functions dwfl_report_offline, dwfl_offline_section_addre
209ss, dwfl_linux_kernel_report_offline.
210- ranlib: new program
211
Ulrich Dreppere48c05b2005-08-15 21:47:33 +0000212* Mon Aug 15 2005 Ulrich Drepper <drepper@redhat.com> 0.114-1
213- libelf: new function elf_getaroff
214- ranlib: new program
215
Ulrich Drepperc5c33a62005-08-13 17:50:47 +0000216* Wed Aug 10 2005 Ulrich Drepper <@redhat.com> 0.113-1
217- elflint: relax a bit. Allow version definitions for defined symbols ag
Ulrich Drepperfbe998a2005-08-29 16:27:10 +0000218ainstDSO versions also for symbols in nobits sections. Allow .rodata
Ulrich Drepperc5c33a62005-08-13 17:50:47 +0000219sectionto have STRINGS and MERGE flag set.
220- strip: add some more compatibility with binutils.
221
Ulrich Drepper637963b2005-08-07 05:33:07 +0000222* Sat Aug 6 2005 Ulrich Drepper <@redhat.com> 0.113-1
223- elflint: relax a bit. Allow version definitions for defined symbols ag
Ulrich Drepperfbe998a2005-08-29 16:27:10 +0000224ainstDSO versions also for symbols in nobits sections. Allow .rodata
Ulrich Drepper637963b2005-08-07 05:33:07 +0000225sectionto have STRINGS and MERGE flag set.
226
227* Sat Aug 6 2005 Ulrich Drepper <@redhat.com> 0.113-1
228- elflint: relax a bit. Allow version definitions for defined symbols ag
229ainstDSO versions also for symbols in nobits sections.
230
Ulrich Drepperca2db8a2005-08-06 06:44:50 +0000231* Fri Aug 5 2005 Ulrich Drepper <@redhat.com> 0.112-1
232- elfcmp: some more relaxation.
233- elflint: many more tests, especially regarding to symbol versioning.
234- libelf: Add elfXX_offscn and gelf_offscn.
235- libasm: asm_begin interface changes.
236- libebl: Add three new interfaces to directly access machine, class, an
237ddata encoding information.
238- objdump: New program. Just the beginning.
239
Ulrich Drepper282bf322005-07-28 21:49:05 +0000240* Thu Jul 28 2005 Ulrich Drepper <@redhat.com> 0.111-1
241- libdw: now contains all of libdwfl. The latter is not installed anymore.
242- elfcmp: little usability tweak, name and index of differing section is
243 printed.
Roland McGrath5a765672005-07-28 09:12:43 +0000244
Ulrich Drepperb08d5a82005-07-26 05:00:05 +0000245* Sun Jul 24 2005 Ulrich Drepper <@redhat.com> 0.110-1
246- libelf: fix a numbe rof problems with elf_update
247- elfcmp: fix a few bugs. Compare gaps.
248- Fix a few PLT problems and mudflap build issues.
249- libebl: Don't expose Ebl structure definition in libebl.h. It's now p
250rivate.
251
252* Thu Jul 21 2005 Ulrich Drepper <@redhat.com> 0.109-1
253- libebl: Check for matching modules.
254- elflint: Check that copy relocations only happen for OBJECT or NOTYPE
255symbols.
256- elfcmp: New program.
257- libdwfl: New library.
258
259* Mon May 9 2005 Ulrich Drepper <@redhat.com> 0.108-1
260- strip: fix bug introduced in last change
261- libdw: records returned by dwarf_getsrclines are now sorted by address
262
263* Sun May 8 2005 Ulrich Drepper <@redhat.com> 0.108-1
264- strip: fix bug introduced in last change
265
266* Sun May 8 2005 Ulrich Drepper <@redhat.com> 0.107-1
267- readelf: improve DWARF output format
268- strip: support Linux kernel modules
269
270* Fri Apr 29 2005 Ulrich Drepper <drepper@redhat.com> 0.107-1
271- readelf: improve DWARF output format
272
273* Mon Apr 4 2005 Ulrich Drepper <drepper@redhat.com> 0.106-1
274- libdw: Updated dwarf.h from DWARF3 speclibdw: add new funtions dwarf_f
275unc_entrypc, dwarf_func_file, dwarf_func_line,dwarf_func_col, dwarf_ge
276tsrc_file
277
278* Fri Apr 1 2005 Ulrich Drepper <drepper@redhat.com> 0.105-1
279- addr2line: New program
280- libdw: add new functions: dwarf_addrdie, dwarf_macro_*, dwarf_getfuncs
281,dwarf_func_*.
282- findtextrel: use dwarf_addrdie
283
284* Mon Mar 28 2005 Ulrich Drepper <drepper@redhat.com> 0.104-1
285- findtextrel: New program.
286
287* Mon Mar 21 2005 Ulrich Drepper <drepper@redhat.com> 0.103-1
288- libdw: Fix using libdw.h with gcc < 4 and C++ code. Compiler bug.
289
290* Tue Feb 22 2005 Ulrich Drepper <drepper@redhat.com> 0.102-1
291- More Makefile and spec file cleanups.
292
293* Fri Jan 16 2004 Jakub Jelinek <jakub@redhat.com> 0.94-1
294- upgrade to 0.94
295
296* Fri Jan 16 2004 Jakub Jelinek <jakub@redhat.com> 0.93-1
297- upgrade to 0.93
298
299* Thu Jan 8 2004 Jakub Jelinek <jakub@redhat.com> 0.92-1
300- full version
301- macroized spec file for GPL or OSL builds
302- include only libelf under GPL plus wrapper scripts
303
304* Wed Jan 7 2004 Jakub Jelinek <jakub@redhat.com> 0.91-2
305- macroized spec file for GPL or OSL builds
306
307* Wed Jan 7 2004 Ulrich Drepper <drepper@redhat.com>
308- split elfutils-devel into two packages.
309
310* Wed Jan 7 2004 Jakub Jelinek <jakub@redhat.com> 0.91-1
311- include only libelf under GPL plus wrapper scripts
312
313* Tue Dec 23 2003 Jeff Johnson <jbj@redhat.com> 0.89-3
314- readelf, not readline, in %%description (#111214).
315
316* Fri Sep 26 2003 Bill Nottingham <notting@redhat.com> 0.89-1
317- update to 0.89 (fix eu-strip)
318
319* Tue Sep 23 2003 Jakub Jelinek <jakub@redhat.com> 0.86-3
320- update to 0.86 (fix eu-strip on s390x/alpha)
321- libebl is an archive now; remove references to DSO
322
323* Mon Jul 14 2003 Jeff Johnson <jbj@redhat.com> 0.84-3
324- upgrade to 0.84 (readelf/elflint improvements, rawhide bugs fixed).
325
326* Fri Jul 11 2003 Jeff Johnson <jbj@redhat.com> 0.83-3
327- upgrade to 0.83 (fix invalid ELf handle on *.so strip, more).
328
329* Wed Jul 9 2003 Jeff Johnson <jbj@redhat.com> 0.82-3
330- upgrade to 0.82 (strip tests fixed on big-endian).
331
332* Tue Jul 8 2003 Jeff Johnson <jbj@redhat.com> 0.81-3
333- upgrade to 0.81 (strip excludes unused symtable entries, test borked).
334
335* Thu Jun 26 2003 Jeff Johnson <jbj@redhat.com> 0.80-3
336- upgrade to 0.80 (debugedit changes for kernel in progress).
337
338* Wed Jun 04 2003 Elliot Lee <sopwith@redhat.com>
339- rebuilt
340
341* Wed May 21 2003 Jeff Johnson <jbj@redhat.com> 0.79-2
342- upgrade to 0.79 (correct formats for size_t, more of libdw "works").
343
344* Mon May 19 2003 Jeff Johnson <jbj@redhat.com> 0.78-2
345- upgrade to 0.78 (libdwarf bugfix, libdw additions).
346
347* Mon Feb 24 2003 Elliot Lee <sopwith@redhat.com>
348- debuginfo rebuild
349
350* Thu Feb 20 2003 Jeff Johnson <jbj@redhat.com> 0.76-2
351- use the correct way of identifying the section via the sh_info link.
352
353* Sat Feb 15 2003 Jakub Jelinek <jakub@redhat.com> 0.75-2
354- update to 0.75 (eu-strip -g fix)
355
356* Tue Feb 11 2003 Jakub Jelinek <jakub@redhat.com> 0.74-2
357- update to 0.74 (fix for writing with some non-dirty sections)
358
359* Thu Feb 6 2003 Jeff Johnson <jbj@redhat.com> 0.73-3
360- another -0.73 update (with sparc fixes).
361- do "make check" in %%check, not %%install, section.
362
363* Mon Jan 27 2003 Jeff Johnson <jbj@redhat.com> 0.73-2
364- update to 0.73 (with s390 fixes).
365
366* Wed Jan 22 2003 Tim Powers <timp@redhat.com>
367- rebuilt
368
369* Wed Jan 22 2003 Jakub Jelinek <jakub@redhat.com> 0.72-4
370- fix arguments to gelf_getsymshndx and elf_getshstrndx
371- fix other warnings
372- reenable checks on s390x
373
374* Sat Jan 11 2003 Karsten Hopp <karsten@redhat.de> 0.72-3
375- temporarily disable checks on s390x, until someone has
376 time to look at it
377
378* Thu Dec 12 2002 Jakub Jelinek <jakub@redhat.com> 0.72-2
379- update to 0.72
380
381* Wed Dec 11 2002 Jakub Jelinek <jakub@redhat.com> 0.71-2
382- update to 0.71
383
384* Wed Dec 11 2002 Jeff Johnson <jbj@redhat.com> 0.69-4
385- update to 0.69.
386- add "make check" and segfault avoidance patch.
387- elfutils-libelf needs to run ldconfig.
388
389* Tue Dec 10 2002 Jeff Johnson <jbj@redhat.com> 0.68-2
390- update to 0.68.
391
392* Fri Dec 6 2002 Jeff Johnson <jbj@redhat.com> 0.67-2
393- update to 0.67.
394
395* Tue Dec 3 2002 Jeff Johnson <jbj@redhat.com> 0.65-2
396- update to 0.65.
397
398* Mon Dec 2 2002 Jeff Johnson <jbj@redhat.com> 0.64-2
399- update to 0.64.
400
401* Sun Dec 1 2002 Ulrich Drepper <drepper@redhat.com> 0.64
402- split packages further into elfutils-libelf
403
404* Sat Nov 30 2002 Jeff Johnson <jbj@redhat.com> 0.63-2
405- update to 0.63.
406
407* Fri Nov 29 2002 Ulrich Drepper <drepper@redhat.com> 0.62
408- Adjust for dropping libtool
409
410* Sun Nov 24 2002 Jeff Johnson <jbj@redhat.com> 0.59-2
411- update to 0.59
412
413* Thu Nov 14 2002 Jeff Johnson <jbj@redhat.com> 0.56-2
414- update to 0.56
415
416* Thu Nov 7 2002 Jeff Johnson <jbj@redhat.com> 0.54-2
417- update to 0.54
418
419* Sun Oct 27 2002 Jeff Johnson <jbj@redhat.com> 0.53-2
420- update to 0.53
421- drop x86_64 hack, ICE fixed in gcc-3.2-11.
422
423* Sat Oct 26 2002 Jeff Johnson <jbj@redhat.com> 0.52-3
424- get beehive to punch a rhpkg generated package.
425
426* Wed Oct 23 2002 Jeff Johnson <jbj@redhat.com> 0.52-2
427- build in 8.0.1.
428- x86_64: avoid gcc-3.2 ICE on x86_64 for now.
429
430* Tue Oct 22 2002 Ulrich Drepper <drepper@redhat.com> 0.52
431- Add libelf-devel to conflicts for elfutils-devel
432
433* Mon Oct 21 2002 Ulrich Drepper <drepper@redhat.com> 0.50
434- Split into runtime and devel package
435
436* Fri Oct 18 2002 Ulrich Drepper <drepper@redhat.com> 0.49
437- integrate into official sources
438
439* Wed Oct 16 2002 Jeff Johnson <jbj@redhat.com> 0.46-1
440- Swaddle.