- rel 2; support ld -z separate-code generated binaries
[packages/valgrind.git] / valgrind.spec
CommitLineData
23a3ecde
AM
1# TODO:
2# - fix CC detection in configure, so CC=gcc won't be needed
9ab8af97
JB
3#
4# Conditional build:
5%bcond_with mpi # MPI wrapper module
6#
9fd66024 7Summary: An open-source memory debugger
81257f7b 8Summary(pl.UTF-8): Otwarty odpluskwiacz pamięci
cccdc142 9Name: valgrind
35cbf636 10Version: 3.13.0
aa32c533 11Release: 2
9ab8af97 12License: GPL v2+
c5631d09 13Group: Development/Tools
35cbf636
AM
14Source0: ftp://sourceware.org/pub/valgrind/%{name}-%{version}.tar.bz2
15# Source0-md5: 817dd08f1e8a66336b9ff206400a5369
5beaf085
KK
16Patch0: %{name}-native-cpuid.patch
17Patch1: %{name}-ld_linux_strlen.patch
aa32c533 18Patch2: valgrind-3.13.0-ld-separate-code.patch
e0752a56 19URL: http://valgrind.org/
9ab8af97
JB
20BuildRequires: autoconf >= 2.50
21BuildRequires: automake >= 1:1.10
54375cc9 22BuildRequires: gcc >= 5:3.0
a8c253df
JB
23%ifarch x32
24BuildRequires: gcc-multilib-64 >= 5:3.0
25%endif
2ea65fbf 26# check in configure.ac:882 AC_MSG_CHECKING([the GLIBC_VERSION version])
3a93a74d 27BuildRequires: glibc-devel >= 6:2.2
1abb996b 28BuildRequires: libgomp-devel
54375cc9 29BuildRequires: libstdc++-devel
9ab8af97 30%{?with_mpi:BuildRequires: mpi-devel}
11f54799 31Obsoletes: valgrind-callgrind
32Obsoletes: valgrind-calltree
cfde8ab6 33ExclusiveArch: %{ix86} %{x8664} arm ppc ppc64 s390x x32
cccdc142
JK
34BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
35
9fd66024 36%define _noautostrip .*/vgpreload.*\\.so
4dd60bb4 37%define filterout_c -fstack-protector-strong
79e9a7b2
ER
38# ld portion broken
39%undefine with_ccache
a803692b 40
cccdc142 41%description
9fd66024 42Valgrind is a GPL'd system for debugging and profiling Linux programs.
43With the tools that come with Valgrind, you can automatically detect
6b924c54
JP
44many memory management and threading bugs, avoiding hours of
45frustrating bug-hunting, making your programs more stable. You can
46also perform detailed profiling to help speed up your programs.
cccdc142 47
f86a5f7e
JR
48%description -l pl.UTF-8
49Valgrind jest systemem służącym do odpluskwiania i profilowania
50programów na Linuksie. Używając dostarczanych z nim narzędzi można
6b924c54
JP
51automatycznie wykrywać wiele błędów związanych z zarządzaniem pamięcią
52i wątkowaniem, dzięki czemu unika się frustrującego polowania na
53błędy, a także czyni się programy bardziej stabilnymi. Możliwe jest
54również dokładne profilowanie, dzięki któremu programy zaczną szybciej
55pracować.
a3b1e5f5 56
cccdc142 57%prep
4ff172b5 58%setup -q
5beaf085 59%patch0 -p1
1dc3004f 60%patch1 -p1
aa32c533 61%patch2 -p1
68bd9ee3 62
ef1230c9 63sed -i -e 's:^CFLAGS="-Wno-long-long":CFLAGS="$CFLAGS -Wno-long-long":' configure.ac
1437dfea 64
cccdc142 65%build
c594fc71 66%{__aclocal}
cccdc142 67%{__autoconf}
9ab8af97 68%{__autoheader}
cccdc142 69%{__automake}
e7968d53
PS
70
71ac_cv_path_GDB=/usr/bin/gdb \
9eb4ec2b 72%configure \
23a3ecde 73 CC=gcc \
1abb996b 74 --enable-tls \
68bd9ee3
AM
75%if %{_lib} != "lib"
76 --enable-only64bit \
77%endif
9eb4ec2b 78 LDFLAGS="" # no strip!
e7968d53 79
cccdc142
JK
80%{__make}
81
82%install
83rm -rf $RPM_BUILD_ROOT
84
a273c144
JB
85%{__make} install \
86 DESTDIR=$RPM_BUILD_ROOT
cccdc142 87
54375cc9 88%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/doc
ef1230c9
AM
89cp -p docs/index.pdf docs/valgrind_manual.pdf
90cp -p docs/index.ps docs/valgrind_manual.ps
6b924c54 91
cccdc142
JK
92%clean
93rm -rf $RPM_BUILD_ROOT
94
95%files
96%defattr(644,root,root,755)
a15e5165 97%doc AUTHORS NEWS README README_MISSING_SYSCALL_OR_IOCTL
6b924c54 98%doc docs/html docs/valgrind_manual.pdf docs/valgrind_manual.ps
54375cc9
JB
99%attr(755,root,root) %{_bindir}/callgrind_annotate
100%attr(755,root,root) %{_bindir}/callgrind_control
101%attr(755,root,root) %{_bindir}/cg_annotate
102%attr(755,root,root) %{_bindir}/cg_diff
103%attr(755,root,root) %{_bindir}/cg_merge
104%attr(755,root,root) %{_bindir}/ms_print
105%attr(755,root,root) %{_bindir}/valgrind
ef1230c9 106%attr(755,root,root) %{_bindir}/valgrind-di-server
54375cc9
JB
107%attr(755,root,root) %{_bindir}/valgrind-listener
108%attr(755,root,root) %{_bindir}/vgdb
f1c36ddf 109%dir %{_libdir}/%{name}
1abb996b 110%attr(755,root,root) %{_libdir}/%{name}/*-linux
54375cc9 111%attr(755,root,root) %{_libdir}/%{name}/vgpreload_*-linux.so
9ab8af97
JB
112%if %{with mpi}
113# TODO: subpackage?
114%attr(755,root,root) %{_libdir}/%{name}/libmpiwrap-*-linux.so
115%endif
23a3ecde 116%{_libdir}/%{name}/*.xml
54375cc9
JB
117%{_libdir}/%{name}/default.supp
118%{_libdir}/%{name}/lib*-linux.a
119%{_includedir}/valgrind
120%{_mandir}/man1/callgrind_annotate.1*
121%{_mandir}/man1/callgrind_control.1*
122%{_mandir}/man1/cg_annotate.1*
ef1230c9
AM
123%{_mandir}/man1/cg_diff.1*
124%{_mandir}/man1/cg_merge.1*
54375cc9
JB
125%{_mandir}/man1/ms_print.1*
126%{_mandir}/man1/valgrind.1*
ef1230c9
AM
127%{_mandir}/man1/valgrind-listener.1*
128%{_mandir}/man1/vgdb.1*
54375cc9 129%{_pkgconfigdir}/valgrind.pc
This page took 0.108366 seconds and 4 git commands to generate.