X-Git-Url: http://git.pld-linux.org/?p=packages%2Fvalgrind.git;a=blobdiff_plain;f=valgrind.spec;h=d421e88b34a2ab00e3f16928900ef364e40a1cb0;hp=9ec3105ba481b3743f3dc0187eb2b4e375530c1d;hb=68a688e8d474e7b6458ba3481fb205c5690dc1ea;hpb=a3b1e5f5c62193da4bf8abcbcb725b5142d20d79 diff --git a/valgrind.spec b/valgrind.spec index 9ec3105..d421e88 100644 --- a/valgrind.spec +++ b/valgrind.spec @@ -1,79 +1,88 @@ +#%define snap 20031012 Summary: An open-source memory debugger for x86-GNU/Linux Summary(pl): Otwarty odpluskwiacz pamiêci dla Linuksa x86 Name: valgrind -Version: 1.0.0 +Version: 2.1.0 Release: 1 License: GPL -ExclusiveArch: %{ix86} -Group: Networking/Utilities -Source0: http://developer.kde.org/~sewardj/%{name}-%{version}.tar.bz2 -URL: http://developer.kde.org/~sewardj/ +Group: Development/Tools +Source0: http://developer.kde.org/~sewardj/valgrind-%{version}.tar.bz2 +# Source0-md5: 3e4056dd45163a5f555a23ced2f95191 +#Source0: %{name}-%{snap}.tar.bz2 +Patch0: %{name}-sockios.patch +URL: http://valgrind.kde.org/ BuildRequires: autoconf BuildRequires: automake +ExclusiveArch: %{ix86} BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) -# valgrind binaries should _never_ be stripped -# anyone knows better solution? -%define debug 1 +# 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 %description -Valgrind is a GPL'd tool to help you find memory-management problems -in your programs. When a program is run under Valgrind's supervision, -all reads and writes of memory are checked, and calls to -malloc/new/free/delete are intercepted. As a result, Valgrind can -detect problems such as: +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. -- Use of uninitialised memory -- Reading/writing memory after it has been free'd -- Reading/writing off the end of malloc'd blocks -- Reading/writing inappropriate areas on the stack -- Memory leaks -- where pointers to malloc'd blocks are lost forever -- Passing of uninitialised and/or unaddressible memory to system calls -- Mismatched use of malloc/new/new [] vs free/delete/delete [] -- Some misuses of the POSIX pthreads API +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. %description -l pl -Valgrind jest narzêdziem rozwi±zuj±cym problemy zwi±zane z zarz±dzaniem -pamiêci± w programach. Gdy program zostaje uruchomiony pod nadzorem -Valgrinda wszystkie odczyty i zapisy do pamiêci s± sprawdzane. -Przechwytywane s± te¿ odwo³ania do malloc/new/free/delete. Dziêki temu -mo¿na wykryæ nastêpuj±ce problemy: +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. -- U¿ycie niezainicjalizowanej pamiêci -- Odczytywanie/zapisywanie do obszaru pamiêci, który zosta³ zwolniony -- Odczytywanie/zapisywanie na koñcach zaalokowanych bloków -- Odczytywanie/zapisywanie niew³a¶ciwych obszarów na stosie -- Wycieki pamiêci -- gdy wska¼niki do zaalokowanych bloków s± stracone na - zawsze -- Przekazywanie niezainicjalizowanej i/lub nieadresowalnej pamiêci do - odwo³añ systemowych -- Niekonsekwencja w u¿ywaniu malloc/new/new [] kontra free/delete/delete [] -- Niektóre nadu¿ycie API POSIX pthreads +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. %prep %setup -q +%patch0 -p1 %build -rm -f missing -aclocal +%{__aclocal} +%{__autoheader} %{__autoconf} %{__automake} -%configure +%configure \ + LDFLAGS="" # no strip! %{__make} %install rm -rf $RPM_BUILD_ROOT -%{__make} install DESTDIR=$RPM_BUILD_ROOT +%{__make} install \ + DESTDIR=$RPM_BUILD_ROOT %clean rm -rf $RPM_BUILD_ROOT %files %defattr(644,root,root,755) -%doc ACKNOWLEDGEMENTS AUTHORS ChangeLog PATCHES_APPLIED +%doc ACKNOWLEDGEMENTS AUTHORS FAQ.txt NEWS PATCHES_APPLIED %doc README README_MISSING_SYSCALL_OR_IOCTL TODO -%doc docs/*.html +%doc $RPM_BUILD_ROOT%{_docdir}/valgrind/*.html %attr(755,root,root) %{_bindir}/* -%{_includedir}/* %{_libdir}/%{name} +%{_includedir}/* +%{_pkgconfigdir}/*.pc