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