1 # TODO: when updating try to reenable all tests (two were failing in 2.7 with openssl 1.1.1d)
4 %bcond_without python2 # CPython 2.x module
5 %bcond_without python3 # CPython 3.x module
6 %bcond_without doc # Sphinx documentation
7 %bcond_without tests # unit test
9 Summary: Crypthography library for Python 2
10 Summary(pl.UTF-8): Biblioteka Cryptography dla Pythona 2
11 Name: python-cryptography
14 License: Apache v2.0 or BSD
15 Group: Libraries/Python
16 #Source0Download: https://pypi.org/simple/cryptography/
17 Source0: https://files.pythonhosted.org/packages/source/c/cryptography/cryptography-%{version}.tar.gz
18 # Source0-md5: 77730058b556c6d9838679a94c6229ce
19 #Source1Download: https://pypi.org/simple/cryptography_vectors/
20 Source1: https://files.pythonhosted.org/packages/source/c/cryptography-vectors/cryptography_vectors-%{version}.tar.gz
21 # Source1-md5: a744ed29bb9ef56b3a50317fea3b218e
22 URL: https://cryptography.io/
23 BuildRequires: openssl-devel >= 1.0.1
24 BuildRequires: rpm-pythonprov >= 5.4.15-48
25 BuildRequires: rpmbuild(macros) >= 1.714
27 BuildRequires: python-cffi >= 1.8
28 BuildRequires: python-devel >= 1:2.7
29 BuildRequires: python-enum34
30 BuildRequires: python-pytz
31 BuildRequires: python-setuptools >= 18.5
32 BuildRequires: python-six >= 1.4.1
34 BuildRequires: python-asn1crypto >= 0.21.0
35 %if "%{py_ver}" >= "2.7"
36 BuildRequires: python-hypothesis >= 1.11.4
38 BuildRequires: python-idna >= 2.1
39 BuildRequires: python-ipaddress
40 BuildRequires: python-iso8601
41 BuildRequires: python-pretend
42 BuildRequires: python-pytest >= 3.6.0
43 BuildRequires: python-pytz
47 BuildRequires: python3-cffi >= 1.8
48 BuildRequires: python3-devel >= 1:3.4
49 BuildRequires: python3-setuptools >= 18.5
50 BuildRequires: python3-six >= 1.4.1
52 BuildRequires: python3-asn1crypto >= 0.21.0
53 BuildRequires: python3-hypothesis >= 1.11.4
54 BuildRequires: python3-idna >= 2.1
55 BuildRequires: python3-iso8601
56 BuildRequires: python3-pretend
57 BuildRequires: python3-pytest >= 3.6.0
58 BuildRequires: python3-pytz
62 BuildRequires: python3-sphinx_rtd_theme
63 BuildRequires: sphinx-pdg-3 >= 1.6.5
65 Requires: openssl >= 1.0.1
66 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
69 cryptography is a package designed to expose cryptographic recipes and
70 primitives to Python developers. Our goal is for it to be your
71 "cryptographic standard library". It supports Python 2.7, Python 3.4+,
74 cryptography includes both high level recipes, and low level
75 interfaces to common cryptographic algorithms such as symmetric
76 ciphers, message digests and key derivation functions.
78 This package contains Python 2 modules.
80 %description -l pl.UTF-8
81 cryptography to pakiet zaprojektowany w celu udostępnienia funkcji i
82 obiektów kryptograficznych programistom Pythona. Celem jest
83 dostarczenie "standardowej biblioteki kryptograficznej". Obsługuje
84 Pythona 2.7, Pythona 3.4+ oraz PyPy.
86 cryptography zawiera zarówno funkcje wysokopoziomowe, jak i
87 niskopoziomowe interfejsy do popularnych algorytmów kryptograficznych,
88 takich jak szyfry symetryczne, skróty wiadomości czy funkcje
89 wyprowadzające klucze.
91 Ten pakiet zawiera moduły Pythona 2.
93 %package -n python3-cryptography
94 Summary: Crypthography library for Python 3
95 Summary(pl.UTF-8): Biblioteka Cryptography dla Pythona 3
96 Group: Libraries/Python
97 Requires: openssl >= 1.0.1
99 %description -n python3-cryptography
100 cryptography is a package designed to expose cryptographic recipes and
101 primitives to Python developers. Our goal is for it to be your
102 "cryptographic standard library". It supports Python 2.7, Python 3.4+,
105 cryptography includes both high level recipes, and low level
106 interfaces to common cryptographic algorithms such as symmetric
107 ciphers, message digests and key derivation functions.
109 This package contains Python 3 modules.
111 %description -n python3-cryptography -l pl.UTF-8
112 cryptography to pakiet zaprojektowany w celu udostępnienia funkcji i
113 obiektów kryptograficznych programistom Pythona. Celem jest
114 dostarczenie "standardowej biblioteki kryptograficznej". Obsługuje
115 Pythona 2.7, Pythona 3.4+ oraz PyPy.
117 cryptography zawiera zarówno funkcje wysokopoziomowe, jak i
118 niskopoziomowe interfejsy do popularnych algorytmów kryptograficznych,
119 takich jak szyfry symetryczne, skróty wiadomości czy funkcje
120 wyprowadzające klucze.
122 Ten pakiet zawiera moduły Pythona 3.
125 Summary: API documentation for cryptography module
126 Summary(pl.UTF-8): Dokumentacja API modułu cryptography
128 %if "%{_rpmversion}" >= "5"
133 API documentation for cryptography module.
135 %description apidocs -l pl.UTF-8
136 Dokumentacja API modułu cryptography.
139 %setup -q -n cryptography-%{version} %{?with_tests:-a1}
142 %{__mv} cryptography_vectors-%{version}/cryptography_vectors .
146 export CFLAGS="%{rpmcflags}"
152 PYTHONPATH=$(echo $(pwd)/build-2/lib.*) \
153 %{__python} -m pytest tests
161 PYTHONPATH=$(echo $(pwd)/build-3/lib.*) \
162 %{__python3} -m pytest tests
167 %{__make} -C docs html \
168 SPHINXBUILD=sphinx-build-3
172 rm -rf $RPM_BUILD_ROOT
185 rm -rf $RPM_BUILD_ROOT
189 %defattr(644,root,root,755)
190 %doc AUTHORS.rst README.rst LICENSE LICENSE.APACHE LICENSE.BSD
191 %dir %{py_sitedir}/cryptography
192 %{py_sitedir}/cryptography/*.py[co]
193 %dir %{py_sitedir}/cryptography/hazmat
194 %{py_sitedir}/cryptography/hazmat/*.py[co]
195 %dir %{py_sitedir}/cryptography/hazmat/backends
196 %{py_sitedir}/cryptography/hazmat/backends/*.py[co]
197 %dir %{py_sitedir}/cryptography/hazmat/backends/openssl
198 %{py_sitedir}/cryptography/hazmat/backends/openssl/*.py[co]
199 %dir %{py_sitedir}/cryptography/hazmat/bindings
200 %{py_sitedir}/cryptography/hazmat/bindings/*.py[co]
201 %attr(755,root,root) %{py_sitedir}/cryptography/hazmat/bindings/_*.so
202 %dir %{py_sitedir}/cryptography/hazmat/bindings/openssl
203 %{py_sitedir}/cryptography/hazmat/bindings/openssl/*.py[co]
204 %dir %{py_sitedir}/cryptography/hazmat/primitives
205 %{py_sitedir}/cryptography/hazmat/primitives/*.py[co]
206 %dir %{py_sitedir}/cryptography/hazmat/primitives/asymmetric
207 %{py_sitedir}/cryptography/hazmat/primitives/asymmetric/*.py[co]
208 %dir %{py_sitedir}/cryptography/hazmat/primitives/ciphers
209 %{py_sitedir}/cryptography/hazmat/primitives/ciphers/*.py[co]
210 %dir %{py_sitedir}/cryptography/hazmat/primitives/kdf
211 %{py_sitedir}/cryptography/hazmat/primitives/kdf/*.py[co]
212 %dir %{py_sitedir}/cryptography/hazmat/primitives/serialization
213 %{py_sitedir}/cryptography/hazmat/primitives/serialization/*.py[co]
214 %dir %{py_sitedir}/cryptography/hazmat/primitives/twofactor
215 %{py_sitedir}/cryptography/hazmat/primitives/twofactor/*.py[co]
216 %dir %{py_sitedir}/cryptography/x509
217 %{py_sitedir}/cryptography/x509/*.py[co]
218 %{py_sitedir}/cryptography-%{version}-py*.egg-info
222 %files -n python3-cryptography
223 %defattr(644,root,root,755)
224 %doc AUTHORS.rst README.rst LICENSE LICENSE.APACHE LICENSE.BSD
225 %dir %{py3_sitedir}/cryptography
226 %{py3_sitedir}/cryptography/*.py
227 %{py3_sitedir}/cryptography/__pycache__
228 %dir %{py3_sitedir}/cryptography/hazmat
229 %{py3_sitedir}/cryptography/hazmat/*.py
230 %{py3_sitedir}/cryptography/hazmat/__pycache__
231 %dir %{py3_sitedir}/cryptography/hazmat/backends
232 %{py3_sitedir}/cryptography/hazmat/backends/*.py
233 %{py3_sitedir}/cryptography/hazmat/backends/__pycache__
234 %dir %{py3_sitedir}/cryptography/hazmat/backends/openssl
235 %{py3_sitedir}/cryptography/hazmat/backends/openssl/*.py
236 %{py3_sitedir}/cryptography/hazmat/backends/openssl/__pycache__
237 %dir %{py3_sitedir}/cryptography/hazmat/bindings
238 %{py3_sitedir}/cryptography/hazmat/bindings/*.py
239 %{py3_sitedir}/cryptography/hazmat/bindings/__pycache__
240 %attr(755,root,root) %{py3_sitedir}/cryptography/hazmat/bindings/_*.so
241 %dir %{py3_sitedir}/cryptography/hazmat/bindings/openssl
242 %{py3_sitedir}/cryptography/hazmat/bindings/openssl/*.py
243 %{py3_sitedir}/cryptography/hazmat/bindings/openssl/__pycache__
244 %dir %{py3_sitedir}/cryptography/hazmat/primitives
245 %{py3_sitedir}/cryptography/hazmat/primitives/*.py
246 %{py3_sitedir}/cryptography/hazmat/primitives/__pycache__
247 %dir %{py3_sitedir}/cryptography/hazmat/primitives/asymmetric
248 %{py3_sitedir}/cryptography/hazmat/primitives/asymmetric/*.py
249 %{py3_sitedir}/cryptography/hazmat/primitives/asymmetric/__pycache__
250 %dir %{py3_sitedir}/cryptography/hazmat/primitives/ciphers
251 %{py3_sitedir}/cryptography/hazmat/primitives/ciphers/*.py
252 %{py3_sitedir}/cryptography/hazmat/primitives/ciphers/__pycache__
253 %dir %{py3_sitedir}/cryptography/hazmat/primitives/kdf
254 %{py3_sitedir}/cryptography/hazmat/primitives/kdf/*.py
255 %{py3_sitedir}/cryptography/hazmat/primitives/kdf/__pycache__
256 %dir %{py3_sitedir}/cryptography/hazmat/primitives/serialization
257 %{py3_sitedir}/cryptography/hazmat/primitives/serialization/*.py
258 %{py3_sitedir}/cryptography/hazmat/primitives/serialization/__pycache__
259 %dir %{py3_sitedir}/cryptography/hazmat/primitives/twofactor
260 %{py3_sitedir}/cryptography/hazmat/primitives/twofactor/*.py
261 %{py3_sitedir}/cryptography/hazmat/primitives/twofactor/__pycache__
262 %dir %{py3_sitedir}/cryptography/x509
263 %{py3_sitedir}/cryptography/x509/*.py
264 %{py3_sitedir}/cryptography/x509/__pycache__
265 %{py3_sitedir}/cryptography-%{version}-py*.egg-info
270 %defattr(644,root,root,755)
271 %doc docs/_build/html/{_downloads,_static,development,hazmat,x509,*.html,*.js}