3 %bcond_without cython # Python modules (Cython based)
4 %bcond_without python3 # Python 3 module
5 %bcond_without static_libs # static libraries
10 Summary: Library for manipulating Apple Property Lists
11 Summary(pl.UTF-8): Biblioteka do manipulowania Apple Property Lists
17 # Source0Download: https://libimobiledevice.org/
18 Source0: https://github.com/libimobiledevice/libplist/releases/download/%{version}/%{name}-%{version}.tar.bz2
19 # Source0-md5: 63cc49401521662c94cd4107898c744c
20 Patch0: %{name}-sh.patch
21 URL: https://libimobiledevice.org/
22 BuildRequires: autoconf >= 2.64
23 BuildRequires: automake
24 BuildRequires: libstdc++-devel
25 BuildRequires: libtool
26 BuildRequires: pkgconfig
27 BuildRequires: rpmbuild(macros) >= 1.600
29 BuildRequires: python-Cython >= 0.17.0
30 BuildRequires: python-devel >= 1:2.3
31 BuildRequires: python-modules >= 1:2.3
33 BuildRequires: python3-Cython >= 0.17.0
34 BuildRequires: python3-devel >= 1:3.2
35 BuildRequires: python3-modules >= 1:3.2
37 BuildRequires: rpm-pythonprov
39 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
42 Library for manipulating Apple Property Lists in binary and XML
45 %description -l pl.UTF-8
46 Biblioteka do manipulowania Apple Property Lists w formacie binarnym i
50 Summary: Header file for libplist library
51 Summary(pl.UTF-8): Plik nagłówkowy biblioteki libplist
52 Group: Development/Libraries
53 Requires: %{name} = %{version}-%{release}
56 Header file for libplist library.
58 %description devel -l pl.UTF-8
59 Plik nagłówkowy biblioteki libplist.
62 Summary: Static libplist library
63 Summary(pl.UTF-8): Statyczna biblioteka libplist
64 Group: Development/Libraries
65 Requires: %{name}-devel = %{version}-%{release}
68 Static libplist library.
70 %description static -l pl.UTF-8
71 Statyczna biblioteka libplist.
74 Summary: C++ binding for libplist library
75 Summary(pl.UTF-8): Wiązanie C++ do biblioteki libplist
77 Requires: %{name} = %{version}-%{release}
80 C++ binding for libplist library.
82 %description c++ -l pl.UTF-8
83 Wiązanie C++ do biblioteki libplist.
86 Summary: Header files for libplist++ library
87 Summary(pl.UTF-8): Pliki nagłówkowe biblioteki libplist++
88 Group: Development/Libraries
89 Requires: %{name}-c++ = %{version}-%{release}
90 Requires: %{name}-devel = %{version}-%{release}
91 Requires: libstdc++-devel
93 %description c++-devel
94 Header files for libplist++ library.
96 %description c++-devel -l pl.UTF-8
97 Pliki nagłówkowe biblioteki libplist++.
100 Summary: Static libplist++ library
101 Summary(pl.UTF-8): Statyczna biblioteka libplist++
102 Group: Development/Libraries
103 Requires: %{name}-c++-devel = %{version}-%{release}
105 %description c++-static
106 Static libplist++ library.
108 %description c++-static -l pl.UTF-8
109 Statyczna biblioteka libplist++.
111 %package -n python-plist
112 Summary: Python 2 bindings for libplist
113 Summary(pl.UTF-8): Wiązania libplist dla Pythona 2
114 Group: Development/Languages/Python
115 Requires: %{name} = %{version}-%{release}
117 %description -n python-plist
118 Python 2 bindings for libplist.
120 %description -n python-plist -l pl.UTF-8
121 Wiązania libplist dla Pythona 2.
123 %package -n python3-plist
124 Summary: Python 3 bindings for libplist
125 Summary(pl.UTF-8): Wiązania libplist dla Pythona 3
126 Group: Development/Languages/Python
127 Requires: %{name} = %{version}-%{release}
129 %description -n python3-plist
130 Python 3 bindings for libplist.
132 %description -n python3-plist -l pl.UTF-8
133 Wiązania libplist dla Pythona 3.
135 %package -n python-plist-devel
136 Summary: Cython header file for Python libplist binding
137 Summary(pl.UTF-8): Plik nagłówkowy Cythona dla wiązania Pythona do biblioteki libplist
138 Group: Development/Libraries
139 Requires: %{name}-devel = %{version}-%{release}
140 Requires: python-Cython >= 0.17.0
142 %description -n python-plist-devel
143 Cython header file for Python libplist binding.
145 %description -n python-plist-devel -l pl.UTF-8
146 Plik nagłówkowy Cythona dla wiązania Pythona do biblioteki libplist.
152 touch cython/*.py[xh]
163 --disable-silent-rules \
164 %{!?with_static_libs:--disable-static} \
165 %{!?with_cython:--without-cython}
168 # make[2]: *** No rule to make target '../src/libplist.la', needed by 'libplist++.la'. Stop.
177 PYTHON=%{__python3} \
178 --disable-silent-rules
180 %{__make} -C cython \
181 top_builddir="${topdir}/build"
185 rm -rf $RPM_BUILD_ROOT
187 %{__make} -C build install \
188 DESTDIR=$RPM_BUILD_ROOT
191 %{__rm} $RPM_BUILD_ROOT%{_libdir}/lib*.la
194 install -d $RPM_BUILD_ROOT%{_includedir}/plist/cython
195 cp -p cython/plist.pxd $RPM_BUILD_ROOT%{_includedir}/plist/cython/plist.pxd
196 %{__rm} $RPM_BUILD_ROOT%{py_sitedir}/plist.la \
197 %{?with_static_libs:$RPM_BUILD_ROOT%{py_sitedir}/plist.a}
200 %{__make} -C build-py3/cython install \
201 DESTDIR=$RPM_BUILD_ROOT \
202 top_builddir="$(pwd)/build"
204 %{__rm} $RPM_BUILD_ROOT%{py3_sitedir}/plist.la
205 %{?with_static_libs:$RPM_BUILD_ROOT%{py3_sitedir}/plist.a}
210 rm -rf $RPM_BUILD_ROOT
212 %post -p /sbin/ldconfig
213 %postun -p /sbin/ldconfig
215 %post c++ -p /sbin/ldconfig
216 %postun c++ -p /sbin/ldconfig
219 %defattr(644,root,root,755)
220 %doc AUTHORS NEWS README.md
221 %attr(755,root,root) %{_bindir}/plistutil
222 %attr(755,root,root) %{_libdir}/libplist-2.0.so.*.*.*
223 %attr(755,root,root) %ghost %{_libdir}/libplist-2.0.so.3
224 %{_mandir}/man1/plistutil.1*
227 %defattr(644,root,root,755)
228 %attr(755,root,root) %{_libdir}/libplist-2.0.so
229 %dir %{_includedir}/plist
230 %{_includedir}/plist/plist.h
231 %{_pkgconfigdir}/libplist-2.0.pc
233 %if %{with static_libs}
235 %defattr(644,root,root,755)
236 %{_libdir}/libplist-2.0.a
240 %defattr(644,root,root,755)
241 %attr(755,root,root) %{_libdir}/libplist++-2.0.so.*.*.*
242 %attr(755,root,root) %ghost %{_libdir}/libplist++-2.0.so.3
245 %defattr(644,root,root,755)
246 %attr(755,root,root) %{_libdir}/libplist++-2.0.so
247 %{_includedir}/plist/Array.h
248 %{_includedir}/plist/Boolean.h
249 %{_includedir}/plist/Data.h
250 %{_includedir}/plist/Date.h
251 %{_includedir}/plist/Dictionary.h
252 %{_includedir}/plist/Integer.h
253 %{_includedir}/plist/Key.h
254 %{_includedir}/plist/Node.h
255 %{_includedir}/plist/Real.h
256 %{_includedir}/plist/String.h
257 %{_includedir}/plist/Structure.h
258 %{_includedir}/plist/Uid.h
259 %{_includedir}/plist/plist++.h
260 %{_pkgconfigdir}/libplist++-2.0.pc
262 %if %{with static_libs}
264 %defattr(644,root,root,755)
265 %{_libdir}/libplist++-2.0.a
269 %files -n python-plist
270 %defattr(644,root,root,755)
271 %attr(755,root,root) %{py_sitedir}/plist.so
274 %files -n python3-plist
275 %defattr(644,root,root,755)
276 %attr(755,root,root) %{py3_sitedir}/plist.so
279 %files -n python-plist-devel
280 %defattr(644,root,root,755)
281 %{_includedir}/plist/cython