summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-04-10 10:34:37 +0000
committerCoprDistGit <infra@openeuler.org>2023-04-10 10:34:37 +0000
commita473d86313b28f91f8c8dbc1c3021506b1d068be (patch)
tree36fc9a789bc32a6f111b5ef56e1f5ddc01b15cc0
parentd3c234792944a1354f4a6920ae58f01da4056746 (diff)
automatic import of python-setuptools-rust
-rw-r--r--.gitignore1
-rw-r--r--python-setuptools-rust.spec351
-rw-r--r--sources1
3 files changed, 353 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..6d2325f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/setuptools-rust-1.5.2.tar.gz
diff --git a/python-setuptools-rust.spec b/python-setuptools-rust.spec
new file mode 100644
index 0000000..5ffbe10
--- /dev/null
+++ b/python-setuptools-rust.spec
@@ -0,0 +1,351 @@
+%global _empty_manifest_terminate_build 0
+Name: python-setuptools-rust
+Version: 1.5.2
+Release: 1
+Summary: Setuptools Rust extension plugin
+License: MIT
+URL: https://github.com/PyO3/setuptools-rust
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/99/db/e4ecb483ffa194d632ed44bda32cb740e564789fed7e56c2be8e2a0e2aa6/setuptools-rust-1.5.2.tar.gz
+BuildArch: noarch
+
+Requires: python3-setuptools
+Requires: python3-semantic-version
+Requires: python3-typing-extensions
+
+%description
+# Setuptools plugin for Rust extensions
+
+[![github actions](https://github.com/PyO3/setuptools-rust/actions/workflows/ci.yml/badge.svg)](https://github.com/PyO3/setuptools-rust/actions/workflows/ci.yml)
+[![pypi package](https://badge.fury.io/py/setuptools-rust.svg)](https://pypi.org/project/setuptools-rust/)
+[![readthedocs](https://readthedocs.org/projects/pip/badge/)](https://setuptools-rust.readthedocs.io/en/latest/)
+[![code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/ambv/black)
+
+`setuptools-rust` is a plugin for `setuptools` to build Rust Python extensions implemented with [PyO3](https://github.com/PyO3/pyo3) or [rust-cpython](https://github.com/dgrunwald/rust-cpython).
+
+Compile and distribute Python extensions written in Rust as easily as if
+they were written in C.
+
+## Setup
+
+For a complete example, see
+[html-py-ever](https://github.com/PyO3/setuptools-rust/tree/main/examples/html-py-ever).
+
+First, you need to create a bunch of files:
+
+### setup.py
+
+```python
+from setuptools import setup
+from setuptools_rust import Binding, RustExtension
+
+setup(
+ name="hello-rust",
+ version="1.0",
+ rust_extensions=[RustExtension("hello_rust.hello_rust", binding=Binding.PyO3)],
+ packages=["hello_rust"],
+ # rust extensions are not zip safe, just like C-extensions.
+ zip_safe=False,
+)
+```
+
+For a complete reference of the options supported by the `RustExtension` class, see the
+[API reference](https://setuptools-rust.readthedocs.io/en/latest/reference.html).
+
+### pyproject.toml
+
+```toml
+[build-system]
+requires = ["setuptools", "wheel", "setuptools-rust"]
+```
+
+### MANIFEST.in
+
+This file is required for building source distributions
+
+```text
+include Cargo.toml
+recursive-include src *
+```
+
+## Usage
+
+You can use same commands as for c-extensions. For example:
+
+```
+>>> python ./setup.py develop
+running develop
+running egg_info
+writing hello-rust.egg-info/PKG-INFO
+writing top-level names to hello_rust.egg-info/top_level.txt
+writing dependency_links to hello_rust.egg-info/dependency_links.txt
+reading manifest file 'hello_rust.egg-info/SOURCES.txt'
+writing manifest file 'hello_rust.egg-info/SOURCES.txt'
+running build_ext
+running build_rust
+cargo build --manifest-path extensions/Cargo.toml --features python3
+ Finished debug [unoptimized + debuginfo] target(s) in 0.0 secs
+
+Creating /.../lib/python3.6/site-packages/hello_rust.egg-link (link to .)
+
+Installed hello_rust
+Processing dependencies for hello_rust==1.0
+Finished processing dependencies for hello_rust==1.0
+```
+
+Or you can use commands like `bdist_wheel` (after installing `wheel`). See also [the notes in the documentation about building wheels](https://setuptools-rust.readthedocs.io/en/latest/building_wheels.html).
+
+Cross-compiling is also supported, using one of [`crossenv`](https://github.com/benfogle/crossenv), [`cross`](https://github.com/rust-embedded/cross) or [`cargo-zigbuild`](https://github.com/messense/cargo-zigbuild).
+For examples see the `test-crossenv` and `test-cross` and `test-zigbuild` Github actions jobs in [`ci.yml`](https://github.com/PyO3/setuptools-rust/blob/main/.github/workflows/ci.yml).
+
+By default, `develop` will create a debug build, while `install` will create a release build.
+
+## Commands
+
+ - `build` - Standard build command will also build all rust extensions.
+ - `build_rust` - Command builds all rust extensions.
+ - `clean` - Standard clean command executes cargo clean for all rust
+ extensions.
+
+
+%package -n python3-setuptools-rust
+Summary: Setuptools Rust extension plugin
+Provides: python-setuptools-rust
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-setuptools-rust
+# Setuptools plugin for Rust extensions
+
+[![github actions](https://github.com/PyO3/setuptools-rust/actions/workflows/ci.yml/badge.svg)](https://github.com/PyO3/setuptools-rust/actions/workflows/ci.yml)
+[![pypi package](https://badge.fury.io/py/setuptools-rust.svg)](https://pypi.org/project/setuptools-rust/)
+[![readthedocs](https://readthedocs.org/projects/pip/badge/)](https://setuptools-rust.readthedocs.io/en/latest/)
+[![code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/ambv/black)
+
+`setuptools-rust` is a plugin for `setuptools` to build Rust Python extensions implemented with [PyO3](https://github.com/PyO3/pyo3) or [rust-cpython](https://github.com/dgrunwald/rust-cpython).
+
+Compile and distribute Python extensions written in Rust as easily as if
+they were written in C.
+
+## Setup
+
+For a complete example, see
+[html-py-ever](https://github.com/PyO3/setuptools-rust/tree/main/examples/html-py-ever).
+
+First, you need to create a bunch of files:
+
+### setup.py
+
+```python
+from setuptools import setup
+from setuptools_rust import Binding, RustExtension
+
+setup(
+ name="hello-rust",
+ version="1.0",
+ rust_extensions=[RustExtension("hello_rust.hello_rust", binding=Binding.PyO3)],
+ packages=["hello_rust"],
+ # rust extensions are not zip safe, just like C-extensions.
+ zip_safe=False,
+)
+```
+
+For a complete reference of the options supported by the `RustExtension` class, see the
+[API reference](https://setuptools-rust.readthedocs.io/en/latest/reference.html).
+
+### pyproject.toml
+
+```toml
+[build-system]
+requires = ["setuptools", "wheel", "setuptools-rust"]
+```
+
+### MANIFEST.in
+
+This file is required for building source distributions
+
+```text
+include Cargo.toml
+recursive-include src *
+```
+
+## Usage
+
+You can use same commands as for c-extensions. For example:
+
+```
+>>> python ./setup.py develop
+running develop
+running egg_info
+writing hello-rust.egg-info/PKG-INFO
+writing top-level names to hello_rust.egg-info/top_level.txt
+writing dependency_links to hello_rust.egg-info/dependency_links.txt
+reading manifest file 'hello_rust.egg-info/SOURCES.txt'
+writing manifest file 'hello_rust.egg-info/SOURCES.txt'
+running build_ext
+running build_rust
+cargo build --manifest-path extensions/Cargo.toml --features python3
+ Finished debug [unoptimized + debuginfo] target(s) in 0.0 secs
+
+Creating /.../lib/python3.6/site-packages/hello_rust.egg-link (link to .)
+
+Installed hello_rust
+Processing dependencies for hello_rust==1.0
+Finished processing dependencies for hello_rust==1.0
+```
+
+Or you can use commands like `bdist_wheel` (after installing `wheel`). See also [the notes in the documentation about building wheels](https://setuptools-rust.readthedocs.io/en/latest/building_wheels.html).
+
+Cross-compiling is also supported, using one of [`crossenv`](https://github.com/benfogle/crossenv), [`cross`](https://github.com/rust-embedded/cross) or [`cargo-zigbuild`](https://github.com/messense/cargo-zigbuild).
+For examples see the `test-crossenv` and `test-cross` and `test-zigbuild` Github actions jobs in [`ci.yml`](https://github.com/PyO3/setuptools-rust/blob/main/.github/workflows/ci.yml).
+
+By default, `develop` will create a debug build, while `install` will create a release build.
+
+## Commands
+
+ - `build` - Standard build command will also build all rust extensions.
+ - `build_rust` - Command builds all rust extensions.
+ - `clean` - Standard clean command executes cargo clean for all rust
+ extensions.
+
+
+%package help
+Summary: Development documents and examples for setuptools-rust
+Provides: python3-setuptools-rust-doc
+%description help
+# Setuptools plugin for Rust extensions
+
+[![github actions](https://github.com/PyO3/setuptools-rust/actions/workflows/ci.yml/badge.svg)](https://github.com/PyO3/setuptools-rust/actions/workflows/ci.yml)
+[![pypi package](https://badge.fury.io/py/setuptools-rust.svg)](https://pypi.org/project/setuptools-rust/)
+[![readthedocs](https://readthedocs.org/projects/pip/badge/)](https://setuptools-rust.readthedocs.io/en/latest/)
+[![code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/ambv/black)
+
+`setuptools-rust` is a plugin for `setuptools` to build Rust Python extensions implemented with [PyO3](https://github.com/PyO3/pyo3) or [rust-cpython](https://github.com/dgrunwald/rust-cpython).
+
+Compile and distribute Python extensions written in Rust as easily as if
+they were written in C.
+
+## Setup
+
+For a complete example, see
+[html-py-ever](https://github.com/PyO3/setuptools-rust/tree/main/examples/html-py-ever).
+
+First, you need to create a bunch of files:
+
+### setup.py
+
+```python
+from setuptools import setup
+from setuptools_rust import Binding, RustExtension
+
+setup(
+ name="hello-rust",
+ version="1.0",
+ rust_extensions=[RustExtension("hello_rust.hello_rust", binding=Binding.PyO3)],
+ packages=["hello_rust"],
+ # rust extensions are not zip safe, just like C-extensions.
+ zip_safe=False,
+)
+```
+
+For a complete reference of the options supported by the `RustExtension` class, see the
+[API reference](https://setuptools-rust.readthedocs.io/en/latest/reference.html).
+
+### pyproject.toml
+
+```toml
+[build-system]
+requires = ["setuptools", "wheel", "setuptools-rust"]
+```
+
+### MANIFEST.in
+
+This file is required for building source distributions
+
+```text
+include Cargo.toml
+recursive-include src *
+```
+
+## Usage
+
+You can use same commands as for c-extensions. For example:
+
+```
+>>> python ./setup.py develop
+running develop
+running egg_info
+writing hello-rust.egg-info/PKG-INFO
+writing top-level names to hello_rust.egg-info/top_level.txt
+writing dependency_links to hello_rust.egg-info/dependency_links.txt
+reading manifest file 'hello_rust.egg-info/SOURCES.txt'
+writing manifest file 'hello_rust.egg-info/SOURCES.txt'
+running build_ext
+running build_rust
+cargo build --manifest-path extensions/Cargo.toml --features python3
+ Finished debug [unoptimized + debuginfo] target(s) in 0.0 secs
+
+Creating /.../lib/python3.6/site-packages/hello_rust.egg-link (link to .)
+
+Installed hello_rust
+Processing dependencies for hello_rust==1.0
+Finished processing dependencies for hello_rust==1.0
+```
+
+Or you can use commands like `bdist_wheel` (after installing `wheel`). See also [the notes in the documentation about building wheels](https://setuptools-rust.readthedocs.io/en/latest/building_wheels.html).
+
+Cross-compiling is also supported, using one of [`crossenv`](https://github.com/benfogle/crossenv), [`cross`](https://github.com/rust-embedded/cross) or [`cargo-zigbuild`](https://github.com/messense/cargo-zigbuild).
+For examples see the `test-crossenv` and `test-cross` and `test-zigbuild` Github actions jobs in [`ci.yml`](https://github.com/PyO3/setuptools-rust/blob/main/.github/workflows/ci.yml).
+
+By default, `develop` will create a debug build, while `install` will create a release build.
+
+## Commands
+
+ - `build` - Standard build command will also build all rust extensions.
+ - `build_rust` - Command builds all rust extensions.
+ - `clean` - Standard clean command executes cargo clean for all rust
+ extensions.
+
+
+%prep
+%autosetup -n setuptools-rust-1.5.2
+
+%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-setuptools-rust -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Mon Apr 10 2023 Python_Bot <Python_Bot@openeuler.org> - 1.5.2-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..bd8b34f
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+fd3412ca77ffd6e06e2e83d0e9636084 setuptools-rust-1.5.2.tar.gz