Sisyphus repository
Last update: 1 october 2023 | SRPMs: 18631 | Visits: 37567700
en ru br
ALT Linux repos
S:3.17.0-alt3
5.0: 3.4.0-alt1
4.1: 3.2.3-alt1
4.0: 3.2.3-alt1
3.0: 2.4.0-alt1

Group :: Development/Other
RPM: valgrind

 Main   Changelog   Spec   Patches   Sources   Download   Gear   Bugs and FR  Repocop 

Name: valgrind
Version: 2.4.0
#define cvsdate 20040522
Release: alt1

Summary: Valgrind, an open-source memory debugger for x86-GNU/Linux
License: GPL
Group: Development/Other
URL: http://www.valgrind.org/

%ifdef cvsdate
Source: %name-%cvsdate.tar.bz2
%else
Source: http://www.valgrind.org/downloads/%name-%version.tar.bz2
%endif

Patch1: %name-2.4.0-alt-funobj-suppression.patch
Patch2: %name-2.4.0-alt-suppressions.patch
Patch3: %name-2.4.0-alt-intercept-strmem.patch
Patch4: %name-2.4.0-alt-ume-ET_DYN-fixup.patch

# Automatically added by buildreq on Wed May 05 2004

BuildRequires: XFree86-devel XFree86-libs gcc-c++ gdb glibc-devel-static

%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:

   * 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 []
   * Overlaps of arguments to strcpy() and related functions
   * Some abuses of the POSIX pthread API

%package devel
Summary: Valgrind header files for embedding Valgrind checks into other applications
Group: Development/Other
Requires: %name = %version-%release

%description devel
Valgrind-devel contains header files for providing macros to embed
Valgrind checks into other applications.  The resulting executables
will still run without Valgrind, just a little bit more slowly than
they otherwise would, but otherwise unchanged.

When run on Valgrind with --client-perms=yes, Valgrind observes these
macro calls and takes appropriate action.  When run on Valgrind with
--client-perms=no (the default), Valgrind observes these macro calls
but does not take any action as a result.

%prep
%setup -q %{?cvsdate:-n %name}
%patch1 -p1 -b .alt-funobj-suppression
%patch2 -p1 -b .alt-suppressions

%__mv memcheck/mac_replace_strmem.c memcheck/mac_replace_strmem.c.base
%patch3 -p1 -b .alt-intercept-strmem

%patch4 -p1 -b .alt-ume-ET_DYN-fixup

%build
#%{?cvsdate:./autogen.sh}
autoreconf -vi
%configure
%make_build

%install
%make_install install DESTDIR=%buildroot docdir=%_docdir/%name-%version

%__install -m644 -p AUTHORS ACKNOWLEDGEMENTS FAQ.txt NEWS \
%buildroot%_docdir/%name-%version/

# workaround for trampoline handling problems in old versions of the Openwall

# kernel patch
chstk -e %buildroot%_bindir/%name

# Valgrind shared libraries should not be stripped - see README_PACKAGERS

%set_strip_method executable

# Valgrind low-level routines really need to use %ebx - no chance to make them

# work with -fPIC
%set_verify_elf_method textrel=relaxed

%files
%_bindir/*
%_libdir/%name
%_libdir/pkgconfig/%name.pc
%_docdir/%name-%version
%_mandir/*/*

%files devel
%_includedir/*

%changelog

Full changelog you can see here

 
design & coding: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
current maintainer: Michael Shigorin