%global _empty_manifest_terminate_build 0 Name: python-awscrt Version: 0.16.15 Release: 1 Summary: A common runtime for AWS Python projects License: Apache 2.0 URL: https://github.com/awslabs/aws-crt-python Source0: https://mirrors.nju.edu.cn/pypi/web/packages/cc/a0/ef5ab2a0d1a71be71e2decf2d9f762ccf54ab5d3b277e7250f8bd8ed3f34/awscrt-0.16.15.tar.gz %description ## AWS CRT Python [![Version](https://img.shields.io/pypi/v/awscrt.svg?style=flat)](https://pypi.org/project/awscrt/) Python 3 bindings for the AWS Common Runtime. * [API documentation](https://awslabs.github.io/aws-crt-python) * [Development guide](guides/dev/README.md) for contributors to aws-crt-python's source code. ## License This library is licensed under the Apache 2.0 License. ## Minimum Requirements: * Python 3.7+ ## Installation To install from pip: ```bash python3 -m pip install awscrt ``` To install from Github: ```bash git clone https://github.com/awslabs/aws-crt-python.git cd aws-crt-python git submodule update --init python3 -m pip install . ``` To use from your Python application, declare `awscrt` as a dependency in your `setup.py` file. ### OpenSSL and LibCrypto (Unix only) aws-crt-python does not use OpenSSL for TLS. On Apple and Windows devices, the OS's default TLS library is used. On Unix devices, [s2n-tls](https://github.com/aws/s2n-tls) is used. But s2n-tls uses libcrypto, the cryptography math library bundled with OpenSSL. To simplify installation, aws-crt-python has its own copy of libcrypto. This lets you install a wheel from PyPI without having OpenSSL installed. Unix wheels on PyPI come with libcrypto statically compiled in. Code to build libcrypto comes from [AWS-LC](https://github.com/aws/aws-lc). AWS-LC's code is included in the PyPI source package, and the git repository includes it as a submodule. If you need aws-crt-python to use the libcrypto included on your system, set environment variable `AWS_CRT_BUILD_USE_SYSTEM_LIBCRYPTO=1` while building from source: ```sh AWS_CRT_BUILD_USE_SYSTEM_LIBCRYPTO=1 python3 -m pip install --no-binary :all: --verbose awscrt ``` ( `--no-binary :all:` ensures you do not use the precompiled wheel from PyPI) You can ignore all this on Windows and Apple platforms, where aws-crt-python uses the OS's default libraries for TLS and cryptography math. ## Mac-Only TLS Behavior Please note that on Mac, once a private key is used with a certificate, that certificate-key pair is imported into the Mac Keychain. All subsequent uses of that certificate will use the stored private key and ignore anything passed in programmatically. Beginning in v0.6.2, when a stored private key from the Keychain is used, the following will be logged at the "info" log level: ``` static: certificate has an existing certificate-key pair that was previously imported into the Keychain. Using key from Keychain instead of the one provided. ``` %package -n python3-awscrt Summary: A common runtime for AWS Python projects Provides: python-awscrt BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip BuildRequires: python3-cffi BuildRequires: gcc BuildRequires: gdb %description -n python3-awscrt ## AWS CRT Python [![Version](https://img.shields.io/pypi/v/awscrt.svg?style=flat)](https://pypi.org/project/awscrt/) Python 3 bindings for the AWS Common Runtime. * [API documentation](https://awslabs.github.io/aws-crt-python) * [Development guide](guides/dev/README.md) for contributors to aws-crt-python's source code. ## License This library is licensed under the Apache 2.0 License. ## Minimum Requirements: * Python 3.7+ ## Installation To install from pip: ```bash python3 -m pip install awscrt ``` To install from Github: ```bash git clone https://github.com/awslabs/aws-crt-python.git cd aws-crt-python git submodule update --init python3 -m pip install . ``` To use from your Python application, declare `awscrt` as a dependency in your `setup.py` file. ### OpenSSL and LibCrypto (Unix only) aws-crt-python does not use OpenSSL for TLS. On Apple and Windows devices, the OS's default TLS library is used. On Unix devices, [s2n-tls](https://github.com/aws/s2n-tls) is used. But s2n-tls uses libcrypto, the cryptography math library bundled with OpenSSL. To simplify installation, aws-crt-python has its own copy of libcrypto. This lets you install a wheel from PyPI without having OpenSSL installed. Unix wheels on PyPI come with libcrypto statically compiled in. Code to build libcrypto comes from [AWS-LC](https://github.com/aws/aws-lc). AWS-LC's code is included in the PyPI source package, and the git repository includes it as a submodule. If you need aws-crt-python to use the libcrypto included on your system, set environment variable `AWS_CRT_BUILD_USE_SYSTEM_LIBCRYPTO=1` while building from source: ```sh AWS_CRT_BUILD_USE_SYSTEM_LIBCRYPTO=1 python3 -m pip install --no-binary :all: --verbose awscrt ``` ( `--no-binary :all:` ensures you do not use the precompiled wheel from PyPI) You can ignore all this on Windows and Apple platforms, where aws-crt-python uses the OS's default libraries for TLS and cryptography math. ## Mac-Only TLS Behavior Please note that on Mac, once a private key is used with a certificate, that certificate-key pair is imported into the Mac Keychain. All subsequent uses of that certificate will use the stored private key and ignore anything passed in programmatically. Beginning in v0.6.2, when a stored private key from the Keychain is used, the following will be logged at the "info" log level: ``` static: certificate has an existing certificate-key pair that was previously imported into the Keychain. Using key from Keychain instead of the one provided. ``` %package help Summary: Development documents and examples for awscrt Provides: python3-awscrt-doc %description help ## AWS CRT Python [![Version](https://img.shields.io/pypi/v/awscrt.svg?style=flat)](https://pypi.org/project/awscrt/) Python 3 bindings for the AWS Common Runtime. * [API documentation](https://awslabs.github.io/aws-crt-python) * [Development guide](guides/dev/README.md) for contributors to aws-crt-python's source code. ## License This library is licensed under the Apache 2.0 License. ## Minimum Requirements: * Python 3.7+ ## Installation To install from pip: ```bash python3 -m pip install awscrt ``` To install from Github: ```bash git clone https://github.com/awslabs/aws-crt-python.git cd aws-crt-python git submodule update --init python3 -m pip install . ``` To use from your Python application, declare `awscrt` as a dependency in your `setup.py` file. ### OpenSSL and LibCrypto (Unix only) aws-crt-python does not use OpenSSL for TLS. On Apple and Windows devices, the OS's default TLS library is used. On Unix devices, [s2n-tls](https://github.com/aws/s2n-tls) is used. But s2n-tls uses libcrypto, the cryptography math library bundled with OpenSSL. To simplify installation, aws-crt-python has its own copy of libcrypto. This lets you install a wheel from PyPI without having OpenSSL installed. Unix wheels on PyPI come with libcrypto statically compiled in. Code to build libcrypto comes from [AWS-LC](https://github.com/aws/aws-lc). AWS-LC's code is included in the PyPI source package, and the git repository includes it as a submodule. If you need aws-crt-python to use the libcrypto included on your system, set environment variable `AWS_CRT_BUILD_USE_SYSTEM_LIBCRYPTO=1` while building from source: ```sh AWS_CRT_BUILD_USE_SYSTEM_LIBCRYPTO=1 python3 -m pip install --no-binary :all: --verbose awscrt ``` ( `--no-binary :all:` ensures you do not use the precompiled wheel from PyPI) You can ignore all this on Windows and Apple platforms, where aws-crt-python uses the OS's default libraries for TLS and cryptography math. ## Mac-Only TLS Behavior Please note that on Mac, once a private key is used with a certificate, that certificate-key pair is imported into the Mac Keychain. All subsequent uses of that certificate will use the stored private key and ignore anything passed in programmatically. Beginning in v0.6.2, when a stored private key from the Keychain is used, the following will be logged at the "info" log level: ``` static: certificate has an existing certificate-key pair that was previously imported into the Keychain. Using key from Keychain instead of the one provided. ``` %prep %autosetup -n awscrt-0.16.15 %build %py3_build %install %py3_install install -d -m755 %{buildroot}/%{_pkgdocdir} if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi pushd %{buildroot} if [ -d usr/lib ]; then find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/lib64 ]; then find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/bin ]; then find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/sbin ]; then find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst fi touch doclist.lst if [ -d usr/share/man ]; then find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst fi popd mv %{buildroot}/filelist.lst . mv %{buildroot}/doclist.lst . %files -n python3-awscrt -f filelist.lst %dir %{python3_sitearch}/* %files help -f doclist.lst %{_docdir}/* %changelog * Fri Apr 21 2023 Python_Bot - 0.16.15-1 - Package Spec generated