You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
244 lines
9.1 KiB
244 lines
9.1 KiB
## |
|
## python-crypto.spec -- OpenPKG RPM Package Specification |
|
## Copyright (c) 2000-2022 OpenPKG Project <http://openpkg.org/> |
|
## |
|
## Permission to use, copy, modify, and distribute this software for |
|
## any purpose with or without fee is hereby granted, provided that |
|
## the above copyright notice and this permission notice appear in all |
|
## copies. |
|
## |
|
## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED |
|
## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF |
|
## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. |
|
## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR |
|
## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
|
## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
|
## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF |
|
## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND |
|
## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, |
|
## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT |
|
## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
|
## SUCH DAMAGE. |
|
## |
|
|
|
# package versions |
|
%define V_python 3.10 |
|
%define V_pycrypto 2.6.1 |
|
%define V_pyopenssl 20.0.1 |
|
%define V_cryptography 3.3.1 |
|
%define V_pyasn1 0.4.8 |
|
%define V_pyasn1_modules 0.2.8 |
|
%define V_ndg_httpsclient 0.5.1 |
|
%define V_pynacl 1.4.0 |
|
%define V_libnacl 1.8.0 |
|
%define V_service_identity 18.1.0 |
|
%define V_asn1crypto 1.4.0 |
|
%define V_certifi 2021.10.8 |
|
%define V_passlib 1.7.4 |
|
|
|
# package information |
|
Name: python-crypto |
|
Summary: Python Modules for Cryptography |
|
URL: http://www.python.org/ |
|
Vendor: Python Community |
|
Packager: OpenPKG Project |
|
Distribution: OpenPKG Community |
|
Class: BASE |
|
Group: Language |
|
License: GPL |
|
Version: %{V_python} |
|
Release: 20211009 |
|
|
|
# package options |
|
%option with_libnacl no |
|
|
|
# list of sources |
|
Source0: https://files.pythonhosted.org/packages/source/p/pycrypto/pycrypto-%{V_pycrypto}.tar.gz |
|
Source1: https://files.pythonhosted.org/packages/source/p/pyOpenSSL/pyOpenSSL-%{V_pyopenssl}.tar.gz |
|
Source2: https://files.pythonhosted.org/packages/source/c/cryptography/cryptography-%{V_cryptography}.tar.gz |
|
Source3: https://files.pythonhosted.org/packages/source/p/pyasn1/pyasn1-%{V_pyasn1}.tar.gz |
|
Source4: https://files.pythonhosted.org/packages/source/p/pyasn1-modules/pyasn1-modules-%{V_pyasn1_modules}.tar.gz |
|
Source5: https://files.pythonhosted.org/packages/source/n/ndg-httpsclient/ndg_httpsclient-%{V_ndg_httpsclient}.tar.gz |
|
Source6: https://files.pythonhosted.org/packages/source/P/PyNaCl/PyNaCl-%{V_pynacl}.tar.gz |
|
Source7: https://files.pythonhosted.org/packages/source/l/libnacl/libnacl-%{V_libnacl}.tar.gz |
|
Source8: https://files.pythonhosted.org/packages/source/s/service_identity/service_identity-%{V_service_identity}.tar.gz |
|
Source9: https://files.pythonhosted.org/packages/source/a/asn1crypto/asn1crypto-%{V_asn1crypto}.tar.gz |
|
Source10: https://files.pythonhosted.org/packages/source/c/certifi/certifi-%{V_certifi}.tar.gz |
|
Source11: https://files.pythonhosted.org/packages/source/p/passlib/passlib-%{V_passlib}.tar.gz |
|
|
|
# build information |
|
BuildPreReq: OpenPKG, openpkg >= 20160101, python >= %{V_python} |
|
PreReq: OpenPKG, openpkg >= 20160101, python >= %{V_python} |
|
BuildPreReq: openssl, gmp, libsodium, python-sys, python-parse |
|
PreReq: openssl, gmp, libsodium, python-sys, python-parse |
|
%if "%{with_libnacl}" == "yes" |
|
BuildPreReq: python::with_ctypes = yes |
|
PreReq: python::with_ctypes = yes |
|
%endif |
|
|
|
%description |
|
This is a set of Python extension modules for cryptography. |
|
|
|
%track |
|
prog python-crypto:pycrypto = { |
|
version = %{V_pycrypto} |
|
url = https://pypi.python.org/pypi/pycrypto |
|
regex = pycrypto-(__VER__)\.tar\.gz |
|
} |
|
prog python-crypto:pyopenssl = { |
|
version = %{V_pyopenssl} |
|
url = https://pypi.python.org/pypi/pyOpenSSL/ |
|
regex = pyOpenSSL-(__VER__)\.tar\.gz |
|
} |
|
prog python-crypto:cryptography = { |
|
version = %{V_cryptography} |
|
url = https://pypi.python.org/pypi/cryptography/ |
|
regex = cryptography-(__VER__)\.tar\.gz |
|
} |
|
prog python-crypto:pyasn1 = { |
|
version = %{V_pyasn1} |
|
url = https://pypi.python.org/pypi/pyasn1/ |
|
regex = pyasn1-(__VER__)\.tar\.gz |
|
} |
|
prog python-crypto:pyasn1-modules = { |
|
version = %{V_pyasn1_modules} |
|
url = https://pypi.python.org/pypi/pyasn1-modules/ |
|
regex = pyasn1-modules-(__VER__)\.tar\.gz |
|
} |
|
prog python-crypto:ndg-httpsclient = { |
|
version = %{V_ndg_httpsclient} |
|
url = https://pypi.python.org/pypi/ndg-httpsclient/ |
|
regex = ndg_httpsclient-(__VER__)\.tar\.gz |
|
} |
|
prog python-crypto:PyNaCl = { |
|
version = %{V_pynacl} |
|
url = https://pypi.python.org/pypi/PyNaCl/ |
|
regex = PyNaCl-(__VER__)\.tar\.gz |
|
} |
|
prog python-crypto:libnacl = { |
|
version = %{V_libnacl} |
|
url = https://pypi.python.org/pypi/libnacl/ |
|
regex = libnacl-(__VER__)\.tar\.gz |
|
} |
|
prog python-crypto:service_identity = { |
|
version = %{V_service_identity} |
|
url = https://pypi.python.org/pypi/service_identity/ |
|
regex = service_identity-(__VER__)\.tar\.gz |
|
} |
|
prog python-crypto:asn1crypto = { |
|
version = %{V_asn1crypto} |
|
url = https://pypi.python.org/pypi/asn1crypto/ |
|
regex = asn1crypto-(__VER__)\.tar\.gz |
|
} |
|
prog python-crypto:certifi = { |
|
version = %{V_certifi} |
|
url = https://pypi.python.org/pypi/certifi/ |
|
regex = certifi-(__VER__)\.tar\.gz |
|
} |
|
prog python-crypto:passlib = { |
|
version = %{V_passlib} |
|
url = https://pypi.python.org/pypi/passlib/ |
|
regex = passlib-(__VER__)\.tar\.gz |
|
} |
|
|
|
%prep |
|
%setup -q -c |
|
%setup -q -T -D -a 1 |
|
%setup -q -T -D -a 2 |
|
%setup -q -T -D -a 3 |
|
%setup -q -T -D -a 4 |
|
%setup -q -T -D -a 5 |
|
%setup -q -T -D -a 6 |
|
%setup -q -T -D -a 7 |
|
%setup -q -T -D -a 8 |
|
%setup -q -T -D -a 9 |
|
%setup -q -T -D -a 10 |
|
%setup -q -T -D -a 11 |
|
|
|
%build |
|
|
|
%install |
|
export PYTHONPATH=$RPM_BUILD_ROOT%{l_prefix}/lib/python%{V_python}/site-packages |
|
( cd pycrypto-%{V_pycrypto} |
|
%{l_prefix}/bin/python setup.py build_ext \ |
|
%{l_cppflags openssl .} %{l_ldflags} |
|
%{l_prefix}/bin/python \ |
|
setup.py install \ |
|
--root=$RPM_BUILD_ROOT \ |
|
--prefix=%{l_prefix} |
|
) || exit $? |
|
( cd pyOpenSSL-%{V_pyopenssl} |
|
%{l_prefix}/bin/python setup.py build_ext \ |
|
%{l_cppflags openssl .} %{l_ldflags} |
|
%{l_prefix}/bin/python setup.py install \ |
|
--root=$RPM_BUILD_ROOT \ |
|
--prefix=%{l_prefix} |
|
) || exit $? |
|
( cd cryptography-%{V_cryptography} |
|
%{l_prefix}/bin/python setup.py build_ext \ |
|
%{l_cppflags openssl .} %{l_ldflags} |
|
%{l_prefix}/bin/python setup.py install \ |
|
--root=$RPM_BUILD_ROOT \ |
|
--prefix=%{l_prefix} |
|
) || exit $? |
|
( cd pyasn1-%{V_pyasn1} |
|
%{l_prefix}/bin/python setup.py install \ |
|
--root=$RPM_BUILD_ROOT \ |
|
--prefix=%{l_prefix} |
|
) || exit $? |
|
( cd pyasn1-modules-%{V_pyasn1_modules} |
|
%{l_prefix}/bin/python setup.py install \ |
|
--root=$RPM_BUILD_ROOT \ |
|
--prefix=%{l_prefix} |
|
) || exit $? |
|
( cd ndg_httpsclient-%{V_ndg_httpsclient} |
|
%{l_prefix}/bin/python setup.py install \ |
|
--root=$RPM_BUILD_ROOT \ |
|
--prefix=%{l_prefix} |
|
) || exit $? |
|
( cd PyNaCl-%{V_pynacl} |
|
SODIUM_INSTALL=system \ |
|
%{l_prefix}/bin/python setup.py build_ext \ |
|
%{l_cppflags} %{l_ldflags} |
|
SODIUM_INSTALL=system \ |
|
%{l_prefix}/bin/python setup.py install \ |
|
--root=$RPM_BUILD_ROOT \ |
|
--prefix=%{l_prefix} |
|
) || exit $? |
|
%if "%{with_libnacl}" == "yes" |
|
( cd libnacl-%{V_libnacl} |
|
SODIUM_INSTALL=system \ |
|
%{l_prefix}/bin/python setup.py build_ext \ |
|
%{l_cppflags} %{l_ldflags} |
|
SODIUM_INSTALL=system \ |
|
%{l_prefix}/bin/python setup.py install \ |
|
--root=$RPM_BUILD_ROOT \ |
|
--prefix=%{l_prefix} |
|
) || exit $? |
|
%endif |
|
( cd service_identity-%{V_service_identity} |
|
%{l_prefix}/bin/python setup.py install \ |
|
--root=$RPM_BUILD_ROOT \ |
|
--prefix=%{l_prefix} |
|
) || exit $? |
|
( cd asn1crypto-%{V_asn1crypto} |
|
%{l_prefix}/bin/python setup.py install \ |
|
--root=$RPM_BUILD_ROOT \ |
|
--prefix=%{l_prefix} |
|
) || exit $? |
|
( cd certifi-%{V_certifi} |
|
%{l_prefix}/bin/python setup.py install \ |
|
--root=$RPM_BUILD_ROOT \ |
|
--prefix=%{l_prefix} |
|
) || exit $? |
|
( cd passlib-%{V_passlib} |
|
%{l_prefix}/bin/python setup.py install \ |
|
--root=$RPM_BUILD_ROOT \ |
|
--prefix=%{l_prefix} |
|
) || exit $? |
|
%{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std} |
|
|
|
%files -f files |
|
|
|
%clean |
|
|
|
|