# # spec file for package elfutils (Version 0.142) # # Copyright (c) 2010 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: GPLv2+ Version: 0.142 Release: 4 Summary: Higher-level library to access ELF Group: System/Libraries Url: http://elfutils.fedorahosted.org Source: elfutils-%{version}-no-osl.tar.bz2 Source2: baselibs.conf 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 Patch21: elfutils-uninitialized.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: GPLv2 ; GPLv2+ ; LGPLv2.1+ %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: GPLv2+ 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: GPLv2+ 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: GPLv2+ 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: GPLv2+ %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: GPLv2+ 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: GPLv2+ %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: GPLv2+ 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 %patch21 %build autoreconf -fi %configure --program-prefix=eu- make %{?jobs:-j%jobs}; %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