]> git.pld-linux.org Git - packages/libsolv.git/blame - libsolv.spec
- enable COMPLEX_DEPS (required for libdnf); release 2
[packages/libsolv.git] / libsolv.spec
CommitLineData
48e6f7d6
JB
1#
2# Conditional build:
3%bcond_without static_libs # static libraries
4%bcond_without python3 # Python 3.x bindings
c3036d16 5%bcond_without ruby # Ruby bindings
f3674f2d 6%bcond_without tcl # Tcl bindings
c3036d16 7
48e6f7d6
JB
8%include /usr/lib/rpm/macros.perl
9Summary: Package dependency solver
10Summary(pl.UTF-8): Biblioteka do rozwiązywania zależności pakietów
11Name: libsolv
8163445e 12Version: 0.6.34
f5a13d2b 13Release: 2
48e6f7d6
JB
14License: BSD
15Group: Libraries
e0631f71 16#Source0Download: https://github.com/openSUSE/libsolv/releases
ddf7b6ba 17Source0: https://github.com/openSUSE/libsolv/archive/%{version}/%{name}-%{version}.tar.gz
8163445e 18# Source0-md5: b61f8268a60086ae6fbf7a3454d669cb
951d8ff0 19Patch0: ruby.patch
ce97d5b0 20Patch1: %{name}-python.patch
8163445e 21Patch2: %{name}-rpm5.patch
48e6f7d6
JB
22URL: https://github.com/openSUSE/libsolv
23BuildRequires: bzip2-devel
24BuildRequires: cmake >= 2.4
25BuildRequires: db-devel
26BuildRequires: expat-devel
48e6f7d6
JB
27BuildRequires: perl-devel
28BuildRequires: pkgconfig
29BuildRequires: python-devel >= 2
30%{?with_python3:BuildRequires: python3-devel >= 3}
c3036d16 31BuildRequires: rpm-devel >= 5
48e6f7d6
JB
32BuildRequires: rpm-perlprov
33BuildRequires: rpm-pythonprov
48e6f7d6 34BuildRequires: rpmbuild(macros) >= 1.219
c3036d16
ER
35BuildRequires: swig-perl
36BuildRequires: swig-python
f3674f2d 37%{?with_tcl:BuildRequires: swig-tcl}
48e6f7d6 38BuildRequires: tar >= 1:1.22
f3674f2d 39%{?with_tcl:BuildRequires: tcl-devel}
48e6f7d6
JB
40BuildRequires: xz
41BuildRequires: xz-devel
42BuildRequires: zlib-devel
c3036d16
ER
43%if %{with ruby}
44BuildRequires: rpm-rubyprov
45BuildRequires: ruby-devel
46BuildRequires: swig-ruby
47%endif
48e6f7d6
JB
48BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
49
50%description
51A free package dependency solver using a satisfiability algorithm. The
52library is based on two major, but independent, blocks:
53
54- Using a dictionary approach to store and retrieve package and
55 dependency information.
56
57- Using satisfiability, a well known and researched topic, for
58 resolving package dependencies.
59
60%description -l pl.UTF-8
61Wolnodostępna biblioteka do rozwiązywania zależności pakietów przy
62użyciu algorytmu spełnialności. Biblioteka jest podzielona na dwa
63główne, niezależne bloki:
64
c3036d16
ER
65- wykorzystanie podejścia słownikowego do przechowywania i odtwarzania
66 informacji o pakietach i zależnościach,
48e6f7d6
JB
67
68- wykorzystanie spełnialności - dobrze znanego i zbadanego tematu do
69 rozwiązywania zależności pakietów.
70
71%package devel
72Summary: Header files for libsolv libraries
73Summary(pl.UTF-8): Pliki nagłówkowe bibliotek libsolv
74Group: Development/Libraries
75Requires: %{name} = %{version}-%{release}
76Requires: rpm-devel >= 5
77
78%description devel
79Development files for libsolv.
80
81%description devel -l pl.UTF-8
82Pliki programistyczne biblioetk libsolv.
83
84%package static
85Summary: Static libsolv libraries
86Summary(pl.UTF-8): Statyczne biblioteki libsolv
87Group: Development/Libraries
88Requires: %{name}-devel = %{version}-%{release}
89
90%description static
91Static libsolv libraries.
92
93%description static -l pl.UTF-8
94Statyczne biblioteki libsolv.
95
96%package tools
97Summary: Package dependency solver tools
98Summary(pl.UTF-8): Narzędzia do rozwiązywania zależności pakietów
99Group: Applications/System
100Requires: %{name} = %{version}-%{release}
101Requires: bzip2
102Requires: coreutils
103Requires: gzip
104
105%description tools
106Package dependency solver tools.
107
108%description tools -l pl.UTF-8
109Narzędzia do rozwiązywania zależności pakietów.
110
111%package -n perl-solv
112Summary: Perl bindings for the libsolv libraries
113Summary(pl.UTF-8): Wiązania Perla do bibliotek libsolv
114Group: Development/Languages/Perl
115Requires: %{name} = %{version}-%{release}
116
117%description -n perl-solv
118Perl bindings for the libsolv libraries.
119
120%description -n perl-solv -l pl.UTF-8
121Wiązania Perla do bibliotek libsolv.
122
123%package -n python-solv
124Summary: Python 2.x bindings for the libsolv library
125Summary(pl.UTF-8): Wiązania Pythona 2.x do bibliotek libsolv
126Group: Development/Languages/Python
127Requires: %{name} = %{version}-%{release}
128Requires: python-libs
129
130%description -n python-solv
131Python 2.x bindings for the libsolv library.
132
133%description -n python-solv -l pl.UTF-8
134Wiązania Pythona 2.x do bibliotek libsolv.
135
136%package -n python3-solv
137Summary: Python 3.x bindings for the libsolv library
138Summary(pl.UTF-8): Wiązania Pythona 2.x do bibliotek libsolv
139Group: Development/Languages/Python
140Requires: %{name} = %{version}-%{release}
141Requires: python-libs
142
143%description -n python3-solv
144Python 3.x bindings for the libsolv library.
145
146%description -n python3-solv -l pl.UTF-8
147Wiązania Pythona 3.x do bibliotek libsolv.
148
149%package -n ruby-solv
150Summary: Ruby bindings for the libsolv libraries
151Summary(pl.UTF-8): Wiązania języka Ruby do bibliotek libsolv
152Group: Development/Languages
153Requires: %{name} = %{version}-%{release}
154
155%description -n ruby-solv
156Ruby bindings for the libsolv libraries.
157
158%description -n ruby-solv -l pl.UTF-8
159Wiązania języka Ruby do bibliotek libsolv.
160
f3674f2d
JB
161%package -n tcl-solv
162Summary: Tcl bindings for the libsolv libraries
163Summary(pl.UTF-8): Wiązania języka Tcl do bibliotek libsolv
164Group: Development/Languages
165Requires: %{name} = %{version}-%{release}
166Requires: tcl
167
168%description -n tcl-solv
169Tcl bindings for the libsolv libraries.
170
171%description -n tcl-solv -l pl.UTF-8
172Wiązania języka Tcl do bibliotek libsolv.
173
48e6f7d6 174%prep
c087059a 175%setup -q
951d8ff0 176%patch0 -p1
ce97d5b0 177%patch1 -p1
8163445e 178%patch2 -p1
48e6f7d6 179
a43c9d7a 180# use system one
ce97d5b0 181%{__rm} cmake/modules/FindRuby.cmake
a43c9d7a 182
48e6f7d6 183%build
8163445e
JB
184# TODO: -DENABLE_RPMDB_LIBRPM=ON -DENABLE_RPMPKG_LIBRPM=ON (rpm5 not supported)
185
186%define common_opts \\\
187 -DENABLE_APPDATA=ON \\\
188 -DENABLE_BZIP2_COMPRESSION=ON \\\
f5a13d2b 189 -DENABLE_COMPLEX_DEPS=ON \\\
8163445e
JB
190 -DENABLE_HELIXREPO=ON \\\
191 -DENABLE_LZMA_COMPRESSION=ON \\\
192 -DENABLE_PUBKEY=ON \\\
193 -DENABLE_RPMDB=ON \\\
194 -DENABLE_RPMDB_BYRPMHEADER=ON \\\
195 -DENABLE_RPMMD=ON \\\
196 %{?with_static_libs:-DENABLE_STATIC=ON} \\\
197 -DRPM5=ON \\\
198 %{nil}
199
48e6f7d6
JB
200install -d build %{?with_python3:build-py3}
201cd build
202%cmake .. \
8163445e 203 %{common_opts} \
48e6f7d6 204 -DENABLE_PERL=ON \
48e6f7d6 205 -DENABLE_PYTHON=ON \
c3036d16 206 %{?with_ruby:-DENABLE_RUBY=ON} \
f3674f2d 207 %{?with_tcl:-DENABLE_TCL=ON} \
48e6f7d6 208 -DPythonLibs_FIND_VERSION=2 \
ce97d5b0 209 -DPythonLibs_FIND_VERSION_MAJOR=2 \
48e6f7d6
JB
210 -DUSE_VENDORDIRS=ON
211
212%{__make}
213%if %{with python3}
214cd ../build-py3
215%cmake .. \
8163445e 216 %{common_opts} \
48e6f7d6 217 -DENABLE_PYTHON=ON \
48e6f7d6 218 -DPythonLibs_FIND_VERSION=3 \
8163445e 219 -DPythonLibs_FIND_VERSION_MAJOR=3
48e6f7d6
JB
220
221%{__make}
222%endif
223
224%install
225rm -rf $RPM_BUILD_ROOT
226
227%if %{with python3}
228%{__make} -C build-py3/bindings/python install \
229 DESTDIR=$RPM_BUILD_ROOT
230%endif
231
232%{__make} -C build install \
233 DESTDIR=$RPM_BUILD_ROOT
234
235%py_comp $RPM_BUILD_ROOT%{py_sitedir}
236%py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
237%py_postclean
238
239%clean
240rm -rf $RPM_BUILD_ROOT
241
242%post -p /sbin/ldconfig
243%postun -p /sbin/ldconfig
244
245%files
246%defattr(644,root,root,755)
ddf7b6ba 247%doc BUGS CREDITS LICENSE.BSD NEWS README
48e6f7d6
JB
248%attr(755,root,root) %{_libdir}/libsolv.so.0
249%attr(755,root,root) %{_libdir}/libsolvext.so.0
250
251%files devel
252%defattr(644,root,root,755)
48e6f7d6
JB
253%attr(755,root,root) %{_libdir}/libsolv.so
254%attr(755,root,root) %{_libdir}/libsolvext.so
255%{_includedir}/solv
f3674f2d 256%{_pkgconfigdir}/libsolv.pc
05212f1a 257%{_pkgconfigdir}/libsolvext.pc
48e6f7d6
JB
258%{_datadir}/cmake/Modules/FindLibSolv.cmake
259%{_mandir}/man3/libsolv*.3*
260
261%if %{with static_libs}
262%files static
263%defattr(644,root,root,755)
264%{_libdir}/libsolv.a
265%{_libdir}/libsolvext.a
266%endif
267
268%files tools
269%defattr(644,root,root,755)
c3036d16 270%attr(755,root,root) %{_bindir}/appdata2solv
48e6f7d6
JB
271%attr(755,root,root) %{_bindir}/deltainfoxml2solv
272%attr(755,root,root) %{_bindir}/dumpsolv
1735d117 273%attr(755,root,root) %{_bindir}/helix2solv
48e6f7d6
JB
274%attr(755,root,root) %{_bindir}/installcheck
275%attr(755,root,root) %{_bindir}/mergesolv
276%attr(755,root,root) %{_bindir}/repo2solv.sh
277%attr(755,root,root) %{_bindir}/repomdxml2solv
278%attr(755,root,root) %{_bindir}/rpmdb2solv
279%attr(755,root,root) %{_bindir}/rpmmd2solv
280%attr(755,root,root) %{_bindir}/rpms2solv
48e6f7d6
JB
281%attr(755,root,root) %{_bindir}/testsolv
282%attr(755,root,root) %{_bindir}/updateinfoxml2solv
c087059a
JR
283%{_mandir}/man1/appdata2solv.1*
284%{_mandir}/man1/deltainfoxml2solv.1*
285%{_mandir}/man1/dumpsolv.1*
1735d117 286%{_mandir}/man1/helix2solv.1*
c087059a
JR
287%{_mandir}/man1/installcheck.1*
288%{_mandir}/man1/mergesolv.1*
289%{_mandir}/man1/repomdxml2solv.1*
290%{_mandir}/man1/rpmdb2solv.1*
291%{_mandir}/man1/rpmmd2solv.1*
292%{_mandir}/man1/rpms2solv.1*
293%{_mandir}/man1/testsolv.1*
294%{_mandir}/man1/updateinfoxml2solv.1*
48e6f7d6
JB
295
296%files -n perl-solv
297%defattr(644,root,root,755)
298%doc examples/p5solv
299%attr(755,root,root) %{perl_vendorarch}/solv.so
300%{perl_vendorarch}/solv.pm
301
302%files -n python-solv
303%defattr(644,root,root,755)
304%doc examples/pysolv
305%attr(755,root,root) %{py_sitedir}/_solv.so
306%{py_sitedir}/solv.py[co]
307
308%if %{with python3}
309%files -n python3-solv
310%defattr(644,root,root,755)
311%doc examples/pysolv
312%attr(755,root,root) %{py3_sitedir}/_solv.so
313%{py3_sitedir}/solv.py
314%endif
315
c3036d16 316%if %{with ruby}
48e6f7d6
JB
317%files -n ruby-solv
318%defattr(644,root,root,755)
319%doc examples/rbsolv
320%attr(755,root,root) %{ruby_vendorarchdir}/solv.so
c3036d16 321%endif
f3674f2d
JB
322
323%if %{with tcl}
324%files -n tcl-solv
325%defattr(644,root,root,755)
326%doc examples/tclsolv
327%attr(755,root,root) %{_prefix}/lib/tcl8/8.*/solv-%{version}.so
328%{_prefix}/lib/tcl8/8.*/solv-%{version}.tm
329%endif
This page took 0.144423 seconds and 4 git commands to generate.