diff options
author | V3n3RiX <venerix@koprulu.sector> | 2023-10-09 18:06:43 +0100 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2023-10-09 18:06:43 +0100 |
commit | 4e4ee9865a958b6a854f9bca96637244c628d525 (patch) | |
tree | 824d75c3a55f71fc978cdd1fca5cb03ff439e59c /dev-python | |
parent | c65def1225a421dd57ac582acefc5987c9d67e0d (diff) |
gentoo auto-resync : 09:10:2023 - 18:06:43
Diffstat (limited to 'dev-python')
27 files changed, 1294 insertions, 0 deletions
diff --git a/dev-python/Manifest.gz b/dev-python/Manifest.gz Binary files differindex 98a657dbe977..0cebe378e49b 100644 --- a/dev-python/Manifest.gz +++ b/dev-python/Manifest.gz diff --git a/dev-python/Nuitka/Manifest b/dev-python/Nuitka/Manifest index 858841e6b7aa..e53657d6be2f 100644 --- a/dev-python/Nuitka/Manifest +++ b/dev-python/Nuitka/Manifest @@ -3,11 +3,13 @@ DIST Nuitka-1.7.9.tar.gz 4288768 BLAKE2B 6069598c4eb9bb134a0d5bcfc4f3b423c0cb4f0 DIST Nuitka-1.8.1.tar.gz 3603553 BLAKE2B eb470569302864ce79a595d15f10ec12786b9a36bcbd5b77eedceacecf9a637bb494292dd0dd8a6177292b6e461da6de446e88812150b4840ceb0640eb27faf0 SHA512 3a5a3d9b616f2b594638541bcbcdcef07440e907ed86f8688700a051096dcfa4df8d19dd1dbc58eddbf10249945ed2281f47c84c6bdc35398f029f645cf52e35 DIST Nuitka-1.8.2.tar.gz 3603724 BLAKE2B 32ba8e96791b488ec8b65bac6bdb4742dbea1e15f9a4f0620217c165281168c51558e40068e5bdedc31ccb67dc5e8a4805415b343365c099173047c61bfa047a SHA512 bdd14622bf0abe5ea4468672ed9badb28a12cabb7dbb9b1a5fa5da3bf33a1f45e02bd87b0568f10df8523a14bb418d462dea054a77cd462f9ddbea7bf93142d6 DIST Nuitka-1.8.3.tar.gz 3604342 BLAKE2B eeed2776aff583e6d7a717f72bf13b0902d16de6ba774a35cf770c32887617510effcb1a4e437bcc78b85ef0be2e98cc3214ee1e5f2e07b81343e9d56676fd23 SHA512 9a44e9f7d26996044bd8147f4f6e1b92818a2f79ee813c2121839c8640074ccc1e4b2a32a838181aa9ee5a27e8952a4be6d47c510348c63cda8d717c536bbfee +DIST Nuitka-1.8.4.tar.gz 3604833 BLAKE2B 32a5169e981e1323e0cc30147bbd6327521f496d3a4bcd0e6d3e811b291c596c50a3cf7602221f24b7a6d82936286bab1a045e65abfa4ddb9f366e23edaad9a2 SHA512 632453e937ca6c895646910ca650d83f9610e0aa4a28d2b2fe608c1bf4138ea06496c2bd2fee24fb4e6224a844437242ff9d21af2221ad2eed2edc77262050c2 DIST Nuitka-1.8.tar.gz 3602951 BLAKE2B 5ae75060b42c494c57fa92e53a8e11c25f0ed243711ad76fab140828c1b835b946201c4d7d19ac24d029d66ddead91f7943527cde5ec823f03735c0fe3a2002e SHA512 1b35405162f64b7ed99f88f223633a8dd643642de052a3ae3a4da25fd310796022394375b13d9f5cc464108791a157618e3c1aa895b0fa3235603a9f2b9b26ec EBUILD Nuitka-1.7.10.ebuild 1171 BLAKE2B 1fcb2c87e62bdafa2e0994d0d655c1bc5ee7590a57523ce52c951baf34ae003636a12388be1ca17b51949020374b23ee93f314b34354b57ae7fd7b4e7778d56a SHA512 4afaa4adafd2aeead9b5e71718bf03069a27977d924b4640f1683fc284fd4591f15703a6c47cd459ce10a3e67a81d6cc6ce9a64179334a06b031906fd151810d EBUILD Nuitka-1.7.9.ebuild 1171 BLAKE2B 1fcb2c87e62bdafa2e0994d0d655c1bc5ee7590a57523ce52c951baf34ae003636a12388be1ca17b51949020374b23ee93f314b34354b57ae7fd7b4e7778d56a SHA512 4afaa4adafd2aeead9b5e71718bf03069a27977d924b4640f1683fc284fd4591f15703a6c47cd459ce10a3e67a81d6cc6ce9a64179334a06b031906fd151810d EBUILD Nuitka-1.8.1.ebuild 1115 BLAKE2B 71600bcba8ba9422125dc6e145f919853e241a089aa855beb488ccb72bd3d5490ad4b986e1616dc4ac099023d88ee1fcbaf7efd5a84ad1f74ce17672efc7fff7 SHA512 28485d128e06c298f4aa512cf455dd38fe6dc34dce424246bb8bc69d531274158e377631b96c82cccea29a03492721a2bb71791ad2bbb4765475972347ea18ab EBUILD Nuitka-1.8.2.ebuild 1115 BLAKE2B 71600bcba8ba9422125dc6e145f919853e241a089aa855beb488ccb72bd3d5490ad4b986e1616dc4ac099023d88ee1fcbaf7efd5a84ad1f74ce17672efc7fff7 SHA512 28485d128e06c298f4aa512cf455dd38fe6dc34dce424246bb8bc69d531274158e377631b96c82cccea29a03492721a2bb71791ad2bbb4765475972347ea18ab EBUILD Nuitka-1.8.3.ebuild 1115 BLAKE2B 71600bcba8ba9422125dc6e145f919853e241a089aa855beb488ccb72bd3d5490ad4b986e1616dc4ac099023d88ee1fcbaf7efd5a84ad1f74ce17672efc7fff7 SHA512 28485d128e06c298f4aa512cf455dd38fe6dc34dce424246bb8bc69d531274158e377631b96c82cccea29a03492721a2bb71791ad2bbb4765475972347ea18ab +EBUILD Nuitka-1.8.4.ebuild 1115 BLAKE2B 71600bcba8ba9422125dc6e145f919853e241a089aa855beb488ccb72bd3d5490ad4b986e1616dc4ac099023d88ee1fcbaf7efd5a84ad1f74ce17672efc7fff7 SHA512 28485d128e06c298f4aa512cf455dd38fe6dc34dce424246bb8bc69d531274158e377631b96c82cccea29a03492721a2bb71791ad2bbb4765475972347ea18ab EBUILD Nuitka-1.8.ebuild 1115 BLAKE2B 71600bcba8ba9422125dc6e145f919853e241a089aa855beb488ccb72bd3d5490ad4b986e1616dc4ac099023d88ee1fcbaf7efd5a84ad1f74ce17672efc7fff7 SHA512 28485d128e06c298f4aa512cf455dd38fe6dc34dce424246bb8bc69d531274158e377631b96c82cccea29a03492721a2bb71791ad2bbb4765475972347ea18ab MISC metadata.xml 943 BLAKE2B d7ab883773e7480dcfb4b79932a3874e2274669169a24a54aa622a2a0ac079e0296da4bd196d166cb11fcff785985da0b10d0fae351032914ccf312c9bb9833c SHA512 625d8760b8e849c6e014856f584cb42f50bb5ebb1fa648cb704a5a1baf175e7d2ce9f43f6f724d11c81a68e364b6ac1c38459540b58f2ccd6a675902af5b1cc9 diff --git a/dev-python/Nuitka/Nuitka-1.8.4.ebuild b/dev-python/Nuitka/Nuitka-1.8.4.ebuild new file mode 100644 index 000000000000..f511685d5ce1 --- /dev/null +++ b/dev-python/Nuitka/Nuitka-1.8.4.ebuild @@ -0,0 +1,52 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYPI_NO_NORMALIZE=1 +PYTHON_COMPAT=( python3_{10..11} ) + +inherit distutils-r1 flag-o-matic optfeature pypi + +DESCRIPTION="Python to native compiler" +HOMEPAGE=" + https://www.nuitka.net/ + https://github.com/Nuitka/Nuitka/ + https://pypi.org/project/Nuitka/ +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~loong ~x86" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND=" + dev-util/scons[${PYTHON_USEDEP}] +" +BDEPEND=" + ${RDEPEND} + test? ( dev-util/ccache ) +" + +distutils-r1_src_prepare() { + # remove vendored version of SCons that is Python2 only + # this should be removed when upstream removes support for Python2 + rm -vR "nuitka/build/inline_copy/lib/scons-2.3.2/SCons" || die + eapply_user +} + +python_install() { + distutils-r1_python_install + doman doc/nuitka3.1 doc/nuitka3-run.1 +} + +python_test() { + append-ldflags -Wl,--no-warn-search-mismatch + ./tests/basics/run_all.py search || die +} + +pkg_postinst() { + optfeature "support for stand-alone executables" app-admin/chrpath +} diff --git a/dev-python/griffe/Manifest b/dev-python/griffe/Manifest index 3dcdb7316c77..ecbdce1f286f 100644 --- a/dev-python/griffe/Manifest +++ b/dev-python/griffe/Manifest @@ -1,5 +1,7 @@ DIST griffe-0.36.2.gh.tar.gz 188707 BLAKE2B b444dcbb38ab39715f975a17f502cf331bb3385b287f30bd66115bd7c565b248d1bce45ca80167ab5da0a59f8f73e41f63c4114f0f02029a56b735c0aa9c36d7 SHA512 1ec7efaf8b2c030b7c33ddb41a04e927fdd8678061a7ccbcd632c17d9fd80c664320be5ac0c9f05340358835dd430b6082b770c849fc2ed3c3266f65474da92d DIST griffe-0.36.4.gh.tar.gz 192823 BLAKE2B 42815673835bffebf97ab3bd436997329229596d24f4cd6fcd0b57f137b113bd42461cf9b8a33472ef6887dc7efdb4d88f31b6f503abb365f101311ff89fb5f3 SHA512 76d672f91643d347d15e97eb29bd1cdb24f843d396777287d5f5c28259f4f25dc7a89d53a83189e84572fcbed5201144d2b15f1bbc0864799c7703ce90b1cc7a +DIST griffe-0.36.5.gh.tar.gz 193265 BLAKE2B f8727c42b0a5527fcc5d8fafcf1e16e3b4cae516db5f3a5ba790c068e5d1520c50a8cd467d40d12bce9d4793d94aabb67148ff79c81f58fcc5711e1e4c9345ce SHA512 e1ed6c2ece246b1583a18df30151186a605e02d4ad19748c9c4ccd6bf2e47fa493d2cf4b37ca5fa3f91c4c3c3927b034f92a344a9f9601b516673ccf3e7906f1 EBUILD griffe-0.36.2.ebuild 958 BLAKE2B 10c44ac7ea571eac3359a86c6f614a0281c08af4600e92757877ffe96cdd38f1080f5677143487429b436e913399b26d02917961a9d300f9cd97446b7e8ca15f SHA512 03f908068ab85bff169f4e2dff0a3750cb78f9ad9837a706cd8acb6c6a72d4cf57ecc35de39367320c8cf4b816f0abbba043ce457919985cdfc10acb3d536756 EBUILD griffe-0.36.4.ebuild 958 BLAKE2B 10c44ac7ea571eac3359a86c6f614a0281c08af4600e92757877ffe96cdd38f1080f5677143487429b436e913399b26d02917961a9d300f9cd97446b7e8ca15f SHA512 03f908068ab85bff169f4e2dff0a3750cb78f9ad9837a706cd8acb6c6a72d4cf57ecc35de39367320c8cf4b816f0abbba043ce457919985cdfc10acb3d536756 +EBUILD griffe-0.36.5.ebuild 958 BLAKE2B 10c44ac7ea571eac3359a86c6f614a0281c08af4600e92757877ffe96cdd38f1080f5677143487429b436e913399b26d02917961a9d300f9cd97446b7e8ca15f SHA512 03f908068ab85bff169f4e2dff0a3750cb78f9ad9837a706cd8acb6c6a72d4cf57ecc35de39367320c8cf4b816f0abbba043ce457919985cdfc10acb3d536756 MISC metadata.xml 398 BLAKE2B eb35dbbdd7d3482404991416d9e06e3e87f88a96cc91d481b5a2f53eb732172116b4cfefa1a65f9ba8db44e2b10ed0fd6e4031b7d17382e9e931d1a2eedb322e SHA512 833aac5d52c2584143d67b7ad325e9538cee17d454410b3c4708ad9b47f58d3b2c0875d735b149603bb36ae124d24343b2e456a6db5e5f806da2e13f32c108cc diff --git a/dev-python/griffe/griffe-0.36.5.ebuild b/dev-python/griffe/griffe-0.36.5.ebuild new file mode 100644 index 000000000000..c8d57610c9ff --- /dev/null +++ b/dev-python/griffe/griffe-0.36.5.ebuild @@ -0,0 +1,45 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=pdm-backend +PYTHON_COMPAT=( python3_{10..12} ) + +inherit distutils-r1 + +DESCRIPTION="Signature generator for Python programs" +HOMEPAGE=" + https://mkdocstrings.github.io/griffe/ + https://github.com/mkdocstrings/griffe/ + https://pypi.org/project/griffe/ +" +# Tests need files absent from the PyPI tarballs +SRC_URI=" + https://github.com/mkdocstrings/griffe/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="ISC" +SLOT="0" +KEYWORDS="~amd64 ~riscv" + +RDEPEND=" + >=dev-python/colorama-0.4[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + >=dev-python/jsonschema-4.17.3[${PYTHON_USEDEP}] + >=dev-python/pytest-xdist-2.4[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +export PDM_BUILD_SCM_VERSION=${PV} + +EPYTEST_DESELECT=( + # fragile to installed packages + # (failed on PySide2 for me) + tests/test_stdlib.py::test_fuzzing_on_stdlib +) diff --git a/dev-python/mkdocstrings-python/Manifest b/dev-python/mkdocstrings-python/Manifest index 0c07a45cef68..7ad375160d45 100644 --- a/dev-python/mkdocstrings-python/Manifest +++ b/dev-python/mkdocstrings-python/Manifest @@ -1,7 +1,9 @@ DIST mkdocstrings-python-1.7.0.gh.tar.gz 136113 BLAKE2B a1ccb8ff817beaa89fb8234c60920a3b60e57d3908e103279728a9b0d6c4b53132da5262001b9a0e89b161e5e96226ddd06e0b224db4c869cb99297a6c646167 SHA512 2e1b855c8ad51b8066e3ff1036cf6d0ee90b766f7f851a6045707889e39ca9217f9a747bff0069614e89154356224a670b4de6f8a678439bbff63d4e3ffb6b70 DIST mkdocstrings-python-1.7.1.gh.tar.gz 136263 BLAKE2B c3c5661f7afd94c4233bd737ff1129f280825a6acc6c868867443e3eab76f4d22732895de486784f0c3f163ded45e7c9a6954768f13fde3bfc1404e76ea9224b SHA512 dfa05086d12805975e68bebabc47e2bfdeca67c7dc799312e3d719142b7bea995f06ed8c5b4699ffbb58647e0a1f6be23dc17a76ff8c7008587ccc3af72c56f9 DIST mkdocstrings-python-1.7.2.gh.tar.gz 136510 BLAKE2B de1926caf358d858de63dd84261699aaedf9f12e74affeda9b6fb3ca93dd1ddb80aa02aa2bdf1b820564b0ea05c26cce14f7d9aaca37a151314fc449695745c9 SHA512 2aeb2c4f62054188d8075babf0e131107f8ba4355444b793e39a29b95702d6b3b26b6862fc5c48d30bdc4af1fc798c994ede8e96f608cd0a59852368ca1e46f3 +DIST mkdocstrings-python-1.7.3.gh.tar.gz 136488 BLAKE2B 470f7d69819222a9c1620f5a5ab57a9e884bc9cb1e4d536f35458c0f4c08c5442da1d31522665077ee848e2b241c7fa50ae3a73f5f570599fadb0ee9f2fcc2f8 SHA512 d5c5e9eeaa13a951cffe4fdc6f9a6bf6e3e3cb0615f7180db91446c6e8060c061682e5d717616d8dbf66009a650d363b25a4124b750f760e60bd1ffdca8e0164 EBUILD mkdocstrings-python-1.7.0.ebuild 859 BLAKE2B 926a9c55b502d6313dee12dfe777e90ca9573eb787b2fe5129e29c99a034e42f649ef64bead7de1beb3f4a97d1b1b1a5ed2a18bb7989e7d62e750a4f39b72cff SHA512 6a66967c086389d4d6cc7573a1b3c55926fb16cc1545f0c4fa3c89aeb94d4639edeeb2cafe7002a4a28e4eb68f8c8d90e0960a5620f2f3810b4d54df2540d578 EBUILD mkdocstrings-python-1.7.1.ebuild 859 BLAKE2B 926a9c55b502d6313dee12dfe777e90ca9573eb787b2fe5129e29c99a034e42f649ef64bead7de1beb3f4a97d1b1b1a5ed2a18bb7989e7d62e750a4f39b72cff SHA512 6a66967c086389d4d6cc7573a1b3c55926fb16cc1545f0c4fa3c89aeb94d4639edeeb2cafe7002a4a28e4eb68f8c8d90e0960a5620f2f3810b4d54df2540d578 EBUILD mkdocstrings-python-1.7.2.ebuild 859 BLAKE2B 926a9c55b502d6313dee12dfe777e90ca9573eb787b2fe5129e29c99a034e42f649ef64bead7de1beb3f4a97d1b1b1a5ed2a18bb7989e7d62e750a4f39b72cff SHA512 6a66967c086389d4d6cc7573a1b3c55926fb16cc1545f0c4fa3c89aeb94d4639edeeb2cafe7002a4a28e4eb68f8c8d90e0960a5620f2f3810b4d54df2540d578 +EBUILD mkdocstrings-python-1.7.3.ebuild 859 BLAKE2B 926a9c55b502d6313dee12dfe777e90ca9573eb787b2fe5129e29c99a034e42f649ef64bead7de1beb3f4a97d1b1b1a5ed2a18bb7989e7d62e750a4f39b72cff SHA512 6a66967c086389d4d6cc7573a1b3c55926fb16cc1545f0c4fa3c89aeb94d4639edeeb2cafe7002a4a28e4eb68f8c8d90e0960a5620f2f3810b4d54df2540d578 MISC metadata.xml 411 BLAKE2B 0ac98abc8de945139a73e2083e8c04df749bd8c0c26c446df65218057182391ae025885fa5c5bde2d1139dde9916aa3baa0426d70b57326563c3fdaf466a20d8 SHA512 c7ec032c8ae7197452714dc2b541ccad1cf84d7844dafc4e7581ffb00c62c0fd2c38d453e62a7706d74d2d20146acdf1e99e502ab8bd8976acfd6f5a605e1c56 diff --git a/dev-python/mkdocstrings-python/mkdocstrings-python-1.7.3.ebuild b/dev-python/mkdocstrings-python/mkdocstrings-python-1.7.3.ebuild new file mode 100644 index 000000000000..f0b94cc2c39d --- /dev/null +++ b/dev-python/mkdocstrings-python/mkdocstrings-python-1.7.3.ebuild @@ -0,0 +1,40 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..11} ) +DISTUTILS_USE_PEP517=pdm-backend + +inherit distutils-r1 + +DESCRIPTION="Python handler for dev-python/mkdocstrings" +HOMEPAGE=" + https://mkdocstrings.github.io/python/ + https://github.com/mkdocstrings/python/ + https://pypi.org/project/mkdocstrings-python/ +" +# Tests need files absent from the PyPI tarballs +SRC_URI=" + https://github.com/mkdocstrings/python/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz +" +S="${WORKDIR}/python-${PV}" + +LICENSE="ISC" +SLOT="0" +KEYWORDS="~amd64 ~riscv" + +RDEPEND=" + >=dev-python/griffe-0.35[${PYTHON_USEDEP}] + dev-python/mkdocstrings[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/mkdocs-material[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +export PDM_BUILD_SCM_VERSION=${PV} diff --git a/dev-python/pikepdf/Manifest b/dev-python/pikepdf/Manifest index 3983eee11c8e..a03aeed2ea1a 100644 --- a/dev-python/pikepdf/Manifest +++ b/dev-python/pikepdf/Manifest @@ -1,7 +1,9 @@ DIST pikepdf-7.2.0.tar.gz 2913496 BLAKE2B 6992b9e64e7bd718fb09c5cd3eb77937c802bb07b24b72bb0825ec721137ee1211f9f7bbc3d8141b60e0ece1f71e6d9d36b50153377b3475f30d7aac3c8f2181 SHA512 96759f36e3f019d6cba775541e7338e774d61cb71c464e42625b1b6c98b8babf5fc9d9324dc6375257897a130d7fe5facdd7a1ddaec6662c8b088854e01fc97e DIST pikepdf-8.4.1.tar.gz 2853305 BLAKE2B 2298514159db17ba49b8e2fa2407d60de50273bea111ece704251d99193bdc4c8ed77f624237a49c3f4f129e3b14ac4ddd1006cf3024bcbf822bc5523e0fee35 SHA512 6989e8a3888f612e453ec1ea8425c0ca35ccfee19ae5e8c32df136ebc3fbb7728d9fe5beaacb4e392a20c9037a1009fc8f8d53d73634427fb0df9103626e34fa DIST pikepdf-8.5.0.tar.gz 2854462 BLAKE2B 58947c8e0359f452a01e851782ffedf69d12b65af50f95bec6aa60ea4500050f2076cb6d9fd865ede23eb7591e533e4cb97880dbfe0a528fde752a008da43946 SHA512 1b4f9bec59efe58374dd654377f59885539c884903f4af3748bb38e97f9f13d746d7717530caabf1ce1f0112713d2c773a85675f5ae5997b02431a0661a8c9e2 +DIST pikepdf-8.5.1.tar.gz 2854559 BLAKE2B 70bca735461d0234cd43cc757a1e8137f9cc30715c409d0bc42c4c547d961e2416203212e91b35cc8a2ac464bb0150fcd685d47fe43d6c1664210918bbb11fc6 SHA512 7c5dc66378c6bb2aaeb9a9fba1c69172619ee516f285e36e5560beb8b10164c01392d06d546f69818af59ebbe7d8c5fa299237d78e622d2cd14ca7c6c1020992 EBUILD pikepdf-7.2.0.ebuild 1633 BLAKE2B dca68beb002befb3c9069391e96a1050100fb1b2a5a48af1215af742ea8df7357b34705f1730eca5af5bf61cd4b351ff9d4f1825e444ae77a3ead7885d796cdd SHA512 253e0867a0a89d22e9aea9fa05368b12bf6257e228d3978b19f861a97186d5bdb5a484bc10f7db7dbe4045715e8497e24fcb1dff557c44a80e104ad68a1432ed EBUILD pikepdf-8.4.1.ebuild 1684 BLAKE2B 72b1e0eb42f6976d3518061eefabe5d0beed49db6715af5a9eae6c931fd9e65e9983f240028be95afea21dd54a98184913ac8bceaf054a4e0c4c98d965c21cb6 SHA512 5acff4561802b6d24c30f5dbb71ff3815d325780ddfe13788cbca77236e02f36ef653a9a07835c14f1f7ddf0650b4702bce53e64b802ae24d782cefd1f89180a EBUILD pikepdf-8.5.0.ebuild 1691 BLAKE2B 86a1e90748909974401c539c64ccb9b496a1842f333c9d656b097dfa94bb742bfc1c2ac33771ab455b0b69d4945a42b05c37a91491e8b2835e70ac332874484c SHA512 27eacb24b11383380a14fea7ffeb74db0a03b75f00b41009f3e3d37c7ae25c42131a0f5194a0e39d6c05a854fbc49c14ae376c71ef92ac107aafc7ee810eee60 +EBUILD pikepdf-8.5.1.ebuild 1691 BLAKE2B 86a1e90748909974401c539c64ccb9b496a1842f333c9d656b097dfa94bb742bfc1c2ac33771ab455b0b69d4945a42b05c37a91491e8b2835e70ac332874484c SHA512 27eacb24b11383380a14fea7ffeb74db0a03b75f00b41009f3e3d37c7ae25c42131a0f5194a0e39d6c05a854fbc49c14ae376c71ef92ac107aafc7ee810eee60 MISC metadata.xml 687 BLAKE2B 07c94d9dac5323202f955fd9c1e5a6fc78518a0a6f703c54c73b70e774900c41a4823beb3f8be7068d83878d1e60df0d7e30efd53bbc1ba31019477de82b092f SHA512 1be3ec00342e8079363db0c57f75ae88bd05e873869fbbb27442e9fe98eb6917c55b4eaf03ed22c4c44ca3aec9b84839cbc254202460a3266bbc42ff8f0f84b3 diff --git a/dev-python/pikepdf/pikepdf-8.5.1.ebuild b/dev-python/pikepdf/pikepdf-8.5.1.ebuild new file mode 100644 index 000000000000..7f5268d969a6 --- /dev/null +++ b/dev-python/pikepdf/pikepdf-8.5.1.ebuild @@ -0,0 +1,62 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{10..12} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="Python library to work with pdf files based on qpdf" +HOMEPAGE=" + https://github.com/pikepdf/pikepdf/ + https://pypi.org/project/pikepdf/ +" + +LICENSE="MPL-2.0" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +# Check QPDF_MIN_VERSION in pyproject.toml on bumps, as well as +# https://qpdf.readthedocs.io/en/stable/release-notes.html. +DEPEND=" + >=app-text/qpdf-11.5.0:0= +" +RDEPEND=" + ${DEPEND} + dev-python/deprecation[${PYTHON_USEDEP}] + >=dev-python/lxml-4.0[${PYTHON_USEDEP}] + dev-python/packaging[${PYTHON_USEDEP}] + >=dev-python/pillow-10.0.1[${PYTHON_USEDEP}] +" +BDEPEND=" + >=dev-python/pybind11-2.10.1[${PYTHON_USEDEP}] + >=dev-python/setuptools-scm-7.0.5[${PYTHON_USEDEP}] + test? ( + >=dev-python/attrs-20.2.0[${PYTHON_USEDEP}] + >=dev-python/hypothesis-6.36[${PYTHON_USEDEP}] + >=dev-python/numpy-1.21.0[${PYTHON_USEDEP}] + >=dev-python/pillow-5.0.0[${PYTHON_USEDEP},jpeg,lcms,tiff] + >=dev-python/psutil-5.9[${PYTHON_USEDEP}] + >=dev-python/pytest-timeout-2.1.0[${PYTHON_USEDEP}] + >=dev-python/python-dateutil-2.8.1[${PYTHON_USEDEP}] + >=dev-python/python-xmp-toolkit-2.0.1[${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + dev-python/tomli[${PYTHON_USEDEP}] + ' 3.{8..10}) + ) +" + +distutils_enable_tests pytest + +EPYTEST_DESELECT=( + # fragile to system load + tests/test_image_access.py::test_random_image +) + +src_prepare() { + sed -e '/-n auto/d' -i pyproject.toml || die + distutils-r1_src_prepare +} diff --git a/dev-python/pyside2-tools/Manifest b/dev-python/pyside2-tools/Manifest index 821697acc895..698a99b7920c 100644 --- a/dev-python/pyside2-tools/Manifest +++ b/dev-python/pyside2-tools/Manifest @@ -1,4 +1,6 @@ AUX pyside2-tools-5.15.1-dont-install-tools.patch 1782 BLAKE2B a9a1c3cb8d1e6feabbc752bb4bf0af30b645736b9895fe96063dc4a9d5668866523e567f723693b17c6da4101d28713cfa6ad8adadb78e6bb99756d7c69244a2 SHA512 c8b17db89f42a52f4191dda953d7228eafcafd6afb6d7b70527cef090ffd1f073970010a817bede941de10b4e40e41d35fb99b74091baeea6d237c08eb7f225f DIST pyside-setup-opensource-src-5.15.10.tar.xz 3583764 BLAKE2B 7e19e8f8460582012d3fec09ac99f826298cbfcd0887339c2adababb7a21bfc67a2918e91858888e89eca0a6f780929b2a7fa70c28d72ece24b7ea939ca76f56 SHA512 dc548ab870fcc5cc637de1bcb2f428527c650287fdb3720a3ade4638cc0bb12bc4a1ed87e7f6a4ec730a26742e08ceec806bcac6af91c7a01ddc0ce7980a79d2 +DIST pyside-setup-opensource-src-5.15.11.tar.xz 3584760 BLAKE2B c4d60439a218451eb0c505031524fe1e30a117b7e89a28b5cd7518c193a8d2de01a5db8cb3acdd97c81da6dddff99f786c6c763427f78cdd0af4031122ac2d24 SHA512 377b3f6a793313cf7f5bea0dcef6630bac32d79b247e213d0b1b719805b35692aa8dd9a8896c75c6266f05af38809f574051d64b1a2f958a48c90167feccfb91 EBUILD pyside2-tools-5.15.10.ebuild 1661 BLAKE2B bd0332d0e204e18b9ed20b867de3ba7b061c3d2e5dd2a8c75cd54f9ddd1f683a5dbcb7807adec6ddcb5e09c40cfd0856840cd19830fd93b6576c870cd7edb2f5 SHA512 42966f0de37d0bebed199f36ddf57660a15d49e37d7745bac3ce2a9c82706475fca8a55267648871131dea369601ea1ba74f6e79d53f5e81ec50cad578241887 +EBUILD pyside2-tools-5.15.11.ebuild 1664 BLAKE2B 40a98b1fb247f233937459e6493461fe980175be7c58e182084498d249bac3ec20fa7902d818d6855ce81cd23650ebfd9f07d04b1ad7a4afec37d16635265b28 SHA512 26d59ccf1ea740c99e79aa1c4c7e409e01585b2295cb6c0375c45647ab23d3a08a03d810be94c2385467238e7b57743dd9fa83ebc041b8f9b395526571e0298f MISC metadata.xml 402 BLAKE2B 28348df442d189eadb56e04dfda71c1d5a56868aae85611a7d77ecdc7651e34ce02563c8da1270aad55758e2dd4301de44434e0bbdb010ef484e240068602ede SHA512 a54866110e38c24d67d60286c64b63dc0b537c55eb201b84b9173b47710b6e8a840d9072ca46fbef969bf481e43e1d8824b20655d7fe6b300cfd5333c3f74a41 diff --git a/dev-python/pyside2-tools/pyside2-tools-5.15.11.ebuild b/dev-python/pyside2-tools/pyside2-tools-5.15.11.ebuild new file mode 100644 index 000000000000..5d7bb774f990 --- /dev/null +++ b/dev-python/pyside2-tools/pyside2-tools-5.15.11.ebuild @@ -0,0 +1,77 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# TODO: Add PyPy once officially supported. See also: +# https://bugreports.qt.io/browse/PYSIDE-535 +PYTHON_COMPAT=( python3_{10..11} ) +CMAKE_IN_SOURCE_BUILD=1 + +inherit cmake python-r1 + +MY_P=pyside-setup-opensource-src-${PV} + +DESCRIPTION="PySide development tools (pyside2-lupdate with support for Python)" +HOMEPAGE="https://wiki.qt.io/PySide2" +SRC_URI="https://download.qt.io/official_releases/QtForPython/pyside2/PySide2-${PV}-src/${MY_P}.tar.xz" +S="${WORKDIR}/${MY_P}/sources/${PN}" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~riscv ~x86" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND="${PYTHON_DEPS} + ~dev-python/pyside2-${PV}[${PYTHON_USEDEP}] +" +DEPEND="${RDEPEND}" + +DOCS=( README.md ) + +# the tools conflict with tools from QT +PATCHES=( + "${FILESDIR}/${PN}-5.15.1-dont-install-tools.patch" +) + +src_prepare() { + cmake_src_prepare + + python_copy_sources +} + +src_configure() { + # The tests are only related to the tools that we don't install + local mycmakeargs=( + -DBUILD_TESTS=OFF + ) + + pyside-tools_configure() { + local mycmakeargs=( + "${mycmakeargs[@]}" + -DPYTHON_CONFIG_SUFFIX="-${EPYTHON}" + ) + CMAKE_USE_DIR="${BUILD_DIR}" cmake_src_configure + } + + python_foreach_impl pyside-tools_configure +} + +src_compile() { + pyside-tools_compile() { + CMAKE_USE_DIR="${BUILD_DIR}" cmake_src_compile + } + + python_foreach_impl pyside-tools_compile +} + +src_install() { + pyside-tools_install() { + python_doexe "${BUILD_DIR}/pylupdate/pyside2-lupdate" + } + + python_foreach_impl pyside-tools_install + + doman pylupdate/pyside2-lupdate.1 + einstalldocs +} diff --git a/dev-python/pyside2/Manifest b/dev-python/pyside2/Manifest index ed904d31d6ba..43424ecb8cbf 100644 --- a/dev-python/pyside2/Manifest +++ b/dev-python/pyside2/Manifest @@ -2,5 +2,7 @@ AUX pyside2-5.15.2-python310.patch 508 BLAKE2B bdfc33975d1dd0c9eb73d1bae3ec2aff8 AUX pyside2-5.15.2-python311-fixups.patch 1962 BLAKE2B 37d91352ea09eaef6d36c600165e4fea74145b0fa05620e739254d3983acc501455154fc51ce3448aa4f60a00cd377f0896cb3dc14f1a921d6948dc53c500784 SHA512 39e999c80ed2717eaf59b47c12e64208d1b54d3d61daacf7a8ebeb4586f3b7312dd5db3fc53d4d2f3c426d80729e5d655e9b612153c704b40b7d261ddd57e580 AUX pyside2-5.15.2-python311.patch 1777 BLAKE2B 1afa7c39755c4f91b4b4c951f59e1a3190f924d8b20cf2140ad5342c2fa046ff7e6bec540bea9d7652116894e0cb7f5fa5ea73067212ca5b631382e7139d7786 SHA512 b88f300e4944cbb9adc8ac887e263e74e088a1b291000c86f6677a01241939e612fa5eebba3807fb2318477e68de241914832cc92ed0470726804d3098486120 DIST pyside-setup-opensource-src-5.15.10.tar.xz 3583764 BLAKE2B 7e19e8f8460582012d3fec09ac99f826298cbfcd0887339c2adababb7a21bfc67a2918e91858888e89eca0a6f780929b2a7fa70c28d72ece24b7ea939ca76f56 SHA512 dc548ab870fcc5cc637de1bcb2f428527c650287fdb3720a3ade4638cc0bb12bc4a1ed87e7f6a4ec730a26742e08ceec806bcac6af91c7a01ddc0ce7980a79d2 +DIST pyside-setup-opensource-src-5.15.11.tar.xz 3584760 BLAKE2B c4d60439a218451eb0c505031524fe1e30a117b7e89a28b5cd7518c193a8d2de01a5db8cb3acdd97c81da6dddff99f786c6c763427f78cdd0af4031122ac2d24 SHA512 377b3f6a793313cf7f5bea0dcef6630bac32d79b247e213d0b1b719805b35692aa8dd9a8896c75c6266f05af38809f574051d64b1a2f958a48c90167feccfb91 EBUILD pyside2-5.15.10-r2.ebuild 9339 BLAKE2B 04ede6f82ee6fcf4570d564cfafbe5b99e1004cee988ebf76e8eccc1ba5d703dc9ec6bbd39e90c16b142b1938538ce8d353afe08b0464002d8de737d9da1c089 SHA512 688b5d83da1892c604f4faf03727390c952347db1446434199cb01bcb57d4c06348232260aa74c212b29fb47aff212ba3d9a5d4b061682d8a34670b927f4f334 +EBUILD pyside2-5.15.11.ebuild 9190 BLAKE2B 4c45c7cf789a371f287c8fbda353da20b7c094061da6b829d5875a11e4496b04ba0191739d2223dd656179e996f7478c56cb4db97f2823ed3bb2a8113714b7e7 SHA512 e6dc3d65eb77f1c2a202a4dbe32078bb85387a9595777daacd75827675965e2d1542c515f96414d4d2a50e8e7209ee2a759489fc59e2dbb197c7cff436c83278 MISC metadata.xml 2255 BLAKE2B 00982d17109b327ce063f5ba53474603cc73ffb013268ec9f6b751a73792a790f56de285291e70ad12147c27ba97b516be1318df312483d67d72509f8e8d8655 SHA512 830f9510f5e141422cbbab356d34a34b631f948eea14bcc96badbef65ce10f56c648748edc4ddf06be77b1c597a7d12d4552bde122937eb4cda01b304a3193c7 diff --git a/dev-python/pyside2/pyside2-5.15.11.ebuild b/dev-python/pyside2/pyside2-5.15.11.ebuild new file mode 100644 index 000000000000..014d3d91e865 --- /dev/null +++ b/dev-python/pyside2/pyside2-5.15.11.ebuild @@ -0,0 +1,224 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# TODO: Add PyPy once officially supported. See also: +# https://bugreports.qt.io/browse/PYSIDE-535 +PYTHON_COMPAT=( python3_{10..11} ) + +inherit cmake python-r1 virtualx + +# TODO: Add conditional support for "QtRemoteObjects" via a new "remoteobjects" +# USE flag after an external "dev-qt/qtremoteobjects" package has been created. +# TODO: Add conditional support for apidoc generation via a new "doc" USE flag. +# Note that doing so requires the Qt source tree, sphinx, and graphviz. Once +# ready, pass the ${QT_SRC_DIR} variable to cmake to enable this support. +# TODO: Disable GLES support if the "gles2-only" USE flag is disabled. Note +# that the "PySide2/QtGui/CMakeLists.txt" and +# "PySide2/QtOpenGLFunctions/CMakeLists.txt" files test for GLES support by +# testing whether the "Qt5::Gui" list property defined by +# "/usr/lib64/cmake/Qt5Gui/Qt5GuiConfig.cmake" at "dev-qt/qtgui" installation +# time contains the substring "opengles2". Since cmake does not permit +# properties to be overridden from the command line, these files must instead +# be conditionally patched to avoid these tests. An issue should be filed with +# upstream requesting a CLI-settable variable to control this. + +MY_P=pyside-setup-opensource-src-${PV} + +DESCRIPTION="Python bindings for the Qt framework" +HOMEPAGE="https://wiki.qt.io/PySide2" +SRC_URI="https://download.qt.io/official_releases/QtForPython/pyside2/PySide2-${PV}-src/${MY_P}.tar.xz" +S="${WORKDIR}/${MY_P}/sources/pyside2" + +# See "sources/pyside2/PySide2/licensecomment.txt" for licensing details. +# Shall we allow essential modules to be disabled? They are: +# (core), gui, widgets, printsupport, sql, network, testlib, concurrent, +# x11extras (for X) +LICENSE="|| ( GPL-2 GPL-3+ LGPL-3 )" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86" +IUSE=" + 3d charts +concurrent datavis designer gles2-only +gui help location + multimedia +network positioning +printsupport qml quick script scripttools + scxml sensors speech +sql svg test +testlib webchannel webengine websockets + +widgets +x11extras xml xmlpatterns +" + +# Manually reextract these requirements on version bumps by running the +# following one-liners from within "${S}": +# $ grep 'set.*_deps' PySide2/Qt*/CMakeLists.txt +# $ cat /lib64/cmake/Qt5*/Qt5*.cmake | grep -i DEPENDENCIES +# Note that the "designer" USE flag corresponds to the "Qt5UiTools" module. +REQUIRED_USE="${PYTHON_REQUIRED_USE} + 3d? ( gui network ) + charts? ( gui widgets ) + datavis? ( gui ) + designer? ( gui widgets xml ) + gles2-only? ( gui ) + help? ( gui sql widgets ) + location? ( gui network positioning quick ) + multimedia? ( gui network widgets ) + printsupport? ( gui widgets ) + qml? ( gui network ) + quick? ( gui network qml widgets network ) + scripttools? ( gui script widgets ) + speech? ( multimedia ) + sql? ( widgets ) + svg? ( widgets ) + testlib? ( widgets ) + webchannel? ( qml ) + webengine? ( + gui network positioning quick qml + widgets? ( printsupport network webchannel ) + ) + websockets? ( network ) + widgets? ( gui ) + x11extras? ( gui ) +" + +# Tests fail pretty bad and I'm not fixing them right now +RESTRICT="test" + +# Minimal supported version of Qt. +QT_PV="$(ver_cut 1-3)*:5" + +RDEPEND="${PYTHON_DEPS} + ~dev-python/shiboken2-${PV}[${PYTHON_USEDEP}] + =dev-qt/qtcore-${QT_PV} + =dev-qt/qtopengl-${QT_PV}[gles2-only=] + =dev-qt/qtserialport-${QT_PV} + 3d? ( =dev-qt/qt3d-${QT_PV}[qml?,gles2-only=] ) + charts? ( =dev-qt/qtcharts-${QT_PV}[qml?] ) + concurrent? ( =dev-qt/qtconcurrent-${QT_PV} ) + datavis? ( =dev-qt/qtdatavis3d-${QT_PV}[qml?,gles2-only=] ) + designer? ( =dev-qt/designer-${QT_PV} ) + gui? ( =dev-qt/qtgui-${QT_PV}[jpeg,gles2-only=] ) + help? ( =dev-qt/qthelp-${QT_PV} ) + location? ( =dev-qt/qtlocation-${QT_PV} ) + multimedia? ( =dev-qt/qtmultimedia-${QT_PV}[qml?,gles2-only=,widgets?] ) + network? ( =dev-qt/qtnetwork-${QT_PV} ) + positioning? ( =dev-qt/qtpositioning-${QT_PV}[qml?] ) + printsupport? ( =dev-qt/qtprintsupport-${QT_PV}[gles2-only=] ) + qml? ( =dev-qt/qtdeclarative-${QT_PV}[widgets?] ) + quick? ( + =dev-qt/qtdeclarative-${QT_PV}[widgets?] + =dev-qt/qtquickcontrols2-${QT_PV}[widgets?] + ) + script? ( =dev-qt/qtscript-${QT_PV}[scripttools?] ) + scxml? ( =dev-qt/qtscxml-${QT_PV} ) + sensors? ( =dev-qt/qtsensors-${QT_PV}[qml?] ) + speech? ( =dev-qt/qtspeech-${QT_PV} ) + sql? ( =dev-qt/qtsql-${QT_PV} ) + svg? ( =dev-qt/qtsvg-${QT_PV} ) + testlib? ( =dev-qt/qttest-${QT_PV} ) + webchannel? ( =dev-qt/qtwebchannel-${QT_PV}[qml] ) + webengine? ( || ( + =dev-qt/qtwebengine-${QT_PV}[alsa,widgets?] + =dev-qt/qtwebengine-${QT_PV}[pulseaudio,widgets?] + ) + ) + websockets? ( =dev-qt/qtwebsockets-${QT_PV}[qml?] ) + widgets? ( =dev-qt/qtwidgets-${QT_PV}[gles2-only=] ) + x11extras? ( =dev-qt/qtx11extras-${QT_PV} ) + xml? ( =dev-qt/qtxml-${QT_PV} ) + xmlpatterns? ( =dev-qt/qtxmlpatterns-${QT_PV}[qml?] ) +" +DEPEND="${RDEPEND} + test? ( x11-misc/xvfb-run ) +" + +src_configure() { + # See COLLECT_MODULE_IF_FOUND macros in CMakeLists.txt + local mycmakeargs=( + -DBUILD_TESTS=$(usex test) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt53DAnimation=$(usex !3d) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt53DCore=$(usex !3d) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt53DExtras=$(usex !3d) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt53DInput=$(usex !3d) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt53DLogic=$(usex !3d) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt53DRender=$(usex !3d) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Charts=$(usex !charts) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Concurrent=$(usex !concurrent) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5DataVisualization=$(usex !datavis) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Designer=$(usex !designer) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Gui=$(usex !gui) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Help=$(usex !help) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Location=$(usex !location) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Multimedia=$(usex !multimedia) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5MultimediaWidgets=$(usex !multimedia yes $(usex !widgets)) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Network=$(usex !network) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Positioning=$(usex !positioning) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5PrintSupport=$(usex !printsupport) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Qml=$(usex !qml) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Quick=$(usex !quick) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5QuickControls2=$(usex !quick) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5QuickWidgets=$(usex !quick yes $(usex !widgets)) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Script=$(usex !script) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5ScriptTools=$(usex !scripttools) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Scxml=$(usex !scxml) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Sensors=$(usex !sensors) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5TextToSpeech=$(usex !speech) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Sql=$(usex !sql) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Svg=$(usex !svg) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Test=$(usex !testlib) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5UiTools=$(usex !designer) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5WebChannel=$(usex !webchannel) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5WebEngine=$(usex !webengine) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5WebEngineCore=$(usex !webengine) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5WebEngineWidgets=$(usex !webengine yes $(usex !widgets)) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5WebSockets=$(usex !websockets) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Widgets=$(usex !widgets) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5X11Extras=$(usex !x11extras) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Xml=$(usex !xml) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt5XmlPatterns=$(usex !xmlpatterns) + ) + + pyside2_configure() { + local mycmakeargs=( + "${mycmakeargs[@]}" + -DPYTHON_CONFIG_SUFFIX="-${EPYTHON}" + -DPYTHON_EXECUTABLE="${PYTHON}" + -DPYTHON_SITE_PACKAGES="$(python_get_sitedir)" + -DSHIBOKEN_PYTHON_SHARED_LIBRARY_SUFFIX="-${EPYTHON}" + ) + cmake_src_configure + } + python_foreach_impl pyside2_configure +} + +src_compile() { + python_foreach_impl cmake_src_compile +} + +src_test() { + local -x PYTHONDONTWRITEBYTECODE + python_foreach_impl virtx cmake_src_test +} + +src_install() { + pyside2_install() { + cmake_src_install + python_optimize + + # Uniquify the shiboken2 pkgconfig dependency in the PySide2 pkgconfig + # file for the current Python target. See also: + # https://github.com/leycec/raiagent/issues/73 + sed -i -e 's~^Requires: shiboken2$~&-'${EPYTHON}'~' \ + "${ED}/usr/$(get_libdir)"/pkgconfig/${PN}.pc || die + + # Uniquify the PySide2 pkgconfig file for the current Python target, + # preserving an unversioned "pyside2.pc" file arbitrarily associated + # with the last Python target. (See the previously linked issue.) + cp "${ED}/usr/$(get_libdir)"/pkgconfig/${PN}{,-${EPYTHON}}.pc || die + } + python_foreach_impl pyside2_install + + # CMakeLists.txt installs a "PySide2Targets-gentoo.cmake" file forcing + # downstream consumers (e.g., pyside2-tools) to target one + # "libpyside2-*.so" library linked to one Python interpreter. See also: + # https://bugreports.qt.io/browse/PYSIDE-1053 + # https://github.com/leycec/raiagent/issues/74 + sed -i -e 's~pyside2-python[[:digit:]]\+\.[[:digit:]]\+~pyside2${PYTHON_CONFIG_SUFFIX}~g' \ + "${ED}/usr/$(get_libdir)"/cmake/PySide2*/PySide2Targets-${CMAKE_BUILD_TYPE,,}.cmake || die +} diff --git a/dev-python/pyside6-tools/Manifest b/dev-python/pyside6-tools/Manifest index 242a46be20a9..844ebc5547a0 100644 --- a/dev-python/pyside6-tools/Manifest +++ b/dev-python/pyside6-tools/Manifest @@ -1,3 +1,5 @@ DIST pyside-setup-everywhere-src-6.5.2.tar.xz 13576204 BLAKE2B 3e1d62e6d877140137896552184c8fe56fd62056a1ea506ab474256ee0e2f16d3e10ddb84965602650bb466f3563555c3c344698b6877a45f9130d1e919aba21 SHA512 ca677645579fc6b82285dd6c294909ca5e91a8c8efbc53bd103aff64e3ef89eff67820bfc9100cf50f043015d41c49d4ff86b3008f02505941a09bd54621f403 +DIST pyside-setup-everywhere-src-6.5.3.tar.xz 13577208 BLAKE2B 7a26302d17163e3fd7478571d99116d7eec01ee3ce369c58870fed565258419f8c6cdf88b4cd2b9b48a21ab1e40d5b85ed912e3cd2210cf22707da88c42ad277 SHA512 3fbcc0bb340d5b02616df061d1c1bf08494db5d35297db47ebb2f965efd347bf8412236bb43952b65b787d08d29adf5998cd92c3ff359f728a9006e07a278519 EBUILD pyside6-tools-6.5.2.ebuild 1381 BLAKE2B 3cc72a8fb39ed8608af3519ce915576ca1c50ed436a8e2fd9e6d8966ce54ff8ecbe3bdfab04368c713c7ea390354c26d6e34103145e2b7451a88f71c78d9c3de SHA512 c8d33463faab4d3eb172105b9108688120bc3d13170b93540b7cdeeed77a284959581c92264b1b2615d4d2ac94ff38fab2117776e161059fda7ead322ed3e461 +EBUILD pyside6-tools-6.5.3.ebuild 1381 BLAKE2B 3cc72a8fb39ed8608af3519ce915576ca1c50ed436a8e2fd9e6d8966ce54ff8ecbe3bdfab04368c713c7ea390354c26d6e34103145e2b7451a88f71c78d9c3de SHA512 c8d33463faab4d3eb172105b9108688120bc3d13170b93540b7cdeeed77a284959581c92264b1b2615d4d2ac94ff38fab2117776e161059fda7ead322ed3e461 MISC metadata.xml 402 BLAKE2B 28348df442d189eadb56e04dfda71c1d5a56868aae85611a7d77ecdc7651e34ce02563c8da1270aad55758e2dd4301de44434e0bbdb010ef484e240068602ede SHA512 a54866110e38c24d67d60286c64b63dc0b537c55eb201b84b9173b47710b6e8a840d9072ca46fbef969bf481e43e1d8824b20655d7fe6b300cfd5333c3f74a41 diff --git a/dev-python/pyside6-tools/pyside6-tools-6.5.3.ebuild b/dev-python/pyside6-tools/pyside6-tools-6.5.3.ebuild new file mode 100644 index 000000000000..c79229966af6 --- /dev/null +++ b/dev-python/pyside6-tools/pyside6-tools-6.5.3.ebuild @@ -0,0 +1,64 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# TODO: Add PyPy once officially supported. See also: +# https://bugreports.qt.io/browse/PYSIDE-535 +PYTHON_COMPAT=( python3_{10..11} ) +CMAKE_IN_SOURCE_BUILD=1 + +inherit cmake python-r1 + +MY_PN="pyside-setup-everywhere-src" + +DESCRIPTION="PySide development tools (pyside6-lupdate with support for Python)" +HOMEPAGE="https://wiki.qt.io/PySide6" +SRC_URI="https://download.qt.io/official_releases/QtForPython/pyside6/PySide6-${PV}-src/${MY_PN}-${PV}.tar.xz" +S="${WORKDIR}/${MY_PN}-$(ver_cut 1-3)/sources/pyside-tools" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND="${PYTHON_DEPS} + ~dev-python/pyside6-${PV}[${PYTHON_USEDEP}] +" +DEPEND="${RDEPEND}" + +src_prepare() { + cmake_src_prepare + + python_copy_sources +} + +src_configure() { + pyside-tools_configure() { + local mycmakeargs=( + # the tools conflict with tools from Qt + -DNO_QT_TOOLS=yes + ) + CMAKE_USE_DIR="${BUILD_DIR}" cmake_src_configure + } + + python_foreach_impl pyside-tools_configure +} + +src_compile() { + pyside-tools_compile() { + CMAKE_USE_DIR="${BUILD_DIR}" cmake_src_compile + } + + python_foreach_impl pyside-tools_compile +} + +src_install() { + pyside-tools_install() { + python_doexe "${BUILD_DIR}/"*.py + } + + python_foreach_impl pyside-tools_install + + einstalldocs +} diff --git a/dev-python/pyside6/Manifest b/dev-python/pyside6/Manifest index 51a07d639747..32f615cd38dd 100644 --- a/dev-python/pyside6/Manifest +++ b/dev-python/pyside6/Manifest @@ -1,5 +1,7 @@ AUX pyside6-6.3.1-fix-designer-plugin-install-location.patch 685 BLAKE2B 2f3b3873f4f1f46b737ae85467798b25fd1634a15a391cd7fa04a1c391a56cd57a68ec4f98b51460cd805fc75cc0ee50b9addc4a757520429f6b7e66101ed609 SHA512 76ca097b42b47d3b290966fe805b1b4f58e04ab05d8e5420dfa1014e3399452a0326d964d2304068c78a6a82bcea2883d5c9e6a51b383a7f96a7520cfebdfcad AUX pyside6-6.3.1-no-strip.patch 953 BLAKE2B f88bac603a584213a864fcfc7c528f1d236ebdbfb653c3877316cd0b95c30c2f7288b1c81c6a90a3e4228536da4aa63552991fefa952f450b0b852b3e2aed94a SHA512 2920075a26fc059bdebc8eb5fa7c15de74729b7f8d1eb59197f7426afa7a65f1f78a8ebb76e946b2dfaf5817dbf090744bafaed2f2156f2d1548c2932a7ce61a DIST pyside-setup-everywhere-src-6.5.2.tar.xz 13576204 BLAKE2B 3e1d62e6d877140137896552184c8fe56fd62056a1ea506ab474256ee0e2f16d3e10ddb84965602650bb466f3563555c3c344698b6877a45f9130d1e919aba21 SHA512 ca677645579fc6b82285dd6c294909ca5e91a8c8efbc53bd103aff64e3ef89eff67820bfc9100cf50f043015d41c49d4ff86b3008f02505941a09bd54621f403 +DIST pyside-setup-everywhere-src-6.5.3.tar.xz 13577208 BLAKE2B 7a26302d17163e3fd7478571d99116d7eec01ee3ce369c58870fed565258419f8c6cdf88b4cd2b9b48a21ab1e40d5b85ed912e3cd2210cf22707da88c42ad277 SHA512 3fbcc0bb340d5b02616df061d1c1bf08494db5d35297db47ebb2f965efd347bf8412236bb43952b65b787d08d29adf5998cd92c3ff359f728a9006e07a278519 EBUILD pyside6-6.5.2-r3.ebuild 9222 BLAKE2B d25102cfaa39004455472d64873f8ff55494ed97fd5f9d34bef2da67eadddfb2b78f827f7b6babfc819deee0b1ce570f1202a3299812b2fe1701f05c02c23a71 SHA512 14a6ff64be79c6519167fd803d7d9a3fc195a871d807d1c27a0d072c4295f94e5debb894164d02df827c18bd3f3b9f0aa55c4d304e732de46208c00bdc34bcda +EBUILD pyside6-6.5.3.ebuild 9222 BLAKE2B d25102cfaa39004455472d64873f8ff55494ed97fd5f9d34bef2da67eadddfb2b78f827f7b6babfc819deee0b1ce570f1202a3299812b2fe1701f05c02c23a71 SHA512 14a6ff64be79c6519167fd803d7d9a3fc195a871d807d1c27a0d072c4295f94e5debb894164d02df827c18bd3f3b9f0aa55c4d304e732de46208c00bdc34bcda MISC metadata.xml 1830 BLAKE2B fe8b0657824ef49182b8a5ac334539e10ff88d56f1d0ff517ce9247f0ec1c8b82158688fefde8e01c99fadcb0268e6e0109fef49830ffdec821e803e2ad23517 SHA512 4b49ec54b699673da2c9173f849f70e2a42321608c2893fa9d161a2ff51a917864042b3c0421c3723b98bcbde0d53e78e8c832f25a689dc7e3499d05446a014b diff --git a/dev-python/pyside6/pyside6-6.5.3.ebuild b/dev-python/pyside6/pyside6-6.5.3.ebuild new file mode 100644 index 000000000000..876632c3a7b8 --- /dev/null +++ b/dev-python/pyside6/pyside6-6.5.3.ebuild @@ -0,0 +1,227 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# TODO: Add PyPy once officially supported. See also: +# https://bugreports.qt.io/browse/PYSIDE-535 +PYTHON_COMPAT=( python3_{10..11} ) + +inherit cmake python-r1 virtualx + +# TODO: Add conditional support for "QtRemoteObjects" via a new "remoteobjects" +# USE flag after an external "dev-qt/qtremoteobjects" package has been created. +# TODO: Add conditional support for apidoc generation via a new "doc" USE flag. +# Note that doing so requires the Qt source tree, sphinx, and graphviz. Once +# ready, pass the ${QT_SRC_DIR} variable to cmake to enable this support. +# TODO: Disable GLES support if the "gles2-only" USE flag is disabled. Note +# that the "PySide6/QtGui/CMakeLists.txt" and +# "PySide6/QtOpenGLFunctions/CMakeLists.txt" files test for GLES support by +# testing whether the "Qt5::Gui" list property defined by +# "/usr/lib64/cmake/Qt5Gui/Qt5GuiConfig.cmake" at "dev-qt/qtgui" installation +# time contains the substring "opengles2". Since cmake does not permit +# properties to be overridden from the command line, these files must instead +# be conditionally patched to avoid these tests. An issue should be filed with +# upstream requesting a CLI-settable variable to control this. + +MY_PN="pyside-setup-everywhere-src" + +DESCRIPTION="Python bindings for the Qt framework" +HOMEPAGE="https://wiki.qt.io/PySide6" +SRC_URI="https://download.qt.io/official_releases/QtForPython/pyside6/PySide6-${PV}-src/${MY_PN}-${PV}.tar.xz" +S="${WORKDIR}/${MY_PN}-$(ver_cut 1-3)/sources/pyside6" + +# See "sources/pyside6/PySide6/licensecomment.txt" for licensing details. +# Shall we allow essential modules to be disabled? They are: +# (core), gui, widgets, printsupport, sql, network, testlib, concurrent, +# x11extras (for X) +LICENSE="|| ( GPL-2 GPL-3+ LGPL-3 )" +SLOT="0" +KEYWORDS="~amd64" +IUSE=" + +dbus charts +concurrent designer gles2-only +gui help multimedia + +network network-auth +opengl positioning +printsupport qml quick + quick3d serialport +sql svg test +testlib webchannel webengine + websockets +widgets +xml +" + +# Manually reextract these requirements on version bumps by running the +# following one-liner from within "${S}": +# $ grep 'set.*_deps' PySide6/Qt*/CMakeLists.txt +# Note that the "designer" USE flag corresponds to the "Qt6UiTools" module. +REQUIRED_USE="${PYTHON_REQUIRED_USE} + charts? ( gui widgets ) + designer? ( widgets ) + gles2-only? ( gui ) + gui? ( dbus opengl ) + help? ( network sql widgets ) + multimedia? ( gui network ) + network-auth? ( network ) + opengl? ( gui ) + printsupport? ( widgets ) + qml? ( network ) + quick? ( gui network opengl qml ) + quick3d? ( gui network opengl qml quick ) + sql? ( widgets ) + svg? ( gui ) + testlib? ( widgets ) + webchannel? ( qml ) + webengine? ( network gui printsupport quick webchannel ) + websockets? ( network ) + widgets? ( gui ) +" + +# Tests fail pretty bad and I'm not fixing them right now +RESTRICT="test" + +# Minimal supported version of Qt. +QT_PV="$(ver_cut 1-3)*:6" + +RDEPEND="${PYTHON_DEPS} + ~dev-python/shiboken6-${PV}[${PYTHON_USEDEP}] + =dev-qt/qtbase-${QT_PV}[concurrent?,dbus?,gles2-only=,network?,opengl?,sql?,widgets?,xml?] + charts? ( =dev-qt/qtcharts-${QT_PV} ) + designer? ( =dev-qt/qttools-${QT_PV}[designer] ) + gui? ( + =dev-qt/qtbase-${QT_PV}[gui,jpeg(+)] + x11-libs/libxkbcommon + ) + help? ( =dev-qt/qttools-${QT_PV}[assistant] ) + multimedia? ( =dev-qt/qtmultimedia-${QT_PV} ) + network-auth? ( =dev-qt/qtnetworkauth-${QT_PV} ) + positioning? ( =dev-qt/qtpositioning-${QT_PV} ) + printsupport? ( =dev-qt/qtbase-${QT_PV}[gui,widgets] ) + qml? ( =dev-qt/qtdeclarative-${QT_PV}[widgets?] ) + quick3d? ( =dev-qt/qtquick3d-${QT_PV} ) + serialport? ( =dev-qt/qtserialport-${QT_PV} ) + svg? ( =dev-qt/qtsvg-${QT_PV} ) + testlib? ( =dev-qt/qtbase-${QT_PV}[gui] ) + webchannel? ( =dev-qt/qtwebchannel-${QT_PV} ) + webengine? ( || ( + =dev-qt/qtwebengine-${QT_PV}[alsa,widgets?] + =dev-qt/qtwebengine-${QT_PV}[pulseaudio,widgets?] + ) + ) + websockets? ( =dev-qt/qtwebsockets-${QT_PV} ) +" +DEPEND="${RDEPEND} + test? ( =dev-qt/qtbase-${QT_PV}[gui] ) +" +# testlib is toggled by the gui flag on qtbase + +PATCHES=( + "${FILESDIR}/${PN}-6.3.1-no-strip.patch" + "${FILESDIR}/${PN}-6.3.1-fix-designer-plugin-install-location.patch" +) + +src_configure() { + # See collect_module_if_found macros in PySideHelpers.cmake + local mycmakeargs=( + -DBUILD_TESTS=$(usex test) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt63DAnimation=yes + -DCMAKE_DISABLE_FIND_PACKAGE_Qt63DCore=yes + -DCMAKE_DISABLE_FIND_PACKAGE_Qt63DExtras=yes + -DCMAKE_DISABLE_FIND_PACKAGE_Qt63DInput=yes + -DCMAKE_DISABLE_FIND_PACKAGE_Qt63DLogic=yes + -DCMAKE_DISABLE_FIND_PACKAGE_Qt63DRender=yes + #-DCMAKE_DISABLE_FIND_PACKAGE_Qt6AxContainer=yes + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Bluetooth=yes + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Charts=$(usex !charts) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Concurrent=$(usex !concurrent) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6DataVisualization=yes + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6DBus=$(usex !dbus) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Designer=$(usex !designer) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Gui=$(usex !gui) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Help=$(usex !help) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6HttpServer=yes + #-DCMAKE_DISABLE_FIND_PACKAGE_Qt6Location=yes + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Multimedia=$(usex !multimedia) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6MultimediaWidgets=$(usex !multimedia yes $(usex !widgets)) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6NetworkAuth=$(usex !network-auth) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Network=$(usex !network) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Nfc=yes + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6OpenGL=$(usex !opengl) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6OpenGLWidgets=$(usex !opengl yes $(usex !widgets)) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Pdf=yes + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6PdfWidgets=yes + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Positioning=$(usex !positioning) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6PrintSupport=$(usex !printsupport) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Qml=$(usex !qml) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Quick3D=$(usex !quick3d) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Quick=$(usex !quick) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6QuickControls2=yes + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6QuickWidgets=$(usex !quick yes $(usex !widgets)) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6RemoteObjects=yes + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Scxml=yes + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Sensors=yes + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6SerialPort=$(usex !serialport) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6SpatialAudio=yes + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Sql=$(usex !sql) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6StateMachine=yes + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Svg=$(usex !svg) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6SvgWidgets=$(usex !svg yes $(usex !widgets)) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Test=$(usex !testlib) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6TextToSpeech=yes + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6UiTools=$(usex !designer) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6WebChannel=$(usex !webchannel) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6WebEngineCore=$(usex !webengine) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6WebEngineQuick=$(usex !webengine yes $(usex !quick)) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6WebEngineWidgets=$(usex !webengine yes $(usex !widgets)) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6WebSockets=$(usex !websockets) + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Widgets=$(usex !widgets) + #-DCMAKE_DISABLE_FIND_PACKAGE_Qt6WinExtras=yes + -DCMAKE_DISABLE_FIND_PACKAGE_Qt6Xml=$(usex !xml) + # try to avoid pre-stripping + -DQFP_NO_OVERRIDE_OPTIMIZATION_FLAGS=yes + -DQFP_NO_STRIP=yes + + ) + + pyside6_configure() { + local mycmakeargs=( + "${mycmakeargs[@]}" + -DPYTHON_CONFIG_SUFFIX="-${EPYTHON}" + -DPYTHON_EXECUTABLE="${PYTHON}" + -DPYTHON_SITE_PACKAGES="$(python_get_sitedir)" + -DSHIBOKEN_PYTHON_SHARED_LIBRARY_SUFFIX="-${EPYTHON}" + ) + cmake_src_configure + } + python_foreach_impl pyside6_configure +} + +src_compile() { + python_foreach_impl cmake_src_compile +} + +src_test() { + local -x PYTHONDONTWRITEBYTECODE + python_foreach_impl virtx cmake_src_test +} + +src_install() { + pyside6_install() { + cmake_src_install + python_optimize + + # Uniquify the shiboken6 pkgconfig dependency in the PySide6 pkgconfig + # file for the current Python target. See also: + # https://github.com/leycec/raiagent/issues/73 + sed -i -e 's~^Requires: shiboken6$~&-'${EPYTHON}'~' \ + "${ED}/usr/$(get_libdir)"/pkgconfig/${PN}.pc || die + + # Uniquify the PySide6 pkgconfig file for the current Python target, + # preserving an unversioned "pyside6.pc" file arbitrarily associated + # with the last Python target. (See the previously linked issue.) + cp "${ED}/usr/$(get_libdir)"/pkgconfig/${PN}{,-${EPYTHON}}.pc || die + } + python_foreach_impl pyside6_install + + # CMakeLists.txt installs a "PySide6Targets-gentoo.cmake" file forcing + # downstream consumers (e.g., pyside6-tools) to target one + # "libpyside6-*.so" library linked to one Python interpreter. See also: + # https://bugreports.qt.io/browse/PYSIDE-1053 + # https://github.com/leycec/raiagent/issues/74 + sed -i -e 's~pyside6-python[[:digit:]]\+\.[[:digit:]]\+~pyside6${PYTHON_CONFIG_SUFFIX}~g' \ + "${ED}/usr/$(get_libdir)/cmake/PySide6/PySide6Targets-${CMAKE_BUILD_TYPE,,}.cmake" || die +} diff --git a/dev-python/python3-saml/Manifest b/dev-python/python3-saml/Manifest index 35d9c3d94955..bd94befa04af 100644 --- a/dev-python/python3-saml/Manifest +++ b/dev-python/python3-saml/Manifest @@ -1,3 +1,5 @@ DIST python3-saml-1.15.0.gh.tar.gz 511199 BLAKE2B c1dafb5ff9c45a79042915261cdc380a1ca77b56d518999164f48c904e53a486d157e5b522b77df9abea2b3306f8b17a06a7ac3e41ad0c86bea2c08468199e60 SHA512 8ecfd827e3b90f65a04ed46f8efd49680d42ecaa46b46857e0f712c2996207a8aa38834f55ec35e599845f6921bd4d82d76e549494c71cc5ffd918e70b87b6a8 +DIST python3-saml-1.16.0.gh.tar.gz 3578998 BLAKE2B 94fc65caf978aeb30577ff435ce874c1fbb15dac0c5028e15a8adb21631496b9382d538c80ae77e1ba4166d2fbf22c7ac96bce7b6e3533589a6b8654f5be35ee SHA512 77e779a3d3190f3164105bbc2943b54729dfef12c71b0303a523acada95da291bc77b331a83726f00c503ef09040a05180c234620e5a65d4ea4fd88da24eeade EBUILD python3-saml-1.15.0.ebuild 896 BLAKE2B b30e3b9767cecff1d23c4c06cb6141a2b5044ad10e0b028ce5d5b6dd532d713ae67599b81347e3017a3b446dd07d26618d8dd63829fdf209ec92a337fa09a53c SHA512 75bd00f811f95b1e912eec5137359f029a62594091f350638174f19230f49c79d8cf695e731eb2d020fc3ac19db2ba331f33ae02c5d6bbd30178f916b2cd7e95 +EBUILD python3-saml-1.16.0.ebuild 1205 BLAKE2B f1f92603cafca7596f54923a56b21eaa5b79888bf4c9d34995d77870c7879f85d0927e4552fc4fc36ea2fc5639152f88e50442bb089f1ff0e12763a30c0fc319 SHA512 9f5640255b29ed640ccb1cb9b84b760316f974d7584dc01d2a300c364f16e8155567d44c18b7232336365b2057b8e8d5d4ecfd8f4e2c74b7b6f858f8a19c41c1 MISC metadata.xml 492 BLAKE2B ca47379cffabb1ea29ebd103e865a37dd680753f1816fbc38796faea21611dd305a9b423f007d06b15a5dfb03a813feadef810a35b794912c5799eaa780a8ce5 SHA512 0954909199f1c46bdb35c8ad95794bdc8be1dbacd888809cc32b3404b2053cdc90aed275e5c51d6a4aad9a9b68d84e83749051c7117ac98cd12ef73331a8cd16 diff --git a/dev-python/python3-saml/python3-saml-1.16.0.ebuild b/dev-python/python3-saml/python3-saml-1.16.0.ebuild new file mode 100644 index 000000000000..cf677a8893b4 --- /dev/null +++ b/dev-python/python3-saml/python3-saml-1.16.0.ebuild @@ -0,0 +1,49 @@ +# Copyright 2020-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=poetry +PYTHON_COMPAT=( python3_{10..11} ) + +inherit distutils-r1 + +DESCRIPTION="OneLogin's SAML Python Toolkit" +HOMEPAGE=" + https://github.com/SAML-Toolkits/python3-saml/ + https://pypi.org/project/python3-saml/ +" +SRC_URI=" + https://github.com/SAML-Toolkits/python3-saml/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~ppc64 ~x86" + +RDEPEND=" + >=dev-python/isodate-0.6.1[${PYTHON_USEDEP}] + >=dev-python/lxml-4.9.0[${PYTHON_USEDEP}] + >=dev-python/xmlsec-1.3.9[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/freezegun[${PYTHON_USEDEP}] + dev-python/pytest[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +python_test() { + local EPYTEST_DESELECT=( + # Internet + tests/src/OneLogin/saml2_tests/idp_metadata_parser_test.py::OneLogin_Saml2_IdPMetadataParser_Test::testGetMetadataWithHeaders + tests/src/OneLogin/saml2_tests/idp_metadata_parser_test.py::OneLogin_Saml2_IdPMetadataParser_Test::testParseRemoteWithHeaders + ) + + # The tests are horribly fragile to paths. + local -x PYTHONPATH=src + epytest -o 'python_files=*_test.py' +} diff --git a/dev-python/rapidfuzz/Manifest b/dev-python/rapidfuzz/Manifest index b369f56ef675..c358264abece 100644 --- a/dev-python/rapidfuzz/Manifest +++ b/dev-python/rapidfuzz/Manifest @@ -3,9 +3,11 @@ DIST rapidfuzz-3.1.2.tar.gz 1280133 BLAKE2B 5f1d3175bc5ded1900f31c73d0e9fdfd6035 DIST rapidfuzz-3.2.0.tar.gz 1472554 BLAKE2B 7946f6139aec1ca9ccc623750bd09601e04171f3030bb7cfeac5cedf9ec1a639c444e9fd3394efde199e447a6834dce46be20dfb8be33232a324e4dea23b9cf1 SHA512 0ea0ecc62e2493519a302edd090521ed7efeae35e73812aeadaca2e2369362b57b1a095a09296edfa8db07b6bf58de4451dc71e96e6c215ebbe96dc1f8e7e995 DIST rapidfuzz-3.3.0.tar.gz 1507179 BLAKE2B 59f45a3a2551d4ccc1e3c077abbd2ce2e569be51dd72b0378a2744557d65588d9a98c53048471fe8f1b4600f3b997e26477d65bac983954ae9d8331aea4dc5c3 SHA512 ee3a362f7c9bf4c54cff93a8c3d830541f07ed67628469b1406261fca086bd15eb4a418ece56fa3e4f25e0c6b859080d19582f5eea90547541a39d35ec70ea19 DIST rapidfuzz-3.3.1.tar.gz 1507246 BLAKE2B 66964d155d682704266a32ce6632d91db4c0fdcf82722c6d58e7c305b0c4a341890b3c57d9936cc0f019b4aa5658279fc6d2f8885c17096ed8cb1721e2c633d3 SHA512 13f32818bdf1e71a30610c252afa1685ad64b858bff5b4309b5dfeca5f281096fc9fcd0683ed543bca0cee00db96df1c4fb6e0b76408c3694b508a9735d6cffc +DIST rapidfuzz-3.4.0.tar.gz 1490201 BLAKE2B c82d72d2ef807f236ab9f0807de466f3434fbfc143cbe2128520003f8d300a6bed3a5967ee7bc48a354be4c549557e85a05c4d2d45d294b8a9b93cef71f2d7ff SHA512 b90ef939d53b9ae775422ded53d9523da49c09a4e78aefeb19e2b47f365de00ae0e6d5729171aa28057011551308ae240114edaab7876687983aaed53176f3dd EBUILD rapidfuzz-3.1.1.ebuild 1142 BLAKE2B 3b40fe069a5fafbdca34c9280be10b59d8cfadcb74aecb74dff5ed4a8746342a65bdd9b186746a17edfca492e824037d291694ce61c359621a3e9dbf3cabd02b SHA512 30cb62c353237f9e9c03bab362195fbb24f01cbf9bff6e0d3ed1765bdd2402f5f324de7c62fd5117b06eb0a87b194ee476df6a2da1ad778521218e785dfbbcd8 EBUILD rapidfuzz-3.1.2.ebuild 1212 BLAKE2B 34efa40553e76336f3cd31ed176d9f1ded6c137ced880e63fb3c1644068d6129a5ef11908357be8510f4dbdddcb781aad8a8b184787e5dc6f134309bca68cf41 SHA512 76c49ee7537e3f25d1a252712058919b3311805bf2039aa5876a6cde6b17bd0b4a386062d722c18661272a097d5c14f50eaffce0e2d67a5a6e6c580be086e941 EBUILD rapidfuzz-3.2.0.ebuild 1225 BLAKE2B 0c1d62dde943fbce8322234df770b2befdd184bf3e8bfd50eea7a105255a53ff577bf61689264fe46584af3f7a21f942c33f2c1c706fd9dac688dddd41a82b0a SHA512 f3ae71a9f9d360345ca050527a9d4bc6ad78177c64cc5cbb30cb4130cbc04d6d24cc2a7d146762cdb9b52df1389b09856cd37e434920e93e0c253c3d8e3fcca7 EBUILD rapidfuzz-3.3.0.ebuild 1219 BLAKE2B a6944b7b3b0c25a8a56a10a33b19d882a43bc659f59975fb3b1645ed53cf270bf40968a09eb183e754e0693b84c2e39994ab648aadf47cf0386a41e8645e641f SHA512 08a2271491eebd3896d1971d0812699d1eeea7ff348e5c536405d76bf469ab60530fde2ab3df96aa387c46928ddddef7f340bf41805edf5d4f04a9e7834e049c EBUILD rapidfuzz-3.3.1.ebuild 1225 BLAKE2B 0c1d62dde943fbce8322234df770b2befdd184bf3e8bfd50eea7a105255a53ff577bf61689264fe46584af3f7a21f942c33f2c1c706fd9dac688dddd41a82b0a SHA512 f3ae71a9f9d360345ca050527a9d4bc6ad78177c64cc5cbb30cb4130cbc04d6d24cc2a7d146762cdb9b52df1389b09856cd37e434920e93e0c253c3d8e3fcca7 +EBUILD rapidfuzz-3.4.0.ebuild 1225 BLAKE2B c0fa149bf273c9a8d51e47d72e38d1304d68c6b0ab1400c757b4fe4cfdac8310a58bf5a399507afacc73fc7d2138044d12a9dabb909e44d756a4df56e583021e SHA512 78d01ae760be9c8a0b4b58d8fe698e46ced9dfe1dc8bc081fd6459a37152a63c70c3fb06b5ecf6be43345e245d064a59fc970af24645b40c818b2cc91ca26e78 MISC metadata.xml 374 BLAKE2B e6ee89a9850276b8c22c9bc851ebea2cde2ea696d122d70c6465e09a9371c59f81d1976b3253e8ee90afae5e3e30e993481b402058bac0c58ec01f71a0b7c3b4 SHA512 9a39c4bcf8e8de0a6d6a356a9aeb415f8f49667caf5716eee50bf251f1fd53bb076e817fac0b15bf64e65c1b9625c78810da61a5d96b273a20b2669a18084d6e diff --git a/dev-python/rapidfuzz/rapidfuzz-3.4.0.ebuild b/dev-python/rapidfuzz/rapidfuzz-3.4.0.ebuild new file mode 100644 index 000000000000..c8d2f8c7faa4 --- /dev/null +++ b/dev-python/rapidfuzz/rapidfuzz-3.4.0.ebuild @@ -0,0 +1,50 @@ +# Copyright 2022-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +# custom wrapper over setuptools +DISTUTILS_USE_PEP517=standalone +PYTHON_COMPAT=( python3_{10..12} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Rapid fuzzy string matching in Python using various string metrics" +HOMEPAGE=" + https://github.com/maxbachmann/RapidFuzz/ + https://pypi.org/project/rapidfuzz/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +# all these are header-only libraries +DEPEND=" + >=dev-cpp/taskflow-3.0.0 + >=dev-cpp/rapidfuzz-cpp-2.1.1 + dev-python/numpy[${PYTHON_USEDEP}] +" +BDEPEND=" + dev-python/rapidfuzz-capi[${PYTHON_USEDEP}] + >=dev-python/scikit-build-0.16.2[${PYTHON_USEDEP}] + dev-python/setuptools[${PYTHON_USEDEP}] + test? ( + dev-python/hypothesis[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +src_prepare() { + # sterilize build flags + sed -i -e '/CMAKE_INTERPROCEDURAL_OPTIMIZATION/d' CMakeLists.txt || die + # remove bundled libraries + rm -r extern || die + + distutils-r1_src_prepare + + # TODO: re-cythonnize when we can reliably dep on Cython >= 3 + export RAPIDFUZZ_BUILD_EXTENSION=1 +} diff --git a/dev-python/semver/Manifest b/dev-python/semver/Manifest index 02ba27eb14fa..b9e6abc3c4b2 100644 --- a/dev-python/semver/Manifest +++ b/dev-python/semver/Manifest @@ -1,3 +1,5 @@ DIST semver-3.0.1.tar.gz 205762 BLAKE2B f2dbe25d321938bbfe32a21ad23ae62d4033a29c0155b138586e1b9e6d32c0c90e5859dbee0705f0726f616dda10a48b69201f1b7b26cfb4cecdbf3733d7a17d SHA512 93dd23a884eb9d64aca6285840f5fd6d7fe5e21abab37ca77a35118efba1fcca67b424a86db03dc32ae355a8593c184a4b0eb3f807ff35373b84c63dd823eb3d +DIST semver-3.0.2.tar.gz 214988 BLAKE2B c436ccc99bab2044472444e48de46f7b584291872db6d311d4a16aad0755f633cbe366bd0be6149431fd2db06011018a6cc5bd527f8627a1fbed8999086d2531 SHA512 f7b848f76ae72a8f0f06800d6c02b11a07149dfdff191e356709b75ac15ad19c010d8f13bc32ea082e15858524b38639838fbc09c2d9eb067eee8e163eb1e497 EBUILD semver-3.0.1.ebuild 503 BLAKE2B e1831e7ee13076f83f229781e8eab9e577bd40e4870b7acdf260c0cc0c73c42b3dc87b0af39ccf23aa0adafc9e4ae967fbfe9406e979e595282666a20546eb1a SHA512 0d2494c7a9fd8c44dfb6c8c854cd17e9d61f089c31066132e05367f4edacbdf062f8ccd4f36c5822456dd3e108a0fe736517a856a53c458dd4970b6580beb029 +EBUILD semver-3.0.2.ebuild 561 BLAKE2B 97dda825b1cd56372b79d2482c47613b216a6d198d99f12bf20eb2bfc3ac1ca230102d35ef1cf5067c92016cec566789689e522bfd9d550cb9fcdb19e2eb8ef6 SHA512 c61145b8ecf298338303e7ba07a37ea1036b21c0bb3e57ecb776a100027e8c4ab285816bad052ed5f8eadf4914b0a48fb214d571afd67783201649889c1c3a16 MISC metadata.xml 388 BLAKE2B acaeaf260073c58d5bac6d2c59228301009c59492fd03d51ec0127229e2bbdead1d14dc716f100cd2543be8e50020f06299d6dbad125514756f7dd659b8119ae SHA512 97533f8b2877e780da67de9a47dbc87de751b4ea3831cbc44b345ba434736f584ab3e937c472f62c57410764facf76d6c8ab31857f9fd8e66626072c032a2714 diff --git a/dev-python/semver/semver-3.0.2.ebuild b/dev-python/semver/semver-3.0.2.ebuild new file mode 100644 index 000000000000..385401fa732a --- /dev/null +++ b/dev-python/semver/semver-3.0.2.ebuild @@ -0,0 +1,29 @@ +# Copyright 2019-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( pypy3 python3_{10..12} ) + +inherit distutils-r1 pypi + +DESCRIPTION="A Python module for semantic versioning" +HOMEPAGE=" + https://github.com/python-semver/python-semver/ + https://pypi.org/project/semver/ +" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" + +BDEPEND=" + dev-python/setuptools-scm[${PYTHON_USEDEP}] +" + +distutils_enable_tests pytest + +python_test() { + epytest -o addopts= +} diff --git a/dev-python/shiboken2/Manifest b/dev-python/shiboken2/Manifest index 9cf2fe4867c5..185c7861ea7a 100644 --- a/dev-python/shiboken2/Manifest +++ b/dev-python/shiboken2/Manifest @@ -3,5 +3,7 @@ AUX shiboken2-5.15.5-python311-1.patch 3124 BLAKE2B 97e51ae8cc6866da7ac9cced4f19 AUX shiboken2-5.15.5-python311-2.patch 2056 BLAKE2B c93be29e31b0fa6ce28a29de0dc4dba9635e86ba0103d77334e324a0d26f4c81c9ee6583bef146eb908fe290426eb462dd0a0f68e917ca5f3c4505742d673a0f SHA512 df6f185546180b3d27d8ed1ec1ccf90cdf3813f8928894717ad02e97f0c404b8dc00aed330e8b51aa7e04d5b3e621a15981fc911b2371542f9266c147fdf3828 AUX shiboken2-5.15.5-python311-3.patch 2363 BLAKE2B 84521be2008dda0fc9398dac2c6e235d0d976c3219f7ecf50f28938a7cce6952ec41795c2c86d0f71ccd94210661dc22a471adb2f879a133e11a3148923fd708 SHA512 540ff5afbfebcc00f20c43993f67458013f4655c06505fdf23bc26085bd2c621863dd9c28be1a20dca299113aee828974f853b145818fdb11d59fc12d0bb8c14 DIST pyside-setup-opensource-src-5.15.10.tar.xz 3583764 BLAKE2B 7e19e8f8460582012d3fec09ac99f826298cbfcd0887339c2adababb7a21bfc67a2918e91858888e89eca0a6f780929b2a7fa70c28d72ece24b7ea939ca76f56 SHA512 dc548ab870fcc5cc637de1bcb2f428527c650287fdb3720a3ade4638cc0bb12bc4a1ed87e7f6a4ec730a26742e08ceec806bcac6af91c7a01ddc0ce7980a79d2 +DIST pyside-setup-opensource-src-5.15.11.tar.xz 3584760 BLAKE2B c4d60439a218451eb0c505031524fe1e30a117b7e89a28b5cd7518c193a8d2de01a5db8cb3acdd97c81da6dddff99f786c6c763427f78cdd0af4031122ac2d24 SHA512 377b3f6a793313cf7f5bea0dcef6630bac32d79b247e213d0b1b719805b35692aa8dd9a8896c75c6266f05af38809f574051d64b1a2f958a48c90167feccfb91 EBUILD shiboken2-5.15.10-r2.ebuild 6823 BLAKE2B 851f820ab41b907e5cafc39e1d96a3e4d5cba3aa2e5a3fb4b09c9f5010d50852e370e28c763bb2e3a3de64c2682127f77175422d699e2df4843ecf509c188c83 SHA512 542e53832c82d16f84170fe185b7a1a6f418a0b3c46c7b1643c7d89dfb3c82a528a6fe79d931d0d410fd59568f96675bed2684610b03d73bbf7cebc37ed5a451 +EBUILD shiboken2-5.15.11.ebuild 6612 BLAKE2B 33fdc642605ff36ee5c027ed77f153cf043e706c2e50e2a996c92a7e4f1a1202cff2a59c6a4f0274561b27dc82f8c762c3beb7e0d7d6833596f9d40485bf66ff SHA512 35863dc1622a10ad605fea01a49e1bb40707e4e2226e3a7c12a0eda422b93b459486a0492d15a71d78e5e76ec486f88938bed0c677a48f42f40ce383a6329257 MISC metadata.xml 730 BLAKE2B 803b825adb9fcd4379b1e3fba57d6b1916a81ced12f3b3c7d3ddcd68a0c03e85fcf31d5b07a70deebe073f267fe93a0529f7ffb4b1a9508a2223894883044f3b SHA512 5a462077fee2bd3ac87ab79274be0a718fd9b273fca4946d2d2734cefdf5817e6b4dc478a828b3bc783c63e64a62a6662b482d61eefe57386c15f9703a57fb24 diff --git a/dev-python/shiboken2/shiboken2-5.15.11.ebuild b/dev-python/shiboken2/shiboken2-5.15.11.ebuild new file mode 100644 index 000000000000..6b58c535d359 --- /dev/null +++ b/dev-python/shiboken2/shiboken2-5.15.11.ebuild @@ -0,0 +1,173 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# TODO: Split the "/usr/bin/shiboken2" binding generator from the +# "/usr/lib64/libshiboken2-*.so" family of shared libraries. The former +# requires everything (including Clang) at runtime; the latter only requires +# Qt and Python at runtime. Note that "pip" separates these two as well. See: +# https://doc.qt.io/qtforpython/shiboken2/faq.html#is-there-any-runtime-dependency-on-the-generated-binding +# Once split, the PySide2 ebuild should be revised to require +# "/usr/bin/shiboken2" at build time and "libshiboken2-*.so" at runtime. +# TODO: Add PyPy once officially supported. See also: +# https://bugreports.qt.io/browse/PYSIDE-535 +PYTHON_COMPAT=( python3_{10..11} ) + +inherit cmake llvm python-r1 toolchain-funcs + +MY_P=pyside-setup-opensource-src-${PV} + +DESCRIPTION="Python binding generator for C++ libraries" +HOMEPAGE="https://wiki.qt.io/PySide2" +SRC_URI="https://download.qt.io/official_releases/QtForPython/pyside2/PySide2-${PV}-src/${MY_P}.tar.xz" +S="${WORKDIR}/${MY_P}/sources/shiboken2" + +# The "sources/shiboken2/libshiboken" directory is triple-licensed under the +# GPL v2, v3+, and LGPL v3. All remaining files are licensed under the GPL v3 +# with version 1.0 of a Qt-specific exception enabling shiboken2 output to be +# arbitrarily relicensed. (TODO) +LICENSE="|| ( GPL-2 GPL-3+ LGPL-3 ) GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86" +IUSE="+docstrings numpy test vulkan" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +# Tests fail pretty bad and I'm not fixing them right now +RESTRICT="test" + +# Minimal supported version of Qt. +QT_PV="$(ver_cut 1-3)*:5" + +# Since Clang is required at both build- and runtime, BDEPEND is omitted here. +LLVM_MAX_SLOT=15 +RDEPEND="${PYTHON_DEPS} + =dev-qt/qtcore-${QT_PV} + <sys-devel/clang-16:= + <sys-devel/clang-runtime-16:= + docstrings? ( + >=dev-libs/libxml2-2.6.32 + >=dev-libs/libxslt-1.1.19 + =dev-qt/qtxml-${QT_PV} + =dev-qt/qtxmlpatterns-${QT_PV} + ) + numpy? ( dev-python/numpy[${PYTHON_USEDEP}] ) + vulkan? ( dev-util/vulkan-headers ) +" +DEPEND="${RDEPEND} + test? ( =dev-qt/qttest-${QT_PV} ) +" + +DOCS=( AUTHORS ) + +# Ensure the path returned by get_llvm_prefix() contains clang as well. +llvm_check_deps() { + has_version "sys-devel/clang:${LLVM_SLOT}" +} + +src_prepare() { + # TODO: File upstream issue requesting a sane way to disable NumPy support. + if ! use numpy; then + sed -i -e '/\bprint(os\.path\.realpath(numpy))/d' \ + libshiboken/CMakeLists.txt || die + fi + + # Shiboken2 assumes Vulkan headers live under either "$VULKAN_SDK/include" + # or "$VK_SDK_PATH/include" rather than "${EPREFIX}/usr/include/vulkan". + if use vulkan; then + sed -i -e "s~\bdetectVulkan(&headerPaths);~headerPaths.append(HeaderPath{QByteArrayLiteral(\"${EPREFIX}/usr/include/vulkan\"), HeaderType::System});~" \ + ApiExtractor/clangparser/compilersupport.cpp || die + fi + + local clangver="$(CPP=clang clang-major-version)" + + # Clang 15 and older used the full version as a directory name. + if [[ ${clangver} -lt 16 ]]; then + clangver="$(CPP=clang clang-fullversion)" + fi + + # Shiboken2 assumes the "/usr/lib/clang/${CLANG_NEWEST_VERSION}/include/" + # subdirectory provides Clang builtin includes (e.g., "stddef.h") for the + # currently installed version of Clang, where ${CLANG_NEWEST_VERSION} is + # the largest version specifier that exists under the "/usr/lib/clang/" + # subdirectory. This assumption is false in edge cases, including when + # users downgrade from newer Clang versions but fail to remove those + # versions with "emerge --depclean". See also: + # https://github.com/leycec/raiagent/issues/85 + # + # Sadly, the clang-* family of functions exported by the "toolchain-funcs" + # eclass are defective, returning nonsensical placeholder strings if the + # end user has *NOT* explicitly configured their C++ compiler to be Clang. + # PySide2 does *NOT* care whether the end user has done so or not, as + # PySide2 unconditionally requires Clang in either case. See also: + # https://bugs.gentoo.org/619490 + sed -i -e 's~(findClangBuiltInIncludesDir())~(QStringLiteral("'"${EPREFIX}"'/usr/lib/clang/'"${clangver}"'/include"))~' \ + ApiExtractor/clangparser/compilersupport.cpp || die + + cmake_src_prepare +} + +src_configure() { + # Minimal tests for now, 2 failing with the extended version + # FIXME Subscripted generics cannot be used with class and instance checks + local mycmakeargs=( + -DBUILD_TESTS=$(usex test) + -DDISABLE_DOCSTRINGS=$(usex !docstrings) + ) + + shiboken2_configure() { + local mycmakeargs=( + "${mycmakeargs[@]}" + -DPYTHON_CONFIG_SUFFIX="-${EPYTHON}" + -DPYTHON_EXECUTABLE="${PYTHON}" + -DUSE_PYTHON_VERSION="${EPYTHON#python}" + ) + # CMakeLists.txt expects LLVM_INSTALL_DIR as an environment variable. + local -x LLVM_INSTALL_DIR="$(get_llvm_prefix "${LLVM_MAX_SLOT}")" + cmake_src_configure + } + python_foreach_impl shiboken2_configure +} + +src_compile() { + python_foreach_impl cmake_src_compile +} + +src_test() { + python_foreach_impl cmake_src_test +} + +src_install() { + shiboken2_install() { + cmake_src_install + python_optimize + + # Uniquify the "shiboken2" executable for the current Python target, + # preserving an unversioned "shiboken2" file arbitrarily associated + # with the last Python target. + cp "${ED}"/usr/bin/${PN}{,-${EPYTHON}} || die + + # Uniquify the Shiboken2 pkgconfig file for the current Python target, + # preserving an unversioned "shiboken2.pc" file arbitrarily associated + # with the last Python target. See also: + # https://github.com/leycec/raiagent/issues/73 + cp "${ED}/usr/$(get_libdir)"/pkgconfig/${PN}{,-${EPYTHON}}.pc || die + } + python_foreach_impl shiboken2_install + + # CMakeLists.txt installs a "Shiboken2Targets-gentoo.cmake" file forcing + # downstream consumers (e.g., PySide2) to target one "libshiboken2-*.so" + # library and one "shiboken2" executable linked to one Python interpreter. + # See also: + # https://bugreports.qt.io/browse/PYSIDE-1053 + # https://github.com/leycec/raiagent/issues/74 + sed -i \ + -e 's~shiboken2-python[[:digit:]]\+\.[[:digit:]]\+~shiboken2${PYTHON_CONFIG_SUFFIX}~g' \ + -e 's~/bin/shiboken2~/bin/shiboken2${PYTHON_CONFIG_SUFFIX}~g' \ + "${ED}/usr/$(get_libdir)"/cmake/Shiboken2*/Shiboken2Targets-${CMAKE_BUILD_TYPE,,}.cmake || die + + # Remove the broken "shiboken_tool.py" script. By inspection, this script + # reduces to a noop. Moreover, this script raises the following exception: + # FileNotFoundError: [Errno 2] No such file or directory: '/usr/bin/../shiboken_tool.py': '/usr/bin/../shiboken_tool.py' + rm "${ED}"/usr/bin/shiboken_tool.py || die +} diff --git a/dev-python/shiboken6/Manifest b/dev-python/shiboken6/Manifest index 6cdaf3dfb598..5adf1af4451f 100644 --- a/dev-python/shiboken6/Manifest +++ b/dev-python/shiboken6/Manifest @@ -1,4 +1,6 @@ AUX shiboken6-6.3.1-no-strip.patch 1001 BLAKE2B c486f9423d4934c2305e8f3109f017dbebd568573469a2fced8da895fbc61ef07a80e0d1c846e7a57988801d6ec4be05b86b46a8039e6702d667129a899fc137 SHA512 1f3e5b082a978e3ab8d8f4d9a5a0a661b8c063e2ece0221440abe342fbd45d566a384d588dbf00a1e469687f82da3728cd53e35d02077ce6a748d3747de3cec2 DIST pyside-setup-everywhere-src-6.5.2.tar.xz 13576204 BLAKE2B 3e1d62e6d877140137896552184c8fe56fd62056a1ea506ab474256ee0e2f16d3e10ddb84965602650bb466f3563555c3c344698b6877a45f9130d1e919aba21 SHA512 ca677645579fc6b82285dd6c294909ca5e91a8c8efbc53bd103aff64e3ef89eff67820bfc9100cf50f043015d41c49d4ff86b3008f02505941a09bd54621f403 +DIST pyside-setup-everywhere-src-6.5.3.tar.xz 13577208 BLAKE2B 7a26302d17163e3fd7478571d99116d7eec01ee3ce369c58870fed565258419f8c6cdf88b4cd2b9b48a21ab1e40d5b85ed912e3cd2210cf22707da88c42ad277 SHA512 3fbcc0bb340d5b02616df061d1c1bf08494db5d35297db47ebb2f965efd347bf8412236bb43952b65b787d08d29adf5998cd92c3ff359f728a9006e07a278519 EBUILD shiboken6-6.5.2-r2.ebuild 6656 BLAKE2B 39c4dfb74d1dd5bc30f0aa0505bbfced3a828d0a41a42e10f08e472d5496447a9e7d9abcd19fa6d61f14bd79c671511d473f1495cad6409b63ab25b07ada157a SHA512 7876f161a7ac5f8982dafc554e03b3e62e1c6a5feb439900b68e7f9254e33cc64cbd6ef00b31e9e1f8ceedb8ab7e9d8959c16bf3628e7eca9468f10d5f7f3bcb +EBUILD shiboken6-6.5.3.ebuild 6656 BLAKE2B 2e717ba5941a791b1092cabc111e206d40c13238480859ca200851c2e79bd852f19b6ae20edb8f41b787c02662acd2c0816df84d367252db37b47701232b0625 SHA512 115502b180cdad0ae1a724426d56e43aa568e79434f4016f4053822c526d6cb26fee17347264583c343030695f033a3183f4ef8fded945c41b2baa29d7c44b1c MISC metadata.xml 730 BLAKE2B 33e7e589d02ec0517e134aa50407ecb97c6800be3ab7b69174d65776f62c1f25c2b2209d51299d9e0110b5f5e9322ee2c0b43dc89e6b12c40ea322ca9bc8eb3f SHA512 cc4ecdd9bc86ce59c2027c6f87307d32bd76d5d2cd8c07edb6c60cc5317ea52a96136c7597a179d75f1632db2999300d8b8f0567679ba3fc562804774fcdcc98 diff --git a/dev-python/shiboken6/shiboken6-6.5.3.ebuild b/dev-python/shiboken6/shiboken6-6.5.3.ebuild new file mode 100644 index 000000000000..de8b2922641f --- /dev/null +++ b/dev-python/shiboken6/shiboken6-6.5.3.ebuild @@ -0,0 +1,176 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# TODO: Split the "/usr/bin/shiboken6" binding generator from the +# "/usr/lib64/libshiboken6-*.so" family of shared libraries. The former +# requires everything (including Clang) at runtime; the latter only requires +# Qt and Python at runtime. Note that "pip" separates these two as well. See: +# https://doc.qt.io/qtforpython/shiboken6/faq.html#is-there-any-runtime-dependency-on-the-generated-binding +# Once split, the PySide6 ebuild should be revised to require +# "/usr/bin/shiboken6" at build time and "libshiboken6-*.so" at runtime. +# TODO: Add PyPy once officially supported. See also: +# https://bugreports.qt.io/browse/PYSIDE-535 +PYTHON_COMPAT=( python3_{10..11} ) + +inherit cmake llvm python-r1 toolchain-funcs + +MY_PN="pyside-setup-everywhere-src" + +DESCRIPTION="Python binding generator for C++ libraries" +HOMEPAGE="https://wiki.qt.io/PySide6" +SRC_URI="https://download.qt.io/official_releases/QtForPython/pyside6/PySide6-${PV}-src/${MY_PN}-${PV}.tar.xz" +S="${WORKDIR}/${MY_PN}-$(ver_cut 1-3)/sources/shiboken6" + +# The "sources/shiboken6/libshiboken" directory is triple-licensed under the +# GPL v2, v3+, and LGPL v3. All remaining files are licensed under the GPL v3 +# with version 1.0 of a Qt-specific exception enabling shiboken6 output to be +# arbitrarily relicensed. (TODO) +LICENSE="|| ( GPL-2 GPL-3+ LGPL-3 ) GPL-3" +SLOT="0" +KEYWORDS="~amd64" +IUSE="+docstrings numpy test vulkan" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +# Tests fail pretty bad and I'm not fixing them right now +RESTRICT="test" + +# Minimal supported version of Qt. +QT_PV="$(ver_cut 1-3)*:6" + +# Since Clang is required at both build- and runtime, BDEPEND is omitted here. +LLVM_MAX_SLOT=17 +RDEPEND="${PYTHON_DEPS} + =dev-qt/qtbase-${QT_PV} + <sys-devel/clang-18:= + <sys-devel/clang-runtime-18:= + docstrings? ( + >=dev-libs/libxml2-2.6.32 + >=dev-libs/libxslt-1.1.19 + ) + numpy? ( dev-python/numpy[${PYTHON_USEDEP}] ) + vulkan? ( dev-util/vulkan-headers ) +" +DEPEND="${RDEPEND} + test? ( =dev-qt/qtbase-${QT_PV}[gui] ) +" +# testlib is toggled by the gui flag on qtbase + +DOCS=( AUTHORS ) + +PATCHES=( + "${FILESDIR}/${PN}-6.3.1-no-strip.patch" +) + +# Ensure the path returned by get_llvm_prefix() contains clang as well. +llvm_check_deps() { + has_version "sys-devel/clang:${LLVM_SLOT}" +} + +src_prepare() { + # TODO: File upstream issue requesting a sane way to disable NumPy support. + if ! use numpy; then + sed -i -e '/\bprint(os\.path\.realpath(numpy))/d' \ + libshiboken/CMakeLists.txt || die + fi + + # Shiboken6 assumes Vulkan headers live under either "$VULKAN_SDK/include" + # or "$VK_SDK_PATH/include" rather than "${EPREFIX}/usr/include/vulkan". + if use vulkan; then + sed -i -e "s~\bdetectVulkan(&headerPaths);~headerPaths.append(HeaderPath{QByteArrayLiteral(\"${EPREFIX}/usr/include/vulkan\"), HeaderType::System});~" \ + ApiExtractor/clangparser/compilersupport.cpp || die + fi + + local clangver="$(CPP=clang clang-major-version)" + + # Clang 15 and older used the full version as a directory name. + if [[ ${clangver} -lt 16 ]]; then + clangver="$(CPP=clang clang-fullversion)" + fi + + # Shiboken6 assumes the "/usr/lib/clang/${CLANG_NEWEST_VERSION}/include/" + # subdirectory provides Clang builtin includes (e.g., "stddef.h") for the + # currently installed version of Clang, where ${CLANG_NEWEST_VERSION} is + # the largest version specifier that exists under the "/usr/lib/clang/" + # subdirectory. This assumption is false in edge cases, including when + # users downgrade from newer Clang versions but fail to remove those + # versions with "emerge --depclean". See also: + # https://github.com/leycec/raiagent/issues/85 + # + # Sadly, the clang-* family of functions exported by the "toolchain-funcs" + # eclass are defective, returning nonsensical placeholder strings if the + # end user has *NOT* explicitly configured their C++ compiler to be Clang. + # PySide6 does *NOT* care whether the end user has done so or not, as + # PySide6 unconditionally requires Clang in either case. See also: + # https://bugs.gentoo.org/619490 + sed -i -e 's~(findClangBuiltInIncludesDir())~(QStringLiteral("'"${EPREFIX}"'/usr/lib/clang/'"${clangver}"'/include"))~' \ + ApiExtractor/clangparser/compilersupport.cpp || die + + cmake_src_prepare +} + +src_configure() { + # Minimal tests for now, 2 failing with the extended version + # FIXME Subscripted generics cannot be used with class and instance checks + local mycmakeargs=( + -DBUILD_TESTS=$(usex test) + -DDISABLE_DOCSTRINGS=$(usex !docstrings) + ) + + shiboken6_configure() { + local mycmakeargs=( + "${mycmakeargs[@]}" + -DPYTHON_CONFIG_SUFFIX="-${EPYTHON}" + -DPYTHON_EXECUTABLE="${PYTHON}" + -DUSE_PYTHON_VERSION="${EPYTHON#python}" + ) + # CMakeLists.txt expects LLVM_INSTALL_DIR as an environment variable. + local -x LLVM_INSTALL_DIR="$(get_llvm_prefix "${LLVM_MAX_SLOT}")" + cmake_src_configure + } + python_foreach_impl shiboken6_configure +} + +src_compile() { + python_foreach_impl cmake_src_compile +} + +src_test() { + python_foreach_impl cmake_src_test +} + +src_install() { + shiboken6_install() { + cmake_src_install + python_optimize + + # Uniquify the "shiboken6" executable for the current Python target, + # preserving an unversioned "shiboken6" file arbitrarily associated + # with the last Python target. + cp "${ED}"/usr/bin/${PN}{,-${EPYTHON}} || die + + # Uniquify the Shiboken6 pkgconfig file for the current Python target, + # preserving an unversioned "shiboken6.pc" file arbitrarily associated + # with the last Python target. See also: + # https://github.com/leycec/raiagent/issues/73 + cp "${ED}/usr/$(get_libdir)"/pkgconfig/${PN}{,-${EPYTHON}}.pc || die + } + python_foreach_impl shiboken6_install + + # CMakeLists.txt installs a "Shiboken6Targets-gentoo.cmake" file forcing + # downstream consumers (e.g., PySide6) to target one "libshiboken6-*.so" + # library and one "shiboken6" executable linked to one Python interpreter. + # See also: + # https://bugreports.qt.io/browse/PYSIDE-1053 + # https://github.com/leycec/raiagent/issues/74 + sed -i \ + -e 's~shiboken6-python[[:digit:]]\+\.[[:digit:]]\+~shiboken6${PYTHON_CONFIG_SUFFIX}~g' \ + -e 's~/bin/shiboken6~/bin/shiboken6${PYTHON_CONFIG_SUFFIX}~g' \ + "${ED}/usr/$(get_libdir)"/cmake/Shiboken6/Shiboken6Targets-${CMAKE_BUILD_TYPE,,}.cmake || die + + # Remove the broken "shiboken_tool.py" script. By inspection, this script + # reduces to a noop. Moreover, this script raises the following exception: + # FileNotFoundError: [Errno 2] No such file or directory: '/usr/bin/../shiboken_tool.py': '/usr/bin/../shiboken_tool.py' + rm "${ED}"/usr/bin/shiboken_tool.py || die +} |