summaryrefslogtreecommitdiff
path: root/dev-python/setuptools_rust/setuptools_rust-0.12.1.ebuild
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python/setuptools_rust/setuptools_rust-0.12.1.ebuild')
-rw-r--r--dev-python/setuptools_rust/setuptools_rust-0.12.1.ebuild170
1 files changed, 170 insertions, 0 deletions
diff --git a/dev-python/setuptools_rust/setuptools_rust-0.12.1.ebuild b/dev-python/setuptools_rust/setuptools_rust-0.12.1.ebuild
new file mode 100644
index 000000000000..3be9c6d55400
--- /dev/null
+++ b/dev-python/setuptools_rust/setuptools_rust-0.12.1.ebuild
@@ -0,0 +1,170 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CARGO_OPTIONAL=yes
+DISTUTILS_IN_SOURCE_BUILD=1
+DISTUTILS_USE_SETUPTOOLS=rdepend
+PYTHON_COMPAT=( python3_{7..10} )
+
+inherit distutils-r1 cargo
+
+CRATES="
+bitflags-1.2.1
+byteorder-1.3.4
+cfg-if-0.1.10
+cloudabi-0.1.0
+cssparser-0.27.2
+cssparser-macros-0.6.0
+ctor-0.1.15
+derive_more-0.99.10
+dtoa-0.4.6
+dtoa-short-0.3.2
+futf-0.1.4
+fxhash-0.2.1
+getrandom-0.1.15
+ghost-0.1.2
+html5ever-0.25.1
+indoc-0.3.6
+indoc-impl-0.3.6
+instant-0.1.6
+inventory-0.1.9
+inventory-impl-0.1.9
+itoa-0.4.6
+kuchiki-0.8.1
+lazy_static-1.4.0
+libc-0.2.77
+lock_api-0.4.1
+log-0.4.11
+mac-0.1.1
+markup5ever-0.10.0
+matches-0.1.8
+new_debug_unreachable-1.0.4
+nodrop-0.1.14
+parking_lot-0.11.0
+parking_lot_core-0.8.0
+paste-0.1.18
+paste-impl-0.1.18
+phf-0.8.0
+phf_codegen-0.8.0
+phf_generator-0.8.0
+phf_macros-0.8.0
+phf_shared-0.8.0
+ppv-lite86-0.2.9
+precomputed-hash-0.1.1
+proc-macro-hack-0.5.18
+proc-macro2-1.0.21
+pyo3-0.12.1
+pyo3-derive-backend-0.12.1
+pyo3cls-0.12.1
+quote-1.0.7
+rand-0.7.3
+rand_chacha-0.2.2
+rand_core-0.5.1
+rand_hc-0.2.0
+rand_pcg-0.2.1
+redox_syscall-0.1.57
+ryu-1.0.5
+scopeguard-1.1.0
+selectors-0.22.0
+serde-1.0.116
+serde_derive-1.0.116
+serde_json-1.0.57
+servo_arc-0.1.1
+siphasher-0.3.3
+smallvec-1.4.2
+stable_deref_trait-1.2.0
+string_cache-0.8.0
+string_cache_codegen-0.5.1
+syn-1.0.41
+tendril-0.4.1
+thin-slice-0.1.1
+unicode-xid-0.2.1
+unindent-0.1.6
+utf-8-0.7.5
+wasi-0.9.0+wasi-snapshot-preview1
+winapi-0.3.9
+winapi-i686-pc-windows-gnu-0.4.0
+winapi-x86_64-pc-windows-gnu-0.4.0
+"
+
+MY_PN="${PN/_/-}"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="a plugin for setuptools to build Rust Python extensions"
+HOMEPAGE="https://github.com/PyO3/setuptools-rust"
+SRC_URI="mirror://pypi/${PN::1}/${MY_PN}/${MY_P}.tar.gz
+ test? ( $(cargo_crate_uris ${CRATES}) )"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc64"
+IUSE="test"
+
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ virtual/rust
+ dev-python/semantic_version[${PYTHON_USEDEP}]
+ dev-python/toml[${PYTHON_USEDEP}]
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/setuptools_scm[${PYTHON_USEDEP}]
+ test? (
+ ${RDEPEND}
+ dev-python/pytest[${PYTHON_USEDEP}]
+ dev-python/beautifulsoup:4[${PYTHON_USEDEP}]
+ dev-python/lxml[${PYTHON_USEDEP}]
+ )
+"
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}/${MY_P}"
+
+src_unpack() {
+ cargo_src_unpack
+}
+
+python_test() {
+ # we really really want this test.
+ [[ ${PV} == 0.12.1 ]] || die "${FUNCNAME}: check if rust_with_cffi test can be enabled"
+
+ distutils_install_for_testing
+
+ # rust_with_cffi - needs a git version of pyo3 for this version
+ # but next version should be ok to enable rust_with_cffi test
+ # https://github.com/PyO3/setuptools-rust/commit/21fc0105dc7ba9b3bfdce1530a80190c01dff560#diff-a3f14f562689def4c1df269f3e37bafcf6036a58798d825b8a58438cb479600e
+ local examples=(html-py-ever tomlgen namespace_package)
+ for example_dir in ${examples[@]}; do
+ pushd examples/${example_dir} || die
+
+ einfo "Running ${example_dir} test"
+
+ case ${example_dir} in
+ tomlgen)
+ # tomlgen tests toml generation
+ esetup.py tomlgen_rust
+ ;;
+ html-py-ever)
+ esetup.py build
+
+ pushd test || die
+ ${EPYTHON} run_all.py || die "Tests failed with ${EPYTHON}"
+ popd || die
+ ;;
+ *)
+ esetup.py build
+ epytest
+ ;;
+ esac
+
+ popd || die
+
+ if [ ${example_dir} != "tomlgen" ]; then
+ # clean up the built example
+ rm -r build/lib/${example_dir//-/_} || die
+ fi
+ done
+}