commit: 9e3f22ce1a2e0bb6176b22ee18f088b712c1bc7e
Author: Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Tue May 23 14:19:27 2023 +0000
Commit: Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Tue May 23 14:34:31 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9e3f22ce
dev-util/maturin: add 1.0.0
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>
dev-util/maturin/Manifest | 1 +
dev-util/maturin/maturin-1.0.0.ebuild | 476 ++++++++++++++++++++++++++++++++++
2 files changed, 477 insertions(+)
diff --git a/dev-util/maturin/Manifest b/dev-util/maturin/Manifest
index f3c18f24d5ec..356b526d7f11 100644
--- a/dev-util/maturin/Manifest
+++ b/dev-util/maturin/Manifest
@@ -202,6 +202,7 @@ DIST maturin-0.14.17.gh.tar.gz 392461 BLAKE2B
4d0d2d5101a05017883b27dca270c3f3b8
DIST maturin-0.15.1.gh.tar.gz 425107 BLAKE2B
2a1b50080033618c062ec2013779465a1eb11cbd5b2f8800cbd8b46b9c75709cbe0cdbeb3fe0d5f7564e10e3d27e6439e9e2caea6bf7a0049f5474353c1ba53c
SHA512
e298abb3cbfeae266c5f7c4bc8e57154527a5d040bf0276afe6e63e6d56978101ef399ab4883e7a5826d5eaa31f03019130200ca519b08d4e3bb0a12bee8eb77
DIST maturin-0.15.2.gh.tar.gz 425933 BLAKE2B
8efd8bd1a4580dcccec5261031333af07818107808df4d6e86281d23e76303d9692406c4648e980d3550498a1c4524cce3ececdfbe9a737e8283cfb6e070face
SHA512
360965fe33d67fb0c75310b9dee357ccbdc71dffda92778a23d2044312728a38869579e3703ed357bc14869f06d482c550c6daaa2f8b5c403de39e82987397a9
DIST maturin-0.15.3.gh.tar.gz 427294 BLAKE2B
61dda09204420eafed248544364eef4af0af13820e9d3ac1713399dd09fb59312c87ef17efcb5933d717d89a9d70b6fc8bad3bf8db2f31c5784643d4006c18fb
SHA512
a23ffda02afad59a11ce81ee62fcd455be7d410b922fac9af36a8eb355d86a8de58a1e13608f535c4312e5bed22869f48ccc811a3a8921293dee3e7d54e77906
+DIST maturin-1.0.0.gh.tar.gz 427098 BLAKE2B
246abc31bd5f9d52a6ec76e631e14dce5574ee578a79ab400514c4bd6cd3c1df3709b9da3484680a88580310d28542fbefad3b0e6e6a998c648c077f8f3d5ad1
SHA512
69af5162134c6b0601b7bab3f6198085633e616960edcbf2792a77a6af756da9d9237e49c8a190cd68c7694f0c63fa4d80d661c1bf3786c261edbac0f80cafcf
DIST memchr-2.5.0.crate 65812 BLAKE2B
57966413a1f933dcb2d2d4ccb29c247070f65a83299b2a9f5aa83f5a48a5c5f1c4c7c632fa63bd19f9508e9291e7258db2f16e2813a56fd84e0856f70f1e67ab
SHA512
444a163b484c233e78c0e2e4d51f01ce2da93d7d29f516a95e4b0866b20bdfd3f34137653abed53eb70387991ee3e2b5937d8d4360a85bbcb50a93005a75defa
DIST memoffset-0.6.5.crate 7686 BLAKE2B
9a797388702389076c426052c3d54dc62802d5db8bc5c9c83990429f2ffaec4fab4c7dd3f09cd0704d1ea555e87976563bb43408ba54b5e66ce7e406d4604009
SHA512
11bdd9185b99dfee8e659e051b09ee301c7142a372a8117864745a5085c015436d2efbb1478192886f09cbc562529e209d2e3325d94938a64bc75b1d91d2bf3f
DIST memoffset-0.8.0.crate 8912 BLAKE2B
19ad3abed21fc39461b0382b15a8cc312378aba36f042b1e5335012115d31b350a4e3bc720f1eea300d7d19b9b317f75a28d4ccd78ff3b31defd9e4b3147899c
SHA512
47adcae0848ff967035e10543ea599c7af9c5bad387023eb4dc77c9e8d875994ec8139b9941b3ecc4fc17214d80944a47a3be174a45b334661914a5a7382dfbe
diff --git a/dev-util/maturin/maturin-1.0.0.ebuild
b/dev-util/maturin/maturin-1.0.0.ebuild
new file mode 100644
index 000000000000..ec18beb0cdc1
--- /dev/null
+++ b/dev-util/maturin/maturin-1.0.0.ebuild
@@ -0,0 +1,476 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES="
+ adler-1.0.2
+ ahash-0.7.6
+ aho-corasick-0.7.20
+ anyhow-1.0.71
+ autocfg-1.1.0
+ base64-0.13.1
+ base64-0.21.0
+ bitflags-1.3.2
+ block-buffer-0.10.4
+ bstr-1.4.0
+ bumpalo-3.12.2
+ byteorder-1.4.3
+ bytes-1.4.0
+ bytesize-1.2.0
+ bzip2-0.4.4
+ bzip2-sys-0.1.11+1.0.8
+ cab-0.4.1
+ camino-1.1.4
+ cargo-config2-0.1.7
+ cargo-options-0.6.0
+ cargo-platform-0.1.2
+ cargo-xwin-0.14.2
+ cargo-zigbuild-0.16.9
+ cargo_metadata-0.15.4
+ cbindgen-0.24.3
+ cc-1.0.79
+ cfb-0.7.3
+ cfg-expr-0.15.1
+ cfg-if-1.0.0
+ charset-0.1.3
+ chumsky-0.9.2
+ clap-4.1.14
+ clap_builder-4.1.14
+ clap_complete-4.2.3
+ clap_complete_command-0.5.1
+ clap_complete_fig-4.2.0
+ clap_complete_nushell-0.1.10
+ clap_derive-4.1.14
+ clap_lex-0.4.1
+ cli-table-0.4.7
+ concolor-0.0.11
+ concolor-query-0.1.0
+ configparser-3.0.2
+ console-0.15.5
+ content_inspector-0.2.4
+ core-foundation-0.9.3
+ core-foundation-sys-0.8.4
+ cpufeatures-0.2.7
+ crc32fast-1.3.2
+ crossbeam-channel-0.5.8
+ crossbeam-deque-0.8.3
+ crossbeam-epoch-0.9.14
+ crossbeam-utils-0.8.15
+ crypto-common-0.1.6
+ ctor-0.1.26
+ data-encoding-2.3.3
+ dialoguer-0.10.4
+ diff-0.1.13
+ digest-0.10.6
+ dirs-4.0.0
+ dirs-sys-0.3.7
+ dunce-1.0.4
+ either-1.8.1
+ encode_unicode-0.3.6
+ encoding_rs-0.8.32
+ errno-0.2.8
+ errno-dragonfly-0.1.2
+ fastrand-1.9.0
+ fat-macho-0.4.6
+ filetime-0.2.19
+ flate2-1.0.26
+ fnv-1.0.7
+ foreign-types-0.3.2
+ foreign-types-shared-0.1.1
+ form_urlencoded-1.1.0
+ fs-err-2.9.0
+ generic-array-0.14.7
+ getrandom-0.2.9
+ glob-0.3.1
+ globset-0.4.10
+ goblin-0.6.1
+ hashbrown-0.12.3
+ heck-0.4.1
+ hermit-abi-0.2.6
+ home-0.5.4
+ humantime-2.1.0
+ humantime-serde-1.1.1
+ idna-0.3.0
+ ignore-0.4.20
+ indexmap-1.9.3
+ indicatif-0.17.3
+ indoc-2.0.1
+ instant-0.1.12
+ io-lifetimes-1.0.4
+ is-terminal-0.4.2
+ itertools-0.10.5
+ itoa-1.0.6
+ js-sys-0.3.63
+ keyring-2.0.2
+ lazy_static-1.4.0
+ lddtree-0.3.2
+ libc-0.2.144
+ linux-keyutils-0.2.3
+ linux-raw-sys-0.1.4
+ lock_api-0.4.9
+ log-0.4.17
+ lzxd-0.1.4
+ mailparse-0.13.8
+ matchers-0.1.0
+ memchr-2.5.0
+ memoffset-0.8.0
+ mime-0.3.17
+ mime_guess-2.0.4
+ minijinja-0.32.1
+ minimal-lexical-0.2.1
+ miniz_oxide-0.7.1
+ msi-0.5.1
+ multipart-0.18.0
+ native-tls-0.2.11
+ nom-7.1.3
+ normalize-line-endings-0.3.0
+ normpath-1.0.1
+ nu-ansi-term-0.46.0
+ num_cpus-1.15.0
+ number_prefix-0.4.0
+ once_cell-1.17.1
+ openssl-0.10.52
+ openssl-macros-0.1.1
+ openssl-probe-0.1.5
+ openssl-src-111.25.2+1.1.1t
+ openssl-sys-0.9.87
+ os_pipe-1.1.2
+ output_vt100-0.1.3
+ overload-0.1.1
+ parking_lot-0.12.1
+ parking_lot_core-0.9.6
+ path-slash-0.2.1
+ pep440_rs-0.3.6
+ pep508_rs-0.1.5
+ percent-encoding-2.2.0
+ pin-project-lite-0.2.9
+ pkg-config-0.3.27
+ plain-0.2.3
+ platform-info-1.0.2
+ portable-atomic-0.3.19
+ ppv-lite86-0.2.17
+ pretty_assertions-1.3.0
+ proc-macro2-1.0.58
+ psm-0.1.21
+ pyproject-toml-0.6.0
+ python-pkginfo-0.5.5
+ quote-1.0.27
+ quoted_printable-0.4.8
+ rand-0.8.5
+ rand_chacha-0.3.1
+ rand_core-0.6.4
+ rayon-1.7.0
+ rayon-core-1.11.0
+ redox_syscall-0.2.16
+ redox_users-0.4.3
+ regex-1.7.3
+ regex-automata-0.1.10
+ regex-syntax-0.6.29
+ rfc2047-decoder-0.2.2
+ ring-0.16.20
+ rustc_version-0.4.0
+ rustix-0.36.7
+ rustls-0.20.8
+ rustls-pemfile-1.0.2
+ rustversion-1.0.12
+ ryu-1.0.13
+ same-file-1.0.6
+ schannel-0.1.21
+ scopeguard-1.1.0
+ scroll-0.11.0
+ scroll_derive-0.11.0
+ sct-0.7.0
+ security-framework-2.9.0
+ security-framework-sys-2.9.0
+ semver-1.0.17
+ serde-1.0.163
+ serde_derive-1.0.163
+ serde_json-1.0.96
+ serde_spanned-0.6.1
+ sha2-0.10.6
+ sharded-slab-0.1.4
+ shell-escape-0.1.5
+ shell-words-1.1.0
+ shlex-1.1.0
+ similar-2.2.1
+ smallvec-1.10.0
+ smawk-0.3.1
+ snapbox-0.4.4
+ snapbox-macros-0.3.1
+ socks-0.3.4
+ spin-0.5.2
+ stacker-0.1.15
+ static_assertions-1.1.0
+ strsim-0.10.0
+ syn-1.0.109
+ syn-2.0.16
+ tar-0.4.38
+ target-lexicon-0.12.7
+ tempfile-3.4.0
+ termcolor-1.2.0
+ terminal_size-0.2.3
+ textwrap-0.16.0
+ thiserror-1.0.40
+ thiserror-impl-1.0.40
+ thread_local-1.1.7
+ time-0.3.20
+ time-core-0.1.0
+ time-macros-0.2.8
+ tinyvec-1.6.0
+ tinyvec_macros-0.1.1
+ toml-0.5.11
+ toml-0.7.3
+ toml_datetime-0.6.1
+ toml_edit-0.19.8
+ tracing-0.1.37
+ tracing-attributes-0.1.24
+ tracing-core-0.1.31
+ tracing-log-0.1.3
+ tracing-serde-0.1.3
+ tracing-subscriber-0.3.17
+ trycmd-0.14.11
+ twox-hash-1.6.3
+ typenum-1.16.0
+ unicase-2.6.0
+ unicode-bidi-0.3.13
+ unicode-ident-1.0.8
+ unicode-linebreak-0.1.4
+ unicode-normalization-0.1.22
+ unicode-width-0.1.10
+ untrusted-0.7.1
+ ureq-2.6.2
+ url-2.3.1
+ uuid-1.3.3
+ valuable-0.1.0
+ vcpkg-0.2.15
+ version_check-0.9.4
+ versions-4.1.0
+ wait-timeout-0.2.0
+ walkdir-2.3.3
+ wasi-0.11.0+wasi-snapshot-preview1
+ wasm-bindgen-0.2.86
+ wasm-bindgen-backend-0.2.86
+ wasm-bindgen-macro-0.2.86
+ wasm-bindgen-macro-support-0.2.86
+ wasm-bindgen-shared-0.2.86
+ web-sys-0.3.63
+ webpki-0.22.0
+ webpki-roots-0.22.6
+ which-4.4.0
+ wild-2.1.0
+ winapi-0.3.9
+ winapi-i686-pc-windows-gnu-0.4.0
+ winapi-util-0.1.5
+ winapi-x86_64-pc-windows-gnu-0.4.0
+ windows-sys-0.42.0
+ windows_aarch64_gnullvm-0.42.2
+ windows_aarch64_msvc-0.42.2
+ windows_i686_gnu-0.42.2
+ windows_i686_msvc-0.42.2
+ windows_x86_64_gnu-0.42.2
+ windows_x86_64_gnullvm-0.42.2
+ windows_x86_64_msvc-0.42.2
+ winnow-0.4.6
+ xattr-0.2.3
+ xwin-0.2.12
+ yansi-0.5.1
+ zeroize-1.6.0
+ zip-0.6.6"
+# additional crates used by test-crates/* test packages,
+# `grep test-crates tests/run.rs` to see which are needed
+CRATES_TEST="
+ anyhow-1.0.69
+ askama-0.11.1
+ askama_derive-0.11.2
+ askama_escape-0.10.3
+ askama_shared-0.12.2
+ bincode-1.3.3
+ camino-1.1.2
+ cargo_metadata-0.15.3
+ cc-1.0.73
+ cc-1.0.74
+ getrandom-0.2.8
+ goblin-0.6.0
+ indoc-1.0.7
+ itoa-1.0.5
+ libc-0.2.134
+ libc-0.2.137
+ libc-0.2.141
+ mime-0.3.16
+ once_cell-1.15.0
+ once_cell-1.16.0
+ once_cell-1.17.0
+ parking_lot_core-0.9.3
+ parking_lot_core-0.9.4
+ parking_lot_core-0.9.7
+ paste-1.0.11
+ proc-macro2-1.0.46
+ proc-macro2-1.0.47
+ proc-macro2-1.0.51
+ pyo3-0.18.1
+ pyo3-0.18.3
+ pyo3-build-config-0.18.1
+ pyo3-build-config-0.18.3
+ pyo3-ffi-0.18.1
+ pyo3-ffi-0.18.3
+ pyo3-macros-0.18.1
+ pyo3-macros-backend-0.18.1
+ python3-dll-a-0.2.6
+ quote-1.0.21
+ quote-1.0.23
+ ryu-1.0.12
+ semver-1.0.16
+ serde-1.0.152
+ serde_derive-1.0.152
+ serde_json-1.0.93
+ siphasher-0.3.10
+ syn-1.0.102
+ syn-1.0.103
+ syn-1.0.107
+ thiserror-1.0.38
+ thiserror-impl-1.0.38
+ unicode-ident-1.0.5
+ unicode-ident-1.0.6
+ uniffi-0.23.0
+ uniffi_bindgen-0.23.0
+ uniffi_build-0.23.0
+ uniffi_checksum_derive-0.23.0
+ uniffi_core-0.23.0
+ uniffi_macros-0.23.0
+ uniffi_meta-0.23.0
+ uniffi_testing-0.23.0
+ unindent-0.1.10
+ weedle2-4.0.0
+ windows-sys-0.36.1
+ windows-sys-0.45.0
+ windows-targets-0.42.2
+ windows_aarch64_gnullvm-0.42.0
+ windows_aarch64_msvc-0.36.1
+ windows_aarch64_msvc-0.42.0
+ windows_i686_gnu-0.36.1
+ windows_i686_gnu-0.42.0
+ windows_i686_msvc-0.36.1
+ windows_i686_msvc-0.42.0
+ windows_x86_64_gnu-0.36.1
+ windows_x86_64_gnu-0.42.0
+ windows_x86_64_gnullvm-0.42.0
+ windows_x86_64_msvc-0.36.1
+ windows_x86_64_msvc-0.42.0"
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( pypy3 python3_{10..11} )
+inherit bash-completion-r1 cargo distutils-r1 edo flag-o-matic toolchain-funcs
+
+DESCRIPTION="Build and publish crates with pyo3, rust-cpython and cffi
bindings"
+HOMEPAGE="https://www.maturin.rs/"
+SRC_URI="
+ https://github.com/PyO3/maturin/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+ $(cargo_crate_uris)
+ test? ( $(cargo_crate_uris ${CRATES_TEST}) )"
+
+# note: ring is unused, so SSLeay+openssl licenses can be skipped
+LICENSE="
+ 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD CC0-1.0 ISC
+ MIT MPL-2.0 Unicode-DFS-2016 doc? ( CC-BY-4.0 OFL-1.1 )"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="doc +ssl test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="$(python_gen_cond_dep 'dev-python/tomli[${PYTHON_USEDEP}]' 3.{9..10})"
+DEPEND="ssl? ( dev-libs/openssl:= )"
+BDEPEND="
+ dev-python/setuptools-rust[${PYTHON_USEDEP}]
+ doc? ( app-text/mdbook )
+ test? (
+ ${RDEPEND}
+ $(python_gen_cond_dep 'dev-python/cffi[${PYTHON_USEDEP}]'
'python*')
+ dev-python/boltons[${PYTHON_USEDEP}]
+ dev-python/virtualenv[${PYTHON_USEDEP}]
+ dev-vcs/git
+ )"
+RDEPEND+=" ${DEPEND}"
+
+QA_FLAGS_IGNORED="usr/bin/${PN}"
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ if use test; then
+ # used to prevent use of network during tests
+ cat > "${T}"/pip.conf <<-EOF || die
+ [install]
+ no-index = yes
+ no-dependencies = yes
+ EOF
+
+ # used by *git_sdist_generator tests
+ git init -q || die
+ git config --global user.email "[email protected]" || die
+ git config --global user.name "Larry the Cow" || die
+ git add . || die
+ git commit -qm init || die
+ fi
+}
+
+src_configure() {
+ filter-lto # TODO: cleanup after bug #893658
+
+ local cargoargs=(
+ # TODO: try switching to `--profile gentoo` then should be able
to
+ # remove all `use debug` checks and --release in tests, but
needs:
+ # https://github.com/gentoo/gentoo/pull/29510
+ $(usev debug '--profile dev')
+ --no-default-features
+ # like release.yml + native-tls for better platform support
than rustls
+ --features full,password-storage$(usev ssl ,native-tls)
+ )
+
+ export MATURIN_SETUP_ARGS=${cargoargs[*]}
+ export OPENSSL_NO_VENDOR=1
+}
+
+python_compile_all() {
+ use !doc || mdbook build -d html guide || die
+
+ if ! tc-is-cross-compiler; then
+ local maturin=target/$(usex debug{,} release)/maturin
+ ${maturin} completions bash > "${T}"/${PN} || die
+ ${maturin} completions fish > "${T}"/${PN}.fish || die
+ ${maturin} completions zsh > "${T}"/_${PN} || die
+ else
+ ewarn "shell completion files were skipped due to
cross-compilation"
+ fi
+}
+
+python_test() {
+ local -x COLUMNS=100 # what tests/cmd was generated for
+ local -x MATURIN_TEST_PYTHON=${EPYTHON}
+ local -x PIP_CONFIG_FILE=${T}/pip.conf
+ local -x VIRTUALENV_SYSTEM_SITE_PACKAGES=1
+
+ local skip=(
+ # avoid need for wasm over a single hello world test
+ --skip integration_wasm_hello_world
+ # fragile depending on rust version, also wants libpypy*-c.so
for pypy
+ --skip pyo3_no_extension_module
+ )
+
+ edo cargo test $(usev !debug --release) ${MATURIN_SETUP_ARGS} --
"${skip[@]}"
+}
+
+python_install_all() {
+ dodoc Changelog.md README.md
+ use doc && dodoc -r guide/html
+
+ if ! tc-is-cross-compiler; then
+ dobashcomp "${T}"/${PN}
+
+ insinto /usr/share/fish/vendor_completions.d
+ doins "${T}"/${PN}.fish
+
+ insinto /usr/share/zsh/site-functions
+ doins "${T}"/_${PN}
+ fi
+}