1 |
< |
### RPM external valgrind 3.1.0 |
2 |
< |
## BUILDIF case $(uname):$(uname -m) in Linux:i*86 ) true ;; * ) false ;; esac |
3 |
< |
Source: http://www.valgrind.org/downloads/%{n}-%{v}.tar.bz2 |
1 |
> |
### RPM external valgrind 3.3.0-CMS18b |
2 |
> |
## BUILDIF case $(uname):$(uname -m) in Linux:i*86 ) true ;; Linux:x86_64 ) true ;; Linux:ppc64 ) true ;; * ) false ;; esac |
3 |
> |
## INITENV SET VALGRIND_LIB %{i}/lib/valgrind |
4 |
> |
%define realversion %(echo %v | cut -d- -f1) |
5 |
> |
Source: http://www.valgrind.org/downloads/%{n}-%{realversion}.tar.bz2 |
6 |
> |
# These two patches (originally from version 3.2.3) should still work in 3.3.0 |
7 |
> |
Patch1: valgrind-vg330-global |
8 |
> |
Patch2: valgrind-vg330-dump |
9 |
> |
Patch3: valgrind-vg330-coregrind_n_segments |
10 |
> |
Patch4: valgrind-vg330-massif-eol |
11 |
> |
|
12 |
> |
%prep |
13 |
> |
%setup -n %n-%realversion |
14 |
> |
%patch1 -p1 |
15 |
> |
%patch2 -p1 |
16 |
> |
%patch3 -p1 |
17 |
> |
%patch4 -p0 |
18 |
> |
# CMS patch for segment sizes: |
19 |
> |
perl -p -i -e 's!VG_N_SEGMENTS 5000!VG_N_SEGMENTS 20000!; s!VG_N_SEGNAMES 1000!VG_N_SEGNAMES 4000!; s!VG_MAX_SEGNAMELEN 1000!VG_MAX_SEGNAMELEN 4000!' coregrind/m_aspacemgr/aspacemgr.c; |
20 |
> |
|
21 |
> |
pwd |
22 |
> |
|
23 |
|
%build |
24 |
|
./configure --prefix=%i |
25 |
|
make %makeprocesses |
26 |
+ |
%install |
27 |
+ |
make install |
28 |
+ |
perl -p -i -e 's|^#!.*perl(.*)|#!/usr/bin/env perl$1|' $(grep -r -e "^#!.*perl.*" %i | cut -d: -f 1) |
29 |
+ |
# I don't see how to make perl options work nicely with env, so drop the -w |
30 |
+ |
# in these two scripts |
31 |
+ |
perl -p -i -e 's|perl -w|perl|' %i/bin/callgrind_annotate |
32 |
+ |
perl -p -i -e 's|perl -w|perl|' %i/bin/callgrind_control |
33 |
+ |
|
34 |
+ |
# SCRAM ToolBox toolfile |
35 |
+ |
mkdir -p %i/etc/scram.d |
36 |
+ |
cat << \EOF_TOOLFILE >%i/etc/scram.d/%n |
37 |
+ |
<Tool name=valgrind version=%v> |
38 |
+ |
<Client> |
39 |
+ |
<Environment name=VALGRIND_BASE default="%i"></Environment> |
40 |
+ |
<Environment name=INCLUDE default="$VALGRIND_BASE/include"></Environment> |
41 |
+ |
</Client> |
42 |
+ |
<Runtime name=PATH value="$VALGRIND_BASE/bin" type=path> |
43 |
+ |
<Runtime name=VALGRIND_LIB value="$VALGRIND_BASE/lib/valgrind"> |
44 |
+ |
</Tool> |
45 |
+ |
EOF_TOOLFILE |
46 |
+ |
|
47 |
+ |
%post |
48 |
+ |
%{relocateConfig}etc/scram.d/%n |