# # spec file for package elfutils (Version 0.141) # # Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # # norootforbuild Name: elfutils License: GPL v2 or later Version: 0.141 Release: 1 Summary: Higher-level library to access ELF Group: System/Libraries Url: http://elfutils.fedorahosted.org Source: elfutils-%{version}-no-osl.tar.bz2 Patch: elfutils-portability.patch Patch1: elfutils-robustify.patch Patch3: elfutils-no-po-test-build.diff Patch7: libebl-prototype-fix.diff Patch8: elfutils-0.97-ftruncate-mmap-fix.diff Patch9: libelf-ignore-NOBITS-sh_offset.patch Patch10: test.diff Patch11: build.diff Patch12: elfutils-old-scanf-fix.diff Patch13: elfutils-suse-10.3-fixes.diff Patch20: elfutils-0.137-dwarf-header-check-fix.diff BuildRoot: %{_tmppath}/%{name}-%{version}-build %description This package provides a higher-level library to access ELF files. This is a part of elfutils package. Authors: -------- Ulrich Drepper %package -n libasm1 Summary: A collection of utilities and DSOs to handle compiled objects Group: Development/Tools/Other License: GPL v2 only; GPL v2 or later; LGPL v2.1 or later %description -n libasm1 Elfutils is a collection of utilities, including ld (a linker), nm (for listing symbols from object files), size (for listing the section sizes of an object or archive file), strip (for discarding symbols), readline (the see the raw ELF file structures), and elflint (to check for well-formed ELF files). Also included are numerous helper libraries which implement DWARF, ELF, and machine-specific ELF handling. Authors: -------- Jeff Johnson Jakub Jelinek Ulrich Drepper %package -n libasm-devel Summary: A collection of utilities and DSOs to handle compiled objects Group: Development/Tools/Other License: GPL v2 or later Requires: glibc-devel, libasm1 = %{version} %description -n libasm-devel Elfutils is a collection of utilities, including ld (a linker), nm (for listing symbols from object files), size (for listing the section sizes of an object or archive file), strip (for discarding symbols), readline (the see the raw ELF file structures), and elflint (to check for well-formed ELF files). Also included are numerous helper libraries which implement DWARF, ELF, and machine-specific ELF handling. Authors: -------- Jeff Johnson Jakub Jelinek Ulrich Drepper %package -n libebl1 Summary: A collection of utilities and DSOs to handle compiled objects Group: Development/Tools/Other License: GPL v2 or later Provides: libebl = %{version} Obsoletes: libebl < %{version} %description -n libebl1 Elfutils is a collection of utilities, including ld (a linker), nm (for listing symbols from object files), size (for listing the section sizes of an object or archive file), strip (for discarding symbols), readline (the see the raw ELF file structures), and elflint (to check for well-formed ELF files). Also included are numerous helper libraries which implement DWARF, ELF, and machine-specific ELF handling. Authors: -------- Jeff Johnson Jakub Jelinek Ulrich Drepper %package -n libebl-devel Summary: Include Files and Libraries mandatory for Development Group: Development/Libraries/C and C++ License: GPL v2 or later Requires: glibc-devel, libebl1 = %{version}, libdw-devel = %{version} %description -n libebl-devel This package contains all necessary include files and libraries needed to develop applications that require these. Authors: -------- Ulrich Drepper %package -n libelf1 Summary: Library to read and write ELF files Group: System/Libraries License: GPL v2 or later %description -n libelf1 This package provide a high-level library to read and write ELF files. This is a part of elfutils package. Authors: -------- Ulrich Drepper %package -n libelf-devel Summary: Include Files and Libraries mandatory for Development Group: Development/Libraries/C and C++ License: GPL v2 or later Requires: glibc-devel, libelf1 = %{version} Conflicts: libelf0-devel %description -n libelf-devel This package contains all necessary include files and libraries needed to develop applications that require these. %package -n libdw1 Summary: Library to access DWARF debugging information Group: System/Libraries License: GPL v2 or later %description -n libdw1 This package provide a high-level library to access the DWARF debugging information. This is a part of elfutils package. Authors: -------- Ulrich Drepper %package -n libdw-devel Summary: Include Files and Libraries mandatory for Development Group: Development/Libraries/C and C++ License: GPL v2 or later Requires: glibc-devel, libdw1 = %{version} Requires: libelf-devel = %{version} %description -n libdw-devel This package contains all necessary include files and libraries needed to develop applications that require these. Authors: -------- Ulrich Drepper %prep %setup -q -n elfutils-%{version} %patch -p1 %patch1 -p1 %patch3 %patch7 %patch8 -p1 %patch9 -p1 #%patch10 -p1 %patch11 -p1 %if %suse_version < 1100 %patch12 %endif %if %suse_version == 1030 # only 10.3 gcc has a problem %patch13 %endif %patch20 -p1 %build autoreconf -fi %configure --program-prefix=eu- make %install make DESTDIR=$RPM_BUILD_ROOT install # remove unneeded files rm -f $RPM_BUILD_ROOT%{_libdir}/*.la %post -n libebl1 -p /sbin/ldconfig %post -n libelf1 -p /sbin/ldconfig %post -n libdw1 -p /sbin/ldconfig %postun -n libebl1 -p /sbin/ldconfig %postun -n libelf1 -p /sbin/ldconfig %postun -n libdw1 -p /sbin/ldconfig %clean rm -rf $RPM_BUILD_ROOT %files %defattr(-,root,root) %doc AUTHORS ChangeLog COPYING EXCEPTION NEWS NOTES README THANKS TODO %{_bindir}/* %files -n libasm1 %defattr(-,root,root) %{_libdir}/libasm.so.* %{_libdir}/libasm-%{version}.so %files -n libasm-devel %defattr(-,root,root) %{_libdir}/libasm.so %{_libdir}/libasm.a %dir %{_includedir}/elfutils %{_includedir}/elfutils/libasm.h %files -n libebl1 %defattr(-,root,root) %{_libdir}/elfutils %files -n libebl-devel %defattr(-,root,root) %{_libdir}/libebl.a %dir %{_includedir}/elfutils %{_includedir}/elfutils/libebl.h %files -n libelf1 %defattr(-,root,root) %{_libdir}/libelf.so.* %{_libdir}/libelf-%{version}.so %files -n libelf-devel %defattr(-,root,root) %{_libdir}/libelf.so %{_libdir}/libelf.a %{_libdir}/libelf_pic.a %{_includedir}/libelf.h %{_includedir}/gelf.h %{_includedir}/nlist.h %dir %{_includedir}/elfutils %{_includedir}/elfutils/elf-knowledge.h %{_includedir}/elfutils/version.h %files -n libdw1 %defattr(-,root,root) %{_libdir}/libdw.so.* %{_libdir}/libdw-%{version}.so %files -n libdw-devel %defattr(-,root,root) %{_libdir}/libdw.a %{_libdir}/libdw.so %{_includedir}/dwarf.h %dir %{_includedir}/elfutils %{_includedir}/elfutils/libdw.h %{_includedir}/elfutils/libdwfl.h %changelog * Wed Apr 29 2009 tiwai@suse.de - updated to 0.141: - libebl: sparc backend fixes some more arm backend support - libdwfl: fix dwfl_module_build_id for prelinked DSO case fixes in core file support dwfl_module_getsym interface improved for non-address symbols - eu-strip: fix infinite loop on strange inputs with -f - eu-addr2line: take -j/--section=NAME option for binutils compatibility (same effect as '(NAME)0x123' syntax already supported) * Thu Feb 19 2009 tiwai@suse.de - Update to 0.139 - libcpu: Add Intel SSE4 disassembler support - readelf: Implement call frame information and exception handling dumping. Add -e option. Enable it implicitly for -a. - elflint: Check PT_GNU_EH_FRAME program header entry. - libdwfl: Support automatic gzip/bzip2 decompression of ELF files. - updated to 0.140: - libelf: Fix regression in creation of section header. - Misc bug fixes * Tue Jan 27 2009 tiwai@suse.de - revert the ET_DYN address fix patch; causing a regression (bnc#468814) * Wed Jan 07 2009 tiwai@suse.de - Fix the header size check in dwarf_getsrclines() (bnc#455992) - Backport the fix for ET_DYN addresses * Tue Dec 16 2008 tiwai@suse.de - Fix dwfl_getmodules(), assert in systemtap (bnc#448331) - Fix libebl1 dependency - Fix crashes of elfutils binaries, backports from upstream * Tue Nov 25 2008 tiwai@suse.de - fix libdwfl regression with realloc DWFL->lookup_module in the fix patch (bnc#448331, likely bnc#445783) * Tue Oct 28 2008 tiwai@suse.de - added baselibs.conf for 32bit libs (bnc#439582) * Tue Oct 07 2008 tiwai@suse.de - renamed to libebl1 - provides libasm1 package - fix provides and obsolets of libebl1 - updated to version 0.137: * libdwfl: bug fixes * Tue Aug 26 2008 tiwai@suse.de - updated to version 0.135: * libdwfl: bug fixes - updated to version 0.134: * libdwfl, libelf: bug fixes - updated to version 0.133: * readelf, elflint, libebl: SHT_GNU_ATTRIBUTE section handling (readelf -A) * libdwfl: bug fixes and optimization in relocation handling - updated to version 0.132: * libcpu: Implement x86 and x86-64 disassembler. * libasm: Add interface for disassembler. - fixed post scripts * Fri Feb 29 2008 dmueller@suse.de - fix build for older distributions * Mon Jan 28 2008 tiwai@suse.de - fix compile errors regarding missing prototypes. * Tue Nov 20 2007 tiwai@suse.de - fix off64_t in libelf.h again... * Tue Nov 20 2007 tiwai@suse.de - updated to version 0.131 * libdw: DW_FORM_ref_addr support dwarf_formref entry point now deprecated bug fixes for oddly-formatted DWARF * libdwfl: bug fixes in offline archive support apply partial relocations for dwfl_module_address_section on ET_REL * libebl: powerpc backend support for Altivec registers * Mon Oct 22 2007 tiwai@suse.de - fix comiple errors regarding missing off64_t definitions in libelf.h * Mon Oct 22 2007 tiwai@suse.de - updated to version 0.129: readelf: new options --hex-dump (or -x), --strings (or -p) - updated to version 0.130 * readelf: -p option can take an argument like -x for one section * libelf: new function elf_getdata_rawchunk, replaces gelf_rawchunk; new functions gelf_getnote, gelf_getauxv, gelf_update_auxv * libdwfl: new functions dwfl_build_id_find_elf, dwfl_build_id_find_debuginfo, dwfl_module_build_id, dwfl_module_report_build_id; support dynamic symbol tables found via phdrs; dwfl_standard_find_debuginfo now uses build IDs when available * libebl: backend improvements for sparc, alpha, powerpc * Thu Oct 04 2007 rguenther@suse.de - fix build with gcc-4.3, same patch as for the copy in rpm * Wed Jul 04 2007 tiwai@suse.de - updated to version 0.128 * auto-tool fixes * Mon Jun 11 2007 ro@suse.de - use __attribute__ ((gnu_inline)) to fix build with gcc-4.2 * Mon May 21 2007 tiwai@suse.de - initial packages, built from elfutils-0.127. A problematic file regarding the license is removed from the tarball.