3 %bcond_without python2 # CPython 2.x module
4 %bcond_without python3 # CPython 3.x module
5 %bcond_without doc # Sphinx based documentation
6 %bcond_without tests # unit tests
8 Summary: Foreign Function Interface for Python 2 calling C code
9 Summary(pl.UTF-8): Interfejs funkcji obcych (FFI) dla Pythona 2 wywołującego kod w C
14 Group: Libraries/Python
15 #Source0Download: https://pypi.org/simple/cffi/
16 Source0: https://files.pythonhosted.org/packages/source/c/cffi/cffi-%{version}.tar.gz
17 # Source0-md5: f3a3f26cd3335fc597479c9475da0a0b
18 URL: http://cffi.readthedocs.org/
19 BuildRequires: libffi-devel >= 3
20 BuildRequires: pkgconfig
22 BuildRequires: python >= 1:2.6
23 BuildRequires: python-devel >= 1:2.6
24 BuildRequires: python-setuptools
26 BuildRequires: python-pycparser
27 BuildRequires: python-pytest
28 BuildRequires: virtualenv
32 BuildRequires: python3 >= 1:3.2
33 BuildRequires: python3-devel >= 1:3.2
34 BuildRequires: python3-setuptools
36 BuildRequires: python3-pycparser
37 BuildRequires: python3-pytest
38 BuildRequires: virtualenv
41 BuildRequires: rpm-pythonprov
42 BuildRequires: rpmbuild(macros) >= 1.714
43 %{?with_doc:BuildRequires: sphinx-pdg}
44 Requires: python-modules >= 1:2.6
45 Requires: python-pycparser
46 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
49 Foreign Function Interface for Python calling C code. The aim of this
50 project is to provide a convenient and reliable way of calling C code
51 from Python without learning additional language or API.
53 This package contains Python 2 module.
55 %description -l pl.UTF-8
56 CFFI to interfejs funkcji obcych (FFI - foreign Function Interface) do
57 wywoływania kodu w C z Pythona. Celem projektu jest dostarczenie
58 wygodnego i wiarygodnego sposobu wywoływania kodu w C z Pythona bez
59 potrzeby nauki dodatkowego języka lub API.
61 Ten pakiet zawiera moduł Pythona 2.
63 %package -n python3-cffi
64 Summary: Foreign Function Interface for Python 3 calling C code
65 Summary(pl.UTF-8): Interfejs funkcji obcych (FFI) dla Pythona 3 wywołującego kod w C
66 Group: Libraries/Python
67 Requires: python3-modules >= 1:3.2
68 Requires: python3-pycparser
70 %description -n python3-cffi
71 Foreign Function Interface for Python calling C code. The aim of this
72 project is to provide a convenient and reliable way of calling C code
73 from Python without learning additional language or API.
75 This package contains Python 3 module.
77 %description -n python3-cffi -l pl.UTF-8
78 CFFI to interfejs funkcji obcych (FFI - foreign Function Interface) do
79 wywoływania kodu w C z Pythona. Celem projektu jest dostarczenie
80 wygodnego i wiarygodnego sposobu wywoływania kodu w C z Pythona bez
81 potrzeby nauki dodatkowego języka lub API.
83 Ten pakiet zawiera moduł Pythona 3.
86 Summary: API documentation for Python CFFI module
87 Summary(pl.UTF-8): Dokumentacja API modułu Pythona CFFI
92 API documentation for Python CFFI module.
94 %description apidocs -l pl.UTF-8
95 Dokumentacja API modułu Pythona CFFI.
98 %setup -q -n cffi-%{version}
105 PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 \
106 PYTHONPATH=$(pwd):$(echo $(pwd)/build-2/lib.linux-*) \
107 %{__python} -m pytest c testing
115 PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 \
116 PYTHONPATH=$(pwd):$(echo $(pwd)/build-3/lib.linux-*) \
117 %{__python3} -m pytest c testing
122 %{__make} -C doc html
126 rm -rf $RPM_BUILD_ROOT
139 rm -rf $RPM_BUILD_ROOT
143 %defattr(644,root,root,755)
144 %doc AUTHORS LICENSE README.md
145 %attr(755,root,root) %{py_sitedir}/_cffi_backend.so
146 %dir %{py_sitedir}/cffi
147 %{py_sitedir}/cffi/_cffi_errors.h
148 %{py_sitedir}/cffi/_cffi_include.h
149 %{py_sitedir}/cffi/_embedding.h
150 %{py_sitedir}/cffi/parse_c_type.h
151 %{py_sitedir}/cffi/*.py[co]
152 %{py_sitedir}/cffi-%{version}-py*.egg-info
156 %files -n python3-cffi
157 %defattr(644,root,root,755)
158 %doc AUTHORS LICENSE README.md
159 %attr(755,root,root) %{py3_sitedir}/_cffi_backend.cpython-*.so
160 %dir %{py3_sitedir}/cffi
161 %{py3_sitedir}/cffi/_cffi_errors.h
162 %{py3_sitedir}/cffi/_cffi_include.h
163 %{py3_sitedir}/cffi/_embedding.h
164 %{py3_sitedir}/cffi/parse_c_type.h
165 %{py3_sitedir}/cffi/*.py
166 %{py3_sitedir}/cffi/__pycache__
167 %{py3_sitedir}/cffi-%{version}-py*.egg-info
172 %defattr(644,root,root,755)
173 %doc doc/build/html/{_static,*.html,*.js}