blob: 2c8245eb2d92bdc1de4b38b873cad30bc90677dd [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
Ulrich Drepper539529a2005-12-07 00:52:10 +0000188* Tue Dec 6 2005 Ulrich Drepper <drepper@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 Drepper32240f32005-11-18 03:25:35 +0000193* Thu Nov 17 2005 Ulrich Drepper <drepper@redhat.com> 0.117-1
194- libdwfl: New function dwfl_module_return_value_location.
195- libebl: Backend improvements for several CPUs.
196
Ulrich Dreppercf18d522005-10-31 20:19:31 +0000197* Mon Oct 31 2005 Ulrich Drepper <drepper@redhat.com> 0.116-1
198- libdw: New functions dwarf_ranges, dwarf_entrypc, dwarf_diecu, d
199warf_entry_breakpoints. Removed Dwarf_Func type and functions d
200warf_func_name, dwarf_func_lowpc, dwarf_func_highpc, dwarf_func_
201entrypc, dwarf_func_die; dwarf_getfuncs callback now uses Dwarf_
202Die, and dwarf_func_file, dwarf_func_line, dwarf_func_col replac
203ed by dwarf_decl_file, dwarf_decl_line, dwarf_decl_column; dwarf
204_func_inline, dwarf_func_inline_instances now take Dwarf_Die. Ty
205pe Dwarf_Loc renamed to Dwarf_Op; dwarf_getloclist, dwarf_addrlo
206clists renamed dwarf_getlocation, dwarf_getlocation_addr.
207
Ulrich Drepper3bbc9502005-09-02 20:29:56 +0000208* Fri Sep 2 2005 Ulrich Drepper <drepper@redhat.com> 0.115-1
209- libelf: speed-ups of non-mmap reading.
210- strings: New program.
211- Implement --enable-gcov option for configure.
212- libdw: New function dwarf_getscopes_die.
213
Ulrich Drepper958bf132005-08-24 21:40:55 +0000214* Wed Aug 24 2005 Ulrich Drepper <drepper@redhat.com> 0.114-1
215- libelf: new function elf_getaroff
216- libdw: Added dwarf_func_die, dwarf_func_inline, dwarf_func_inline_inst
217ances.
218- libdwfl: New functions dwfl_report_offline, dwfl_offline_section_addre
219ss, dwfl_linux_kernel_report_offline.
220- ranlib: new program
221
Ulrich Dreppere48c05b2005-08-15 21:47:33 +0000222* Mon Aug 15 2005 Ulrich Drepper <drepper@redhat.com> 0.114-1
223- libelf: new function elf_getaroff
224- ranlib: new program
225
Ulrich Drepperc5c33a62005-08-13 17:50:47 +0000226* Wed Aug 10 2005 Ulrich Drepper <@redhat.com> 0.113-1
227- elflint: relax a bit. Allow version definitions for defined symbols ag
Ulrich Drepperfbe998a2005-08-29 16:27:10 +0000228ainstDSO versions also for symbols in nobits sections. Allow .rodata
Ulrich Drepperc5c33a62005-08-13 17:50:47 +0000229sectionto have STRINGS and MERGE flag set.
230- strip: add some more compatibility with binutils.
231
Ulrich Drepper637963b2005-08-07 05:33:07 +0000232* Sat Aug 6 2005 Ulrich Drepper <@redhat.com> 0.113-1
233- elflint: relax a bit. Allow version definitions for defined symbols ag
Ulrich Drepperfbe998a2005-08-29 16:27:10 +0000234ainstDSO versions also for symbols in nobits sections. Allow .rodata
Ulrich Drepper637963b2005-08-07 05:33:07 +0000235sectionto have STRINGS and MERGE flag set.
236
237* Sat Aug 6 2005 Ulrich Drepper <@redhat.com> 0.113-1
238- elflint: relax a bit. Allow version definitions for defined symbols ag
239ainstDSO versions also for symbols in nobits sections.
240
Ulrich Drepperca2db8a2005-08-06 06:44:50 +0000241* Fri Aug 5 2005 Ulrich Drepper <@redhat.com> 0.112-1
242- elfcmp: some more relaxation.
243- elflint: many more tests, especially regarding to symbol versioning.
244- libelf: Add elfXX_offscn and gelf_offscn.
245- libasm: asm_begin interface changes.
246- libebl: Add three new interfaces to directly access machine, class, an
247ddata encoding information.
248- objdump: New program. Just the beginning.
249
Ulrich Drepper282bf322005-07-28 21:49:05 +0000250* Thu Jul 28 2005 Ulrich Drepper <@redhat.com> 0.111-1
251- libdw: now contains all of libdwfl. The latter is not installed anymore.
252- elfcmp: little usability tweak, name and index of differing section is
253 printed.
Roland McGrath5a765672005-07-28 09:12:43 +0000254
Ulrich Drepperb08d5a82005-07-26 05:00:05 +0000255* Sun Jul 24 2005 Ulrich Drepper <@redhat.com> 0.110-1
256- libelf: fix a numbe rof problems with elf_update
257- elfcmp: fix a few bugs. Compare gaps.
258- Fix a few PLT problems and mudflap build issues.
259- libebl: Don't expose Ebl structure definition in libebl.h. It's now p
260rivate.
261
262* Thu Jul 21 2005 Ulrich Drepper <@redhat.com> 0.109-1
263- libebl: Check for matching modules.
264- elflint: Check that copy relocations only happen for OBJECT or NOTYPE
265symbols.
266- elfcmp: New program.
267- libdwfl: New library.
268
269* Mon May 9 2005 Ulrich Drepper <@redhat.com> 0.108-1
270- strip: fix bug introduced in last change
271- libdw: records returned by dwarf_getsrclines are now sorted by address
272
273* Sun May 8 2005 Ulrich Drepper <@redhat.com> 0.108-1
274- strip: fix bug introduced in last change
275
276* Sun May 8 2005 Ulrich Drepper <@redhat.com> 0.107-1
277- readelf: improve DWARF output format
278- strip: support Linux kernel modules
279
280* Fri Apr 29 2005 Ulrich Drepper <drepper@redhat.com> 0.107-1
281- readelf: improve DWARF output format
282
283* Mon Apr 4 2005 Ulrich Drepper <drepper@redhat.com> 0.106-1
284- libdw: Updated dwarf.h from DWARF3 speclibdw: add new funtions dwarf_f
285unc_entrypc, dwarf_func_file, dwarf_func_line,dwarf_func_col, dwarf_ge
286tsrc_file
287
288* Fri Apr 1 2005 Ulrich Drepper <drepper@redhat.com> 0.105-1
289- addr2line: New program
290- libdw: add new functions: dwarf_addrdie, dwarf_macro_*, dwarf_getfuncs
291,dwarf_func_*.
292- findtextrel: use dwarf_addrdie
293
294* Mon Mar 28 2005 Ulrich Drepper <drepper@redhat.com> 0.104-1
295- findtextrel: New program.
296
297* Mon Mar 21 2005 Ulrich Drepper <drepper@redhat.com> 0.103-1
298- libdw: Fix using libdw.h with gcc < 4 and C++ code. Compiler bug.
299
300* Tue Feb 22 2005 Ulrich Drepper <drepper@redhat.com> 0.102-1
301- More Makefile and spec file cleanups.
302
303* Fri Jan 16 2004 Jakub Jelinek <jakub@redhat.com> 0.94-1
304- upgrade to 0.94
305
306* Fri Jan 16 2004 Jakub Jelinek <jakub@redhat.com> 0.93-1
307- upgrade to 0.93
308
309* Thu Jan 8 2004 Jakub Jelinek <jakub@redhat.com> 0.92-1
310- full version
311- macroized spec file for GPL or OSL builds
312- include only libelf under GPL plus wrapper scripts
313
314* Wed Jan 7 2004 Jakub Jelinek <jakub@redhat.com> 0.91-2
315- macroized spec file for GPL or OSL builds
316
317* Wed Jan 7 2004 Ulrich Drepper <drepper@redhat.com>
318- split elfutils-devel into two packages.
319
320* Wed Jan 7 2004 Jakub Jelinek <jakub@redhat.com> 0.91-1
321- include only libelf under GPL plus wrapper scripts
322
323* Tue Dec 23 2003 Jeff Johnson <jbj@redhat.com> 0.89-3
324- readelf, not readline, in %%description (#111214).
325
326* Fri Sep 26 2003 Bill Nottingham <notting@redhat.com> 0.89-1
327- update to 0.89 (fix eu-strip)
328
329* Tue Sep 23 2003 Jakub Jelinek <jakub@redhat.com> 0.86-3
330- update to 0.86 (fix eu-strip on s390x/alpha)
331- libebl is an archive now; remove references to DSO
332
333* Mon Jul 14 2003 Jeff Johnson <jbj@redhat.com> 0.84-3
334- upgrade to 0.84 (readelf/elflint improvements, rawhide bugs fixed).
335
336* Fri Jul 11 2003 Jeff Johnson <jbj@redhat.com> 0.83-3
337- upgrade to 0.83 (fix invalid ELf handle on *.so strip, more).
338
339* Wed Jul 9 2003 Jeff Johnson <jbj@redhat.com> 0.82-3
340- upgrade to 0.82 (strip tests fixed on big-endian).
341
342* Tue Jul 8 2003 Jeff Johnson <jbj@redhat.com> 0.81-3
343- upgrade to 0.81 (strip excludes unused symtable entries, test borked).
344
345* Thu Jun 26 2003 Jeff Johnson <jbj@redhat.com> 0.80-3
346- upgrade to 0.80 (debugedit changes for kernel in progress).
347
348* Wed Jun 04 2003 Elliot Lee <sopwith@redhat.com>
349- rebuilt
350
351* Wed May 21 2003 Jeff Johnson <jbj@redhat.com> 0.79-2
352- upgrade to 0.79 (correct formats for size_t, more of libdw "works").
353
354* Mon May 19 2003 Jeff Johnson <jbj@redhat.com> 0.78-2
355- upgrade to 0.78 (libdwarf bugfix, libdw additions).
356
357* Mon Feb 24 2003 Elliot Lee <sopwith@redhat.com>
358- debuginfo rebuild
359
360* Thu Feb 20 2003 Jeff Johnson <jbj@redhat.com> 0.76-2
361- use the correct way of identifying the section via the sh_info link.
362
363* Sat Feb 15 2003 Jakub Jelinek <jakub@redhat.com> 0.75-2
364- update to 0.75 (eu-strip -g fix)
365
366* Tue Feb 11 2003 Jakub Jelinek <jakub@redhat.com> 0.74-2
367- update to 0.74 (fix for writing with some non-dirty sections)
368
369* Thu Feb 6 2003 Jeff Johnson <jbj@redhat.com> 0.73-3
370- another -0.73 update (with sparc fixes).
371- do "make check" in %%check, not %%install, section.
372
373* Mon Jan 27 2003 Jeff Johnson <jbj@redhat.com> 0.73-2
374- update to 0.73 (with s390 fixes).
375
376* Wed Jan 22 2003 Tim Powers <timp@redhat.com>
377- rebuilt
378
379* Wed Jan 22 2003 Jakub Jelinek <jakub@redhat.com> 0.72-4
380- fix arguments to gelf_getsymshndx and elf_getshstrndx
381- fix other warnings
382- reenable checks on s390x
383
384* Sat Jan 11 2003 Karsten Hopp <karsten@redhat.de> 0.72-3
385- temporarily disable checks on s390x, until someone has
386 time to look at it
387
388* Thu Dec 12 2002 Jakub Jelinek <jakub@redhat.com> 0.72-2
389- update to 0.72
390
391* Wed Dec 11 2002 Jakub Jelinek <jakub@redhat.com> 0.71-2
392- update to 0.71
393
394* Wed Dec 11 2002 Jeff Johnson <jbj@redhat.com> 0.69-4
395- update to 0.69.
396- add "make check" and segfault avoidance patch.
397- elfutils-libelf needs to run ldconfig.
398
399* Tue Dec 10 2002 Jeff Johnson <jbj@redhat.com> 0.68-2
400- update to 0.68.
401
402* Fri Dec 6 2002 Jeff Johnson <jbj@redhat.com> 0.67-2
403- update to 0.67.
404
405* Tue Dec 3 2002 Jeff Johnson <jbj@redhat.com> 0.65-2
406- update to 0.65.
407
408* Mon Dec 2 2002 Jeff Johnson <jbj@redhat.com> 0.64-2
409- update to 0.64.
410
411* Sun Dec 1 2002 Ulrich Drepper <drepper@redhat.com> 0.64
412- split packages further into elfutils-libelf
413
414* Sat Nov 30 2002 Jeff Johnson <jbj@redhat.com> 0.63-2
415- update to 0.63.
416
417* Fri Nov 29 2002 Ulrich Drepper <drepper@redhat.com> 0.62
418- Adjust for dropping libtool
419
420* Sun Nov 24 2002 Jeff Johnson <jbj@redhat.com> 0.59-2
421- update to 0.59
422
423* Thu Nov 14 2002 Jeff Johnson <jbj@redhat.com> 0.56-2
424- update to 0.56
425
426* Thu Nov 7 2002 Jeff Johnson <jbj@redhat.com> 0.54-2
427- update to 0.54
428
429* Sun Oct 27 2002 Jeff Johnson <jbj@redhat.com> 0.53-2
430- update to 0.53
431- drop x86_64 hack, ICE fixed in gcc-3.2-11.
432
433* Sat Oct 26 2002 Jeff Johnson <jbj@redhat.com> 0.52-3
434- get beehive to punch a rhpkg generated package.
435
436* Wed Oct 23 2002 Jeff Johnson <jbj@redhat.com> 0.52-2
437- build in 8.0.1.
438- x86_64: avoid gcc-3.2 ICE on x86_64 for now.
439
440* Tue Oct 22 2002 Ulrich Drepper <drepper@redhat.com> 0.52
441- Add libelf-devel to conflicts for elfutils-devel
442
443* Mon Oct 21 2002 Ulrich Drepper <drepper@redhat.com> 0.50
444- Split into runtime and devel package
445
446* Fri Oct 18 2002 Ulrich Drepper <drepper@redhat.com> 0.49
447- integrate into official sources
448
449* Wed Oct 16 2002 Jeff Johnson <jbj@redhat.com> 0.46-1
450- Swaddle.