+#
+# Conditional build:
+%bcond_without tests # do not perform tests
+#
Summary: A collection of utilities and DSOs to handle compiled objects
Summary(pl): Zestaw narzêdzi i bibliotek do obs³ugi skompilowanych obiektów
Name: elfutils
-Version: 0.89
-Release: 3
+Version: 0.95
+Release: 2
License: OSL 1.0 (http://www.opensource.org/licenses/osl.php)
Group: Development/Tools
-# from ftp://download.fedora.redhat.com:/pub/fedora/linux/core/development/SRPMS/%{name}-%{version}-*.src.rpm
+# http://download.fedora.redhat.com/pub/fedora/linux/core/development/i386/SRPMS/
Source0: %{name}-%{version}.tar.gz
-# Source0-md5: a690778e93e4b04eb531c6a3ef0ad23a
+# Source0-md5: dc8e8f6af735e90ec7e6a0ca99851bff
Patch0: %{name}-pl.po.patch
Patch1: %{name}-debian-manpages.patch
+Patch2: %{name}-alpha-stat.patch
#URL: file://home/devel/drepper
-BuildRequires: autoconf >= 2.54
+BuildRequires: autoconf >= 2.59
BuildRequires: automake >= 1.7
BuildRequires: gcc >= 3.2
BuildRequires: gettext-devel
+%ifarch alpha amd64 ia64 ppc64 s390x sparc64
+# PR*FAST{8,16} in <inttypes.h> were broken for 64-bit archs in older versions
+# also needed for nanosecond timestamps on alpha
+BuildRequires: glibc-devel >= 6:2.3.4
+%endif
BuildRequires: libltdl-devel
BuildRequires: perl-tools-pod
BuildRequires: sharutils
-Requires: elfutils-libelf = %{version}-%{release}
+Requires: %{name}-libelf = %{version}-%{release}
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%define _programprefix eu-
Summary: Development part of libraries to handle compiled objects
Summary(pl): Czê¶æ programistyczna bibliotek do obs³ugi skompilowanych obiektów
Group: Development/Libraries
+Requires: %{name} = %{version}-%{release}
Obsoletes: libelf-devel
-Requires: elfutils = %{version}-%{release}
%description devel
The elfutils-devel package contains the development part of libraries
Summary: Static libraries to handle compiled objects
Summary(pl): Statyczne biblioteki do obs³ugi skompilowanych obiektów
Group: Development/Libraries
+Requires: %{name}-devel = %{version}-%{release}
Obsoletes: libelf-static
-Requires: elfutils-devel = %{version}-%{release}
%description static
The elfutils-static package contains the static libraries to create
%setup -q
%patch0 -p1
%patch1 -p1
+# no nanosecond timestamps on sparc64 yet (alpha has them now)
+%patch2 -p1
%build
%{__gettextize}
--program-prefix=%{_programprefix} \
--enable-shared
-%{__make}
+# make check depends on test-nlist not stripped
+%{__perl} -pi -e 's/^(LDFLAGS =.*)-s/$1/' tests/Makefile
+%{__make}
%{__make} -C debian/man
+%if %{with tests}
+# $ORIGIN used in RPATH needs /proc to work - workaround it using LD_LIBRARY_PATH;
+# ../libelf is needed also to use proper libelf by ../src/elflint during tests
+LD_LIBRARY_PATH=../libasm:../libdw:../libebl:../libelf \
+%{__make} -C tests check
+%endif
%install
rm -rf $RPM_BUILD_ROOT
# which doesn't like *-po dir names
%{__make} install \
DESTDIR=$RPM_BUILD_ROOT \
- CATOBJEXT=.gmo INSTOBJEXT=.mo
+ MKINSTALLDIRS=$(pwd)/config/mkinstalldirs \
+ CATOBJEXT=.gmo \
+ INSTOBJEXT=.mo
install debian/man/*.1 $RPM_BUILD_ROOT%{_mandir}/man1
%find_lang libelf
-%find_lang libasm
-%find_lang libdwarf
-%find_lang libebl
%find_lang %{name}
-cat libasm.lang libdwarf.lang libebl.lang >> %{name}.lang
%clean
rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{_bindir}/*
%attr(755,root,root) %{_libdir}/libasm-*.so
%attr(755,root,root) %{_libdir}/libdw-*.so
-%attr(755,root,root) %{_libdir}/libdwarf-*.so
%dir %{_libdir}/elfutils
%attr(755,root,root) %{_libdir}/elfutils/lib*.so
%{_mandir}/man1/*.1*
%files devel
%defattr(644,root,root,755)
-%doc libdwarf/AVAILABLE doc/elfutils.sgml
+%doc doc/elfutils.sgml
%attr(755,root,root) %{_libdir}/libasm.so
%attr(755,root,root) %{_libdir}/libdw.so
-%attr(755,root,root) %{_libdir}/libdwarf.so
%attr(755,root,root) %{_libdir}/libelf.so
%{_libdir}/libebl.a
%{_includedir}/*
%defattr(644,root,root,755)
%{_libdir}/libasm.a
%{_libdir}/libdw.a
-%{_libdir}/libdwarf.a
%{_libdir}/libelf.a