-%define snap 20030329
-Summary: An open-source memory debugger for x86-GNU/Linux
-Summary(pl): Otwarty odpluskwiacz pamiêci dla Linuksa x86
+# Conditional build:
+%bcond_with multilib # enable multilib on amd64
+#
+Summary: An open-source memory debugger
+Summary(pl): Otwarty odpluskwiacz pamiêci
Name: valgrind
-Version: 1.9.4
-Release: 1.%{snap}.1
+Version: 3.2.0
+Release: 1
License: GPL
-ExclusiveArch: %{ix86}
-Group: Networking/Utilities
-#Source0: http://developer.kde.org/~sewardj/%{name}-%{version}.tar.bz2
-Source0: %{name}-%{snap}.tar.bz2
-URL: http://developer.kde.org/~sewardj/
+Group: Development/Tools
+Source0: http://valgrind.org/downloads/%{name}-%{version}.tar.bz2
+# Source0-md5: c418026ce7c38a740ef17efe59509fcf
+Patch0: %{name}-amd64.patch
+URL: http://valgrind.org/
BuildRequires: autoconf
BuildRequires: automake
+# Needs libc.a
+BuildRequires: glibc-static
+Obsoletes: valgrind-callgrind
+Obsoletes: valgrind-calltree
+ExclusiveArch: %{ix86} %{x8664} ppc ppc64
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
-# Valgrind binaries should _never_ be stripped
-%define no_install_post_strip 1
-
-# Same name as libpthread
-%define _noautoprovfiles %{_libdir}/%{name}/libpthread.so.0 %{_libdir}/%{name}/libpthread.so %{_libdir}/%{name}/valgrind.so %{_libdir}/%{name}/valgrinq.so
+%define _noautostrip .*/vgpreload.*\\.so
+# ld portion broken
+%undefine with_ccache
%description
-Valgrind is a flexible tool for debugging and profiling Linux-x86
-executables. The tool consists of a core, which provides a synthetic
-x86 CPU in software, and a series of "skins", each of which is a
-debugging or profiling tool. The architecture is modular, so that new
-skins can be created easily and without disturbing the existing
-structure.
-
-A number of useful skins are supplied as standard. In summary, these
-are:
-- The memcheck skin detects memory-management problems in your
- programs,
-- cachegrind performs detailed simulation of the I1, D1 and L2 caches
- in your CPU and so can accurately pinpoint the sources of cache misses
- in your code,
-- addrcheck skin is a lightweight version of memcheck,
-- helgrind is designed to find data races in multithreaded programs.
+Valgrind is a GPL'd system for debugging and profiling Linux programs.
+With the tools that come with Valgrind, you can automatically detect
+many memory management and threading bugs, avoiding hours of frustrating
+bug-hunting, making your programs more stable. You can also perform
+detailed profiling to help speed up your programs.
%description -l pl
-Valgrind jest elastycznym narzêdziem s³u¿±cym do odpluskwiania i
-profilowania programów pod Linuksem. Sk³ada siê z rdzenia
-dostarczaj±cego syntetyczny emulowany procesor zgodny z x86 i ze
-"skórek" bêd±cych narzêdziami o ró¿nych zastosowaniach. Architektura
-programu jest modularna, wobec czego ³atwo mo¿na stworzyæ nowe skórki
-nie ryzykuj±c popsucia reszty.
-
-Standardowo dostarczone jest kilka u¿ytecznych skórek:
-- memcheck wykrywa problemy z zarz±dzaniem pamiêci± w programach,
-- cachegrind przeprowadza symulacjê pamiêci cache procesora w celu
- znalezienia miejsc, w których cache zawodzi,
-- addrcheck jest lekk± wersj± memchecka,
-- helgrind wykrywa konflikty dostêpu w wielow±tkowych programach.
+Valgrind jest systemem s³u¿±cym do odpluskwiania i profilowania
+programów na Linuksie. U¿ywaj±c dostarczanych z nim narzêdzi mo¿na
+automatycznie wykrywaæ wiele b³êdów zwi±zanych z zarz±dzaniem pamiêci± i
+w±tkowaniem, dziêki czemu unika siê frustruj±cego polowania na b³êdy, a
+tak¿e czyni siê programy bardziej stabilnymi. Mo¿liwe jest równie¿
+dok³adne profilowanie, dziêki któremu programy zaczn± szybciej pracowaæ.
%prep
-%setup -q -n %{name}
-
-# pthread_atfork() not found (?)
-echo "main(){}" > corecheck/tests/pth_atfork1.c
+%setup -q
+#%{!?with_multilib:%patch0 -p1}
%build
-rm -f missing
%{__aclocal}
%{__autoheader}
%{__autoconf}
%install
rm -rf $RPM_BUILD_ROOT
-%{__make} install DESTDIR=$RPM_BUILD_ROOT
+%{__make} install \
+ DESTDIR=$RPM_BUILD_ROOT
+
+strip $RPM_BUILD_ROOT%{_libdir}/%{name}/hp2ps
+rm -rf _docs
+mv $RPM_BUILD_ROOT%{_docdir}/valgrind _docs
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(644,root,root,755)
-%doc ACKNOWLEDGEMENTS AUTHORS ChangeLog PATCHES_APPLIED
-%doc README README_MISSING_SYSCALL_OR_IOCTL TODO
-%doc $RPM_BUILD_ROOT%{_docdir}/valgrind/*.html
+%doc ACKNOWLEDGEMENTS AUTHORS FAQ.txt NEWS README README_MISSING_SYSCALL_OR_IOCTL
+%doc _docs/html
+%doc _docs/valgrind_manual.pdf
%attr(755,root,root) %{_bindir}/*
+%dir %{_libdir}/%{name}
+%dir %{_libdir}/%{name}/*-linux
+%attr(755,root,root) %{_libdir}/%{name}/*-linux/*
+%attr(755,root,root) %{_libdir}/%{name}/hp2ps
+%{_libdir}/%{name}/*.supp
%{_includedir}/*
-%{_libdir}/%{name}
+%{_pkgconfigdir}/*.pc
+%{_mandir}/man1/*.1*