3 %bcond_without static_libs # static library build
5 Summary: Library for searching Approximate Nearest Neighbors
6 Summary(pl.UTF-8): Biblioteka do przybliżonego wyszukiwania najbliższych sąsiadów
12 #Source0Download: http://www.cs.umd.edu/~mount/ANN/
13 Source0: http://www.cs.umd.edu/~mount/ANN/Files/%{version}/%{name}_%{version}.tar.gz
14 # Source0-md5: 7ffaacc7ea79ca39d4958a6378071365
15 Patch0: %{name}-make.patch
16 Patch1: %{name}-gcc43.patch
17 URL: http://www.cs.umd.edu/~mount/ANN/
18 BuildRequires: libstdc++-devel
19 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
22 ANN is a library written in the C++ programming language to support
23 both exact and approximate nearest neighbor searching in spaces of
26 %description -l pl.UTF-8
27 ANN to napisana w języku C++ biblioteka do zarówno dokładnego, jak i
28 przybliżonego wyszukiwania najbliższych sąsiadów w przestrzeniach o
29 różnej liczbie wymiarów.
32 Summary: Header files for ANN library
33 Summary(pl.UTF-8): Pliki nagłówkowe biblioteki ANN
34 Group: Development/Libraries
35 Requires: %{name} = %{version}-%{release}
36 Requires: libstdc++-devel
39 Header files for ANN library.
41 %description devel -l pl.UTF-8
42 Pliki nagłówkowe biblioteki ANN.
45 Summary: Static ANN library
46 Summary(pl.UTF-8): Statyczna biblioteka ANN
47 Group: Development/Libraries
48 Requires: %{name}-devel = %{version}-%{release}
53 %description static -l pl.UTF-8
54 Statyczna biblioteka ANN.
57 %setup -q -n %{name}_%{version}
62 %if %{with static_libs}
64 %{__make} -C src targets \
67 CFLAGS="%{rpmcxxflags}" \
74 for d in src ann2fig ; do
75 %{__make} -C $d targets \
76 ANNLIB="libANN.so.1.0" \
77 ANNDEVLIB="libANN.so" \
79 CFLAGS="%{rpmcxxflags} -fPIC" \
80 MAKELIB="%{__cxx} %{rpmldflags} -shared -Wl,-soname,libANN.so.1 -o" \
85 rm -rf $RPM_BUILD_ROOT
86 install -d $RPM_BUILD_ROOT{%{_bindir},%{_libdir},%{_includedir}/ANN,%{_pkgconfigdir}}
88 install bin/ann2fig $RPM_BUILD_ROOT%{_bindir}
89 %{?with_static_libs:install lib/libANN.a $RPM_BUILD_ROOT%{_libdir}}
90 install lib/libANN.so.1.0 $RPM_BUILD_ROOT%{_libdir}
91 ln -sf libANN.so.1.0 $RPM_BUILD_ROOT%{_libdir}/libANN.so.1
92 ln -sf libANN.so.1.0 $RPM_BUILD_ROOT%{_libdir}/libANN.so
93 cp -p include/ANN/*.h $RPM_BUILD_ROOT%{_includedir}/ANN
95 # create pkg-config file
96 cat >$RPM_BUILD_ROOT%{_pkgconfigdir}/ann.pc <<'EOF'
98 exec_prefix=%{_exec_prefix}
100 includedir=%{_includedir}
103 Description: Library for searching Approximate Nearest Neighbors
106 Libs: -L${libdir} -lANN
107 Cflags: -I${includedir}
111 rm -rf $RPM_BUILD_ROOT
113 %post -p /sbin/ldconfig
114 %postun -p /sbin/ldconfig
117 %defattr(644,root,root,755)
118 %doc Copyright.txt ReadMe.txt
119 %attr(755,root,root) %{_bindir}/ann2fig
120 %attr(755,root,root) %{_libdir}/libANN.so.*.*
121 %attr(755,root,root) %ghost %{_libdir}/libANN.so.1
124 %defattr(644,root,root,755)
125 %doc doc/ANNmanual.pdf
126 %attr(755,root,root) %{_libdir}/libANN.so
128 %{_pkgconfigdir}/ann.pc
130 %if %{with static_libs}
132 %defattr(644,root,root,755)