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