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