diff options
author | V3n3RiX <venerix@koprulu.sector> | 2025-02-11 00:12:38 +0000 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2025-02-11 00:12:38 +0000 |
commit | 0ec1e1dd7867c3dedcbea76c9b6e847d6b388c03 (patch) | |
tree | 65f42b72245de9fb9fa9ea30e6221dfff7dda7c5 /dev-python/lxml | |
parent | 3a81cede4783e464b7485722b2eaac0280dbc570 (diff) |
gentoo auto-resync : 11:02:2025 - 00:12:37
Diffstat (limited to 'dev-python/lxml')
-rw-r--r-- | dev-python/lxml/Manifest | 2 | ||||
-rw-r--r-- | dev-python/lxml/lxml-5.3.1.ebuild | 119 |
2 files changed, 121 insertions, 0 deletions
diff --git a/dev-python/lxml/Manifest b/dev-python/lxml/Manifest index a4ca7d9089f2..d87eab830adc 100644 --- a/dev-python/lxml/Manifest +++ b/dev-python/lxml/Manifest @@ -2,6 +2,8 @@ AUX lxml-5.1.1-pypy.patch 6414 BLAKE2B 367cb47fe9466a1f0035fc26884cc55109b2dd692 AUX lxml-5.3.0-pypy.patch 6909 BLAKE2B 47c57123a140681037900141c54cc47ea95e0a45eed32385db9bc35b91850e5424511a53c8afa9fd40413b5f59d81e6af2320345e03b1d403a533d2ec2a94ff4 SHA512 2b4310e4d0a151f49f54623eff603aae00777bfca3fc0b98adec39c30e2114402f1626780317ef11c31161027574f555e094a2e57798e1410f16a538bc7cfaa1 DIST lxml-5.2.2.gh.tar.gz 950650 BLAKE2B d9e3bd96f386a808eca58ffa9a6b5a79e43102b7161fac9b97905de2bd22d21feaddb093e27463f597ef5378d754011c2999a38953e6288595b8dd171976688b SHA512 20b87a2d6e7ac82b6979d6fd18ecd5c224fec6eeee6b69d47a5bf2947ce53e6a517d1b86ab68836a5974f78ce86551ddc2317c1a7255932b418b98dc64d59376 DIST lxml-5.3.0.gh.tar.gz 951199 BLAKE2B 8317179c524856593b323f665c288ddddd8af7e716e1ddf1222a857c8466cfc62a6c20b21744ca418f809a3c8492216c5c9c38cfa62f2e7d51daea7343b6810b SHA512 514477bf4c865541233d73f20de816b51d265dbd75c56a0d13779e14527c73e85ca890718d06c08728da228d410459016e9cb8abdad4d03b44a81a04a198fb54 +DIST lxml-5.3.1.gh.tar.gz 951340 BLAKE2B e73cc8513cfe42d163b8475788472f00f2f3492deb7536b6556ed4f14924ffe57497947e660a161ec5a0821135b3d103799c0da0b9c647ccdcbfa9b0c5d6a1d9 SHA512 e89ada765791b67e4e83a9151c500f2e8d924c05d421a46bece1183666fc566d545d2e6b62987075e82cbafb8cd4b1f48f6f94e9ebcc0bbd7227d687b2282794 EBUILD lxml-5.2.2.ebuild 2975 BLAKE2B 31b5f53c85c7192b316f56634cd08fe4be0ce2c59b269b9399a73371f577e84262184e5dc5596bffd95f0b8fca21955ace0e06cc8eccecee48faf7a599bf3422 SHA512 ccd45aa409aa5f43be0c5bf13ba44f8d5985c2b42a34dde1289a5e30fb3ef4781cc61b36eab949d890929a2072e902eaacef79bd1fb71eacc1f94db379e5183f EBUILD lxml-5.3.0.ebuild 3052 BLAKE2B 9000b0d46ec1633a2184b0656d7bad7e967c8c4436dd9b951002093b9f9d1be9dd615ee684c95203e053c7f7ae32903a50c9904b00e41bf0a8625438f82b843c SHA512 da1361d55b3f7c2ddad6edfe68e07d9f4d90978ab1fadaec5787cfcf22582dfac5a7a426ace55e4a3d3d3c8ee9baced702e3dc6ad2901f2aee56e550c0896b24 +EBUILD lxml-5.3.1.ebuild 3060 BLAKE2B 89062ee216471fac0b206356bfe8441636d3fd06f5f7c38ec7109aa245fdf628067a661bca0fc9a5b2af685f09c84503fe99329ded57ec27651e48981c9e160b SHA512 34d055f749b24f330308a0d5b9439b0ac3f5ceaa7606456cf3ee33e25f5747626d5f7321d688fe6978f613a36487efa3480344e0f5a398fb377a0e06da5644fa MISC metadata.xml 463 BLAKE2B 9bcd092b61568f5d467230617b101f36245c41078e6a66c7ff63b22a6b4095de2ba3a59e48ce8b7842ce58d1255fa293995652daa3fab4c3af988498eaa30e97 SHA512 2ba5e340b59e0de4e472380e9c19b1f6f573e86e5c3c2e075f6151d369e94eea70e3ce36bfb5ece4da3fa69459e3ff83368f1df8302aa5754ae52f13c8f2312e diff --git a/dev-python/lxml/lxml-5.3.1.ebuild b/dev-python/lxml/lxml-5.3.1.ebuild new file mode 100644 index 000000000000..12a832f993ca --- /dev/null +++ b/dev-python/lxml/lxml-5.3.1.ebuild @@ -0,0 +1,119 @@ +# Copyright 1999-2025 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..13} pypy3 ) + +inherit distutils-r1 optfeature toolchain-funcs + +DESCRIPTION="A Pythonic binding for the libxml2 and libxslt libraries" +HOMEPAGE=" + https://lxml.de/ + https://pypi.org/project/lxml/ + https://github.com/lxml/lxml/ +" +SRC_URI=" + https://github.com/lxml/lxml/archive/${P}.tar.gz + -> ${P}.gh.tar.gz +" +S=${WORKDIR}/lxml-${P} + +LICENSE="BSD ElementTree GPL-2 PSF-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +IUSE="doc examples +threads test" +RESTRICT="!test? ( test )" + +# Note: lib{xml2,xslt} are used as C libraries, not Python modules. +DEPEND=" + >=dev-libs/libxml2-2.10.3 + >=dev-libs/libxslt-1.1.38 +" +RDEPEND=" + ${DEPEND} +" +BDEPEND=" + virtual/pkgconfig + >=dev-python/cython-3.0.10[${PYTHON_USEDEP}] + doc? ( + $(python_gen_any_dep ' + dev-python/docutils[${PYTHON_USEDEP}] + dev-python/pygments[${PYTHON_USEDEP}] + dev-python/sphinx[${PYTHON_USEDEP}] + dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}] + ') + ) + test? ( + dev-python/cssselect[${PYTHON_USEDEP}] + ) +" + +PATCHES=( + "${FILESDIR}/${PN}-5.3.0-pypy.patch" +) + +python_check_deps() { + use doc || return 0 + python_has_version -b "dev-python/docutils[${PYTHON_USEDEP}]" && + python_has_version -b "dev-python/pygments[${PYTHON_USEDEP}]" && + python_has_version -b "dev-python/sphinx[${PYTHON_USEDEP}]" && + python_has_version -b "dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]" +} + +python_prepare_all() { + # don't use some random SDK on Darwin + sed -i -e '/_ldflags =/s/=.*isysroot.*darwin.*None/= None/' \ + setupinfo.py || die + + distutils-r1_python_prepare_all +} + +python_compile() { + local DISTUTILS_ARGS=( + # by default it adds -w to CFLAGS + --warnings + ) + tc-export PKG_CONFIG + distutils-r1_python_compile +} + +python_compile_all() { + use doc && emake html +} + +python_test() { + local dir=${BUILD_DIR}/test$(python_get_sitedir)/lxml + local -x PATH=${BUILD_DIR}/test/usr/bin:${PATH} + + cp -al "${BUILD_DIR}"/{install,test} || die + cp -al src/lxml/tests "${dir}/" || die + cp -al src/lxml/html/tests "${dir}/html/" || die + mkdir "${dir}"/../../doc || die + # this one needs to be copied, because upstream uses doc/../../../doc + cp -r "${S}"/doc "${dir}"/../../ || die + ln -s "${S}"/doc "${dir}"/../../../../ || die + + "${EPYTHON}" test.py --no-src -vv --all-levels -p || + die "Tests fail on ${EPYTHON}" +} + +python_install_all() { + if use doc; then + local DOCS=( README.rst *.txt doc/*.txt ) + local HTML_DOCS=( doc/html/. ) + fi + if use examples; then + dodoc -r samples + fi + + distutils-r1_python_install_all +} + +pkg_postinst() { + optfeature "Support for BeautifulSoup as a parser backend" dev-python/beautifulsoup4 + optfeature "Translates CSS selectors to XPath 1.0 expressions" dev-python/cssselect + optfeature "Support for lxml.html.clean sanitizer" dev-python/lxml-html-clean +} |