diff options
Diffstat (limited to 'poky/meta/recipes-devtools/python')
58 files changed, 574 insertions, 185 deletions
diff --git a/poky/meta/recipes-devtools/python/python-cython.inc b/poky/meta/recipes-devtools/python/python-cython.inc index 278da5ea72..aeff3e77ef 100644 --- a/poky/meta/recipes-devtools/python/python-cython.inc +++ b/poky/meta/recipes-devtools/python/python-cython.inc @@ -9,7 +9,7 @@ LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=e23fadd6ceef8c618fc1c65191d846fa" PYPI_PACKAGE = "Cython" BBCLASSEXTEND = "native nativesdk" -SRC_URI[sha256sum] = "af377d543a762867da11fcf6e558f7a4a535ff8693f30cce123fab10c00fa312" +SRC_URI[sha256sum] = "c6a442504db906dfc13a480e96850cced994ecdc076bcf492c43515b78f70da2" UPSTREAM_CHECK_REGEX = "Cython-(?P<pver>.*)\.tar" inherit pypi diff --git a/poky/meta/recipes-devtools/python/python-nose.inc b/poky/meta/recipes-devtools/python/python-nose.inc deleted file mode 100644 index dfae202299..0000000000 --- a/poky/meta/recipes-devtools/python/python-nose.inc +++ /dev/null @@ -1,18 +0,0 @@ -SUMMARY = "Extends Python unittest to make testing easier" -HOMEPAGE = "http://readthedocs.org/docs/nose/" -DESCRIPTION = "nose extends the test loading and running features of unittest, \ -making it easier to write, find and run tests." -SECTION = "devel/python" -LICENSE = "LGPLv2.1" -LIC_FILES_CHKSUM = "file://lgpl.txt;md5=a6f89e2100d9b6cdffcea4f398e37343" - -SRC_URI[md5sum] = "4d3ad0ff07b61373d2cefc89c5d0b20b" -SRC_URI[sha256sum] = "f1bffef9cbc82628f6e7d7b40d7e255aefaa1adb6a1b1d26c69a8b79e6208a98" - -inherit pypi - -RDEPENDS:${PN} = "\ - ${PYTHON_PN}-unittest \ - " - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-devtools/python/python-pycryptodome.inc b/poky/meta/recipes-devtools/python/python-pycryptodome.inc index 071af557ea..29fe80d224 100644 --- a/poky/meta/recipes-devtools/python/python-pycryptodome.inc +++ b/poky/meta/recipes-devtools/python/python-pycryptodome.inc @@ -7,7 +7,7 @@ LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=29242a70410a4eeff488a28164e7ab93" inherit pypi -PYPI_PACKAGE_EXT = "zip" +PYPI_PACKAGE_EXT = "tar.gz" RDEPENDS:${PN} += " \ ${PYTHON_PN}-io \ diff --git a/poky/meta/recipes-devtools/python/python-subunit.inc b/poky/meta/recipes-devtools/python/python-subunit.inc deleted file mode 100644 index a2f9c5c3ff..0000000000 --- a/poky/meta/recipes-devtools/python/python-subunit.inc +++ /dev/null @@ -1,14 +0,0 @@ -SUMMARY = "Python implementation of subunit test streaming protocol" -HOMEPAGE = "https://pypi.org/project/python-subunit/" -SECTION = "devel/python" -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://README.rst;beginline=1;endline=20;md5=909c08e291647fd985fbe5d9836d51b6" - -PYPI_PACKAGE = "python-subunit" - -SRC_URI[md5sum] = "30f1ab20651d94442dd9a7f8c9e8d633" -SRC_URI[sha256sum] = "042039928120fbf392e8c983d60f3d8ae1b88f90a9f8fd7188ddd9c26cad1e48" - -inherit pypi - -BBCLASSEXTEND = "nativesdk" diff --git a/poky/meta/recipes-devtools/python/python3-attrs_21.4.0.bb b/poky/meta/recipes-devtools/python/python3-attrs_21.4.0.bb index d1dde29d37..20e4541f81 100644 --- a/poky/meta/recipes-devtools/python/python3-attrs_21.4.0.bb +++ b/poky/meta/recipes-devtools/python/python3-attrs_21.4.0.bb @@ -5,7 +5,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=d4ab25949a73fe7d4fdee93bcbdbf8ff" SRC_URI[sha256sum] = "626ba8234211db98e869df76230a137c4c40a12d72445c45d5f5b716f076e2fd" -inherit pypi setuptools3 +inherit pypi setuptools_build_meta RDEPENDS:${PN}:class-target += " \ ${PYTHON_PN}-crypt \ diff --git a/poky/meta/recipes-devtools/python/python3-cython_0.29.26.bb b/poky/meta/recipes-devtools/python/python3-cython_0.29.27.bb index 26333cb271..26333cb271 100644 --- a/poky/meta/recipes-devtools/python/python3-cython_0.29.26.bb +++ b/poky/meta/recipes-devtools/python/python3-cython_0.29.27.bb diff --git a/poky/meta/recipes-devtools/python/python3-dbusmock_0.25.0.bb b/poky/meta/recipes-devtools/python/python3-dbusmock_0.25.0.bb index e64e343a1e..3a9cdda5f6 100644 --- a/poky/meta/recipes-devtools/python/python3-dbusmock_0.25.0.bb +++ b/poky/meta/recipes-devtools/python/python3-dbusmock_0.25.0.bb @@ -1,12 +1,13 @@ SUMMARY = "With this program/Python library you can easily create mock objects on D-Bus" HOMEPAGE = "https://pypi.org/project/python-dbusmock/" -LICENSE = "GPL-3.0" +LICENSE = "GPL-3.0-only" LIC_FILES_CHKSUM = "file://COPYING;md5=e6a600fd5e1d9cbde2d983680233ad02" SRC_URI[sha256sum] = "6f4ce7650ecbb022684dc158df720e199635f3a3df75f7020f4fe8f6ff0394db" PYPI_PACKAGE = "python-dbusmock" +PIP_INSTALL_PACKAGE = "python_dbusmock" inherit pypi setuptools3 diff --git a/poky/meta/recipes-devtools/python/python3-docutils_0.18.1.bb b/poky/meta/recipes-devtools/python/python3-docutils_0.18.1.bb index e0fbb2c12d..4f60b05048 100644 --- a/poky/meta/recipes-devtools/python/python3-docutils_0.18.1.bb +++ b/poky/meta/recipes-devtools/python/python3-docutils_0.18.1.bb @@ -1,7 +1,7 @@ SUMMARY = "Docutils is a modular system for processing documentation into useful formats" HOMEPAGE = "http://docutils.sourceforge.net" SECTION = "devel/python" -LICENSE = "PSF & BSD-2-Clause & GPLv3" +LICENSE = "PSF-2.0 & BSD-2-Clause & GPL-3.0-only" LIC_FILES_CHKSUM = "file://COPYING.txt;md5=fecee07ad8df9116e1f739e2ed2ea513" SRC_URI[sha256sum] = "679987caf361a7539d76e584cbeddc311e3aee937877c87346f31debc63e9d06" diff --git a/poky/meta/recipes-devtools/python/python3-dtschema_2021.12.bb b/poky/meta/recipes-devtools/python/python3-dtschema_2022.1.bb index 34d0bf61b3..d73e5810b8 100644 --- a/poky/meta/recipes-devtools/python/python3-dtschema_2021.12.bb +++ b/poky/meta/recipes-devtools/python/python3-dtschema_2022.1.bb @@ -7,7 +7,7 @@ inherit pypi setuptools3 PYPI_PACKAGE = "dtschema" -SRC_URI[sha256sum] = "f68af77fbce1ae00015c1fd2809fd20db8b72a27105c26a20e1ac0203aee1739" +SRC_URI[sha256sum] = "1b92b3b9a31b6e4b8b2be70dbf3065775530bc4c52e991955b67be19741114c5" DEPENDS += "python3-setuptools-scm-native" RDEPENDS:${PN} += "python3-ruamel-yaml python3-jsonschema python3-rfc3987" diff --git a/poky/meta/recipes-devtools/python/python3-flit-core_3.6.0.bb b/poky/meta/recipes-devtools/python/python3-flit-core_3.6.0.bb new file mode 100644 index 0000000000..a00ea1810e --- /dev/null +++ b/poky/meta/recipes-devtools/python/python3-flit-core_3.6.0.bb @@ -0,0 +1,45 @@ +SUMMARY = "This provides a PEP 517 build backend for packages using Flit." +DESCRIPTION = "This provides a PEP 517 build backend for packages using \ +Flit. The only public interface is the API specified by PEP 517, at \ +flit_core.buildapi." +HOMEPAGE = "https://github.com/pypa/flit" +BUGTRACKER = "https://github.com/pypa/flit/issues" + +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://LICENSE;md5=41eb78fa8a872983a882c694a8305f08" + +SRC_URI[sha256sum] = "b1464e006df4df4c8eeb37671c0e0ce66e1d04e4a36d91b702f180a25fde3c11" + +inherit pip_install_wheel python3native python3-dir pypi setuptools3-base + +DEPENDS:remove:class-native = " python3-pip-native" +DEPENDS:append:class-native = " unzip-native" + +# We need the full flit tarball +PYPI_PACKAGE = "flit" + +PIP_INSTALL_PACKAGE = "flit_core" +PIP_INSTALL_DIST_PATH = "${S}/flit_core/dist" + +do_compile () { + nativepython3 flit_core/build_dists.py +} + +do_install:class-native () { + install -d ${D}${PYTHON_SITEPACKAGES_DIR} + unzip -d ${D}${PYTHON_SITEPACKAGES_DIR} ./flit_core/dist/flit_core-${PV}-py3-none-any.whl +} + +FILES:${PN} += "\ + ${PYTHON_SITEPACKAGES_DIR}/flit_core/* \ + ${PYTHON_SITEPACKAGES_DIR}/flit_core-${PV}.dist-info/* \ +" + +PACKAGES =+ "${PN}-tests" + +FILES:${PN}-tests += "\ + ${PYTHON_SITEPACKAGES_DIR}/flit_core/tests/* \ +" + +BBCLASSEXTEND = "native nativesdk" + diff --git a/poky/meta/recipes-devtools/python/python3-git_3.1.26.bb b/poky/meta/recipes-devtools/python/python3-git_3.1.26.bb index b6171a0e4d..8f4b13cc15 100644 --- a/poky/meta/recipes-devtools/python/python3-git_3.1.26.bb +++ b/poky/meta/recipes-devtools/python/python3-git_3.1.26.bb @@ -10,7 +10,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=8b8d26c37c1d5a04f9b0186edbebc183" PYPI_PACKAGE = "GitPython" -inherit pypi setuptools3 +inherit pypi setuptools_build_meta SRC_URI[sha256sum] = "fc8868f63a2e6d268fb25f481995ba185a85a66fcad126f039323ff6635669ee" diff --git a/poky/meta/recipes-devtools/python/python3-hypothesis_6.35.0.bb b/poky/meta/recipes-devtools/python/python3-hypothesis_6.37.2.bb index 246ff84f61..4deed1e56f 100644 --- a/poky/meta/recipes-devtools/python/python3-hypothesis_6.35.0.bb +++ b/poky/meta/recipes-devtools/python/python3-hypothesis_6.37.2.bb @@ -13,7 +13,7 @@ SRC_URI += " \ file://test_rle.py \ " -SRC_URI[sha256sum] = "ce3961fff61e7353d022608788cbc9876c293d2468749eeba27511adc9565131" +SRC_URI[sha256sum] = "79321035b9174ffa506d724ca5e8af375d7bf532c80e4f602bd433792c527e6c" RDEPENDS:${PN} += " \ python3-attrs \ diff --git a/poky/meta/recipes-devtools/python/python3-importlib-metadata_4.10.0.bb b/poky/meta/recipes-devtools/python/python3-importlib-metadata_4.10.1.bb index ea19afc0c2..ff40def563 100644 --- a/poky/meta/recipes-devtools/python/python3-importlib-metadata_4.10.0.bb +++ b/poky/meta/recipes-devtools/python/python3-importlib-metadata_4.10.1.bb @@ -8,7 +8,7 @@ inherit pypi setuptools3 PYPI_PACKAGE = "importlib_metadata" UPSTREAM_CHECK_REGEX = "/importlib-metadata/(?P<pver>(\d+[\.\-_]*)+)/" -SRC_URI[sha256sum] = "92a8b58ce734b2a4494878e0ecf7d79ccd7a128b5fc6014c401e0b61f006f0f6" +SRC_URI[sha256sum] = "951f0d8a5b7260e9db5e41d429285b5f451e928479f19d80818878527d36e95e" S = "${WORKDIR}/importlib_metadata-${PV}" diff --git a/poky/meta/recipes-devtools/python/python3-iniconfig_1.1.1.bb b/poky/meta/recipes-devtools/python/python3-iniconfig_1.1.1.bb index 6b3359712f..5338980e69 100644 --- a/poky/meta/recipes-devtools/python/python3-iniconfig_1.1.1.bb +++ b/poky/meta/recipes-devtools/python/python3-iniconfig_1.1.1.bb @@ -7,4 +7,6 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=a6bb0320b04a0a503f12f69fea479de9" SRC_URI[md5sum] = "0b7f3be87481211c183eae095bcea6f1" SRC_URI[sha256sum] = "bc3af051d7d14b2ee5ef9969666def0cd1a000e121eaea580d4a313df4b37f32" -inherit pypi setuptools3 +DEPENDS += "python3-setuptools-scm-native" + +inherit pypi setuptools_build_meta diff --git a/poky/meta/recipes-devtools/python/python3-iniparse_0.5.bb b/poky/meta/recipes-devtools/python/python3-iniparse_0.5.bb index b5812d90c3..c18949014b 100644 --- a/poky/meta/recipes-devtools/python/python3-iniparse_0.5.bb +++ b/poky/meta/recipes-devtools/python/python3-iniparse_0.5.bb @@ -1,6 +1,6 @@ SUMMARY = "Accessing and Modifying INI files" HOMEPAGE = "https://pypi.org/project/iniparse/" -LICENSE = "MIT & PSF" +LICENSE = "MIT & PSF-2.0" LIC_FILES_CHKSUM = "file://LICENSE-PSF;md5=1c78a5bb3584b353496d5f6f34edb4b2 \ file://LICENSE;md5=52f28065af11d69382693b45b5a8eb54" diff --git a/poky/meta/recipes-devtools/python/python3-libarchive-c_3.2.bb b/poky/meta/recipes-devtools/python/python3-libarchive-c_4.0.bb index cc04210e72..99837848a6 100644 --- a/poky/meta/recipes-devtools/python/python3-libarchive-c_3.2.bb +++ b/poky/meta/recipes-devtools/python/python3-libarchive-c_4.0.bb @@ -9,7 +9,9 @@ PYPI_PACKAGE = "libarchive-c" inherit pypi setuptools3 -SRC_URI[sha256sum] = "21ad493f4628972fc82440bff54c834a9fbe13be3893037a4bad332b9ee741e5" +PIP_INSTALL_PACKAGE = "libarchive_c" + +SRC_URI[sha256sum] = "a5b41ade94ba58b198d778e68000f6b7de41da768de7140c984f71d7fa8416e5" RDEPENDS:${PN} += "\ libarchive \ diff --git a/poky/meta/recipes-devtools/python/python3-magic_0.4.24.bb b/poky/meta/recipes-devtools/python/python3-magic_0.4.25.bb index ae895fbd53..bd46b294ae 100644 --- a/poky/meta/recipes-devtools/python/python3-magic_0.4.24.bb +++ b/poky/meta/recipes-devtools/python/python3-magic_0.4.25.bb @@ -8,10 +8,11 @@ LICENSE = "MIT" LIC_FILES_CHKSUM = "file://LICENSE;md5=61495c152d794e6be5799a9edca149e3" PYPI_PACKAGE = "python-magic" +PIP_INSTALL_PACKAGE = "python_magic" inherit pypi setuptools3 -SRC_URI[sha256sum] = "de800df9fb50f8ec5974761054a708af6e4246b03b4bdaee993f948947b0ebcf" +SRC_URI[sha256sum] = "21f5f542aa0330f5c8a64442528542f6215c8e18d2466b399b0d9d39356d83fc" RDEPENDS:${PN} += "file \ ${PYTHON_PN}-ctypes \ diff --git a/poky/meta/recipes-devtools/python/python3-mako_1.1.6.bb b/poky/meta/recipes-devtools/python/python3-mako_1.1.6.bb index ec8c9cc12a..23e13cff94 100644 --- a/poky/meta/recipes-devtools/python/python3-mako_1.1.6.bb +++ b/poky/meta/recipes-devtools/python/python3-mako_1.1.6.bb @@ -6,7 +6,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=943eb67718222db21d44a4ef1836675f" PYPI_PACKAGE = "Mako" -inherit pypi setuptools3 +inherit pypi setuptools_build_meta SRC_URI[sha256sum] = "4e9e345a41924a954251b95b4b28e14a301145b544901332e658907a7464b6b2" diff --git a/poky/meta/recipes-devtools/python/python3-markupsafe_2.0.1.bb b/poky/meta/recipes-devtools/python/python3-markupsafe_2.1.0.bb index 857472cc7b..953ea01cfe 100644 --- a/poky/meta/recipes-devtools/python/python3-markupsafe_2.0.1.bb +++ b/poky/meta/recipes-devtools/python/python3-markupsafe_2.1.0.bb @@ -3,7 +3,7 @@ HOMEPAGE = "http://github.com/mitsuhiko/markupsafe" LICENSE = "BSD-3-Clause" LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=ffeffa59c90c9c4a033c7574f8f3fb75" -SRC_URI[sha256sum] = "594c67807fb16238b30c44bdf74f36c02cdf22d1c8cda91ef8a0ed8dabf5620a" +SRC_URI[sha256sum] = "80beaf63ddfbc64a0452b841d8036ca0611e049650e20afcb882f5d3c266d65f" PYPI_PACKAGE = "MarkupSafe" inherit pypi setuptools3 diff --git a/poky/meta/recipes-devtools/python/python3-more-itertools_8.12.0.bb b/poky/meta/recipes-devtools/python/python3-more-itertools_8.12.0.bb index c1e34b205d..5788af3f71 100644 --- a/poky/meta/recipes-devtools/python/python3-more-itertools_8.12.0.bb +++ b/poky/meta/recipes-devtools/python/python3-more-itertools_8.12.0.bb @@ -7,6 +7,8 @@ SRC_URI[sha256sum] = "7dc6ad46f05f545f900dd59e8dfb4e84a4827b97b3cfecb175ea0c7d24 inherit pypi setuptools3 ptest +PIP_INSTALL_PACKAGE = "more_itertools" + SRC_URI += " \ file://run-ptest \ " diff --git a/poky/meta/recipes-devtools/python/python3-nose_1.3.7.bb b/poky/meta/recipes-devtools/python/python3-nose_1.3.7.bb deleted file mode 100644 index 13dbf96179..0000000000 --- a/poky/meta/recipes-devtools/python/python3-nose_1.3.7.bb +++ /dev/null @@ -1,2 +0,0 @@ -inherit setuptools3 -require python-nose.inc diff --git a/poky/meta/recipes-devtools/python/python3-numpy/0001-numpy-core-setup.py-disable-svml-for-now.patch b/poky/meta/recipes-devtools/python/python3-numpy/0001-numpy-core-setup.py-disable-svml-for-now.patch deleted file mode 100644 index 66e322116a..0000000000 --- a/poky/meta/recipes-devtools/python/python3-numpy/0001-numpy-core-setup.py-disable-svml-for-now.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 0f0601e79f9ce7614d157284523e6cd8af2259d5 Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin <alex@linutronix.de> -Date: Wed, 5 Jan 2022 12:12:47 +0100 -Subject: [PATCH] numpy/core/setup.py: disable svml for now - -The check really doesn't work in cross compiling, -as it is using host python to see what arch we're -building on. Issue reported upstream: -https://github.com/numpy/numpy/issues/20736 - -Upstream-Status: Inappropriate [needs upstream fix] -Signed-off-by: Alexander Kanavin <alex@linutronix.de> ---- - numpy/core/setup.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/numpy/core/setup.py b/numpy/core/setup.py -index a5f423d..945f2dd 100644 ---- a/numpy/core/setup.py -+++ b/numpy/core/setup.py -@@ -70,7 +70,7 @@ def can_link_svml(): - """ - machine = platform.machine() - system = platform.system() -- return "x86_64" in machine and system == "Linux" -+ return False - - def check_svml_submodule(svmlpath): - if not os.path.exists(svmlpath + "/README.md"): diff --git a/poky/meta/recipes-devtools/python/python3-numpy_1.22.1.bb b/poky/meta/recipes-devtools/python/python3-numpy_1.22.2.bb index b79ce61fbf..43e7427eab 100644 --- a/poky/meta/recipes-devtools/python/python3-numpy_1.22.1.bb +++ b/poky/meta/recipes-devtools/python/python3-numpy_1.22.2.bb @@ -2,7 +2,7 @@ SUMMARY = "A sophisticated Numeric Processing Package for Python" HOMEPAGE = "https://numpy.org/" DESCRIPTION = "NumPy is the fundamental package needed for scientific computing with Python." SECTION = "devel/python" -LICENSE = "BSD-3-Clause & BSD-2-Clause & PSF & Apache-2.0 & MIT" +LICENSE = "BSD-3-Clause & BSD-2-Clause & PSF-2.0 & Apache-2.0 & MIT" LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=8026691468924fb6ec155dadfe2a1a7f" SRCNAME = "numpy" @@ -11,9 +11,8 @@ SRC_URI = "https://github.com/${SRCNAME}/${SRCNAME}/releases/download/v${PV}/${S file://0001-Don-t-search-usr-and-so-on-for-libraries-by-default-.patch \ file://0001-numpy-core-Define-RISCV-32-support.patch \ file://run-ptest \ - file://0001-numpy-core-setup.py-disable-svml-for-now.patch \ " -SRC_URI[sha256sum] = "dd1968402ae20dfd59b34acd799b494be340c774f6295e9bf1c2b9842a5e416d" +SRC_URI[sha256sum] = "093d513a460fd94f94c16193c3ef29b2d69a33e482071e3d6d6e561a700587a6" UPSTREAM_CHECK_URI = "https://github.com/numpy/numpy/releases" UPSTREAM_CHECK_REGEX = "(?P<pver>\d+(\.\d+)+)\.tar" @@ -21,11 +20,25 @@ UPSTREAM_CHECK_REGEX = "(?P<pver>\d+(\.\d+)+)\.tar" DEPENDS += "python3-cython-native" inherit ptest setuptools3 +PIP_INSTALL_PACKAGE = "numpy" S = "${WORKDIR}/numpy-${PV}" CLEANBROKEN = "1" +do_compile:prepend() { + export NPY_DISABLE_SVML=1 +} + +# Unfortunately the following pyc files are non-deterministc due to 'frozenset' +# being written without strict ordering, even with PYTHONHASHSEED = 0 +# Upstream is discussing ways to solve the issue properly, until then let's +# just not install the problematic files. +# More info: http://benno.id.au/blog/2013/01/15/python-determinism +do_install:append() { + rm ${D}${PYTHON_SITEPACKAGES_DIR}/numpy/typing/tests/data/pass/__pycache__/literal.cpython* +} + FILES:${PN}-staticdev += "${PYTHON_SITEPACKAGES_DIR}/numpy/core/lib/*.a ${PYTHON_SITEPACKAGES_DIR}/numpy/random/lib/*.a" # install what is needed for numpy.test() diff --git a/poky/meta/recipes-devtools/python/python3-packaging_21.3.bb b/poky/meta/recipes-devtools/python/python3-packaging_21.3.bb index 446edf04e1..c7d0cb7ef7 100644 --- a/poky/meta/recipes-devtools/python/python3-packaging_21.3.bb +++ b/poky/meta/recipes-devtools/python/python3-packaging_21.3.bb @@ -5,7 +5,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=faadaedca9251a90b205c9167578ce91" SRC_URI[sha256sum] = "dd47c42927d89ab911e606518907cc2d3a1f38bbd026385970643f9c5b8ecfeb" -inherit pypi setuptools3 +inherit pypi setuptools_build_meta BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-devtools/python/python3-pathlib2_2.3.6.bb b/poky/meta/recipes-devtools/python/python3-pathlib2_2.3.7.bb index 1f1cf1ab28..673b5c7ef0 100644 --- a/poky/meta/recipes-devtools/python/python3-pathlib2_2.3.6.bb +++ b/poky/meta/recipes-devtools/python/python3-pathlib2_2.3.7.bb @@ -3,7 +3,7 @@ HOMEPAGE = "https://github.com/mcmtroffaes/pathlib2" LICENSE = "MIT" LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=2dc08586cce3ab91bfa091b655c0e440" -SRC_URI[sha256sum] = "7d8bcb5555003cdf4a8d2872c538faa3a0f5d20630cb360e518ca3b981795e5f" +SRC_URI[sha256sum] = "7a4329d67beff9a712e1d3ae147e4e3e108b0bfd284ffdea03a635126c76b3c0" inherit pypi setuptools3 diff --git a/poky/meta/recipes-devtools/python/python3-pbr_5.8.0.bb b/poky/meta/recipes-devtools/python/python3-pbr_5.8.0.bb deleted file mode 100644 index b74fc16754..0000000000 --- a/poky/meta/recipes-devtools/python/python3-pbr_5.8.0.bb +++ /dev/null @@ -1,4 +0,0 @@ -inherit setuptools3 -require python-pbr.inc - -SRC_URI[sha256sum] = "672d8ebee84921862110f23fcec2acea191ef58543d34dfe9ef3d9f13c31cddf" diff --git a/poky/meta/recipes-devtools/python/python3-pbr_5.8.1.bb b/poky/meta/recipes-devtools/python/python3-pbr_5.8.1.bb new file mode 100644 index 0000000000..c8664018fa --- /dev/null +++ b/poky/meta/recipes-devtools/python/python3-pbr_5.8.1.bb @@ -0,0 +1,4 @@ +inherit setuptools3 +require python-pbr.inc + +SRC_URI[sha256sum] = "66bc5a34912f408bb3925bf21231cb6f59206267b7f63f3503ef865c1a292e25" diff --git a/poky/meta/recipes-devtools/python/python3-pip/no_shebang_mangling.patch b/poky/meta/recipes-devtools/python/python3-pip/no_shebang_mangling.patch new file mode 100644 index 0000000000..920e22bc02 --- /dev/null +++ b/poky/meta/recipes-devtools/python/python3-pip/no_shebang_mangling.patch @@ -0,0 +1,28 @@ +Patch pip to disable shebang mangling and also force the python executable +to be python3 from the environment when building anything for the target +(or nativesdk). This avoids incorrect interpreter paths in the target scripts. + +Upstream-Status: Inappropriate [OE specific config] + +Index: pip-22.0.3/src/pip/_vendor/distlib/scripts.py +=================================================================== +--- pip-22.0.3.orig/src/pip/_vendor/distlib/scripts.py ++++ pip-22.0.3/src/pip/_vendor/distlib/scripts.py +@@ -135,6 +135,8 @@ class ScriptMaker(object): + See also: http://www.in-ulm.de/~mascheck/various/shebang/#length + https://hg.mozilla.org/mozilla-central/file/tip/mach + """ ++ if '_PYTHON_SYSCONFIGDATA_NAME' in os.environ: ++ return b'#!/usr/bin/env python3' + if os.name != 'posix': + simple_shebang = True + else: +@@ -340,7 +342,7 @@ class ScriptMaker(object): + return + + match = FIRST_LINE_RE.match(first_line.replace(b'\r\n', b'\n')) +- if match: ++ if False: + adjust = True + post_interp = match.group(1) or b'' + diff --git a/poky/meta/recipes-devtools/python/python3-pip/reproducible.patch b/poky/meta/recipes-devtools/python/python3-pip/reproducible.patch new file mode 100644 index 0000000000..538bb94f7a --- /dev/null +++ b/poky/meta/recipes-devtools/python/python3-pip/reproducible.patch @@ -0,0 +1,74 @@ +Pip installed wheels are not reproducible currently. The direct_url +files encode an installation path and the installed wheels compile +the python files at their location, not their final install location +which is incorrect. + +To fix this, simply disable the direct_urls and pass the "root" to +the python compile function to strip that path out of the compiled +files. + +A version of this patch, perhaps stripping root from the direct_urls +may be something that could be considered by upstream. + +Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> + +Upstream-Status: Pending + +Index: pip-22.0.3/src/pip/_internal/req/req_install.py +=================================================================== +--- pip-22.0.3.orig/src/pip/_internal/req/req_install.py ++++ pip-22.0.3/src/pip/_internal/req/req_install.py +@@ -758,7 +758,9 @@ class InstallRequirement: + if self.is_wheel: + assert self.local_file_path + direct_url = None +- if self.editable: ++ if '_PYTHON_SYSCONFIGDATA_NAME' in os.environ: ++ direct_url = None ++ elif self.editable: + direct_url = direct_url_for_editable(self.unpacked_source_directory) + elif self.original_link: + direct_url = direct_url_from_link( +@@ -775,6 +777,7 @@ class InstallRequirement: + warn_script_location=warn_script_location, + direct_url=direct_url, + requested=self.user_supplied, ++ root=root, + ) + self.install_succeeded = True + return +Index: pip-22.0.3/src/pip/_internal/operations/install/wheel.py +=================================================================== +--- pip-22.0.3.orig/src/pip/_internal/operations/install/wheel.py ++++ pip-22.0.3/src/pip/_internal/operations/install/wheel.py +@@ -436,6 +436,7 @@ def _install_wheel( + warn_script_location: bool = True, + direct_url: Optional[DirectUrl] = None, + requested: bool = False, ++ root: str = None, + ) -> None: + """Install a wheel. + +@@ -612,7 +613,7 @@ def _install_wheel( + with warnings.catch_warnings(): + warnings.filterwarnings("ignore") + for path in pyc_source_file_paths(): +- success = compileall.compile_file(path, force=True, quiet=True) ++ success = compileall.compile_file(path, force=True, quiet=True, stripdir=root) + if success: + pyc_path = pyc_output_path(path) + assert os.path.exists(pyc_path) +@@ -723,6 +724,7 @@ def install_wheel( + warn_script_location: bool = True, + direct_url: Optional[DirectUrl] = None, + requested: bool = False, ++ root: str = None, + ) -> None: + with ZipFile(wheel_path, allowZip64=True) as z: + with req_error_context(req_description): +@@ -735,4 +737,5 @@ def install_wheel( + warn_script_location=warn_script_location, + direct_url=direct_url, + requested=requested, ++ root=root, + ) diff --git a/poky/meta/recipes-devtools/python/python3-pip_21.3.1.bb b/poky/meta/recipes-devtools/python/python3-pip_21.3.1.bb deleted file mode 100644 index c893135059..0000000000 --- a/poky/meta/recipes-devtools/python/python3-pip_21.3.1.bb +++ /dev/null @@ -1,33 +0,0 @@ -SUMMARY = "The PyPA recommended tool for installing Python packages" -HOMEPAGE = "https://pypi.org/project/pip" -SECTION = "devel/python" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=c4fa2b50f55649f43060fa04b0919b9b" - -DEPENDS += "python3 python3-setuptools-native" - -inherit pypi setuptools3 - -SRC_URI += "file://0001-change-shebang-to-python3.patch" - -SRC_URI[sha256sum] = "fd11ba3d0fdb4c07fbc5ecbba0b1b719809420f25038f8ee3cd913d3faa3033a" - -do_install:append() { - # Install as pip3 and leave pip2 as default - rm ${D}/${bindir}/pip -} - -RDEPENDS:${PN} = "\ - python3-compile \ - python3-io \ - python3-html \ - python3-json \ - python3-multiprocessing \ - python3-netserver \ - python3-setuptools \ - python3-unixadmin \ - python3-xmlrpc \ - python3-pickle \ -" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-devtools/python/python3-pip_22.0.3.bb b/poky/meta/recipes-devtools/python/python3-pip_22.0.3.bb new file mode 100644 index 0000000000..7eb9fb69ba --- /dev/null +++ b/poky/meta/recipes-devtools/python/python3-pip_22.0.3.bb @@ -0,0 +1,67 @@ +SUMMARY = "The PyPA recommended tool for installing Python packages" +HOMEPAGE = "https://pypi.org/project/pip" +SECTION = "devel/python" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=63ec52baf95163b597008bb46db68030" + +inherit pypi setuptools_build_meta + +DEPENDS += "python3 python3-setuptools-native" + +# To avoid a dependency loop; we bootstrap -native +DEPENDS:remove:class-native = "python3-pip-native" +DEPENDS:append:class-native = " unzip-native" + +SRC_URI += "file://0001-change-shebang-to-python3.patch" +SRC_URI += "file://no_shebang_mangling.patch" +SRC_URI += "file://reproducible.patch" + +SRC_URI[sha256sum] = "f29d589df8c8ab99c060e68ad294c4a9ed896624f6368c5349d70aa581b333d0" + +PYPA_WHEEL ?= "${B}/dist/${PYPI_PACKAGE}-${PV}-*.whl" + +do_install:class-native() { + # Bootstrap to prevent dependency loop in python3-pip-native + install -d ${D}${PYTHON_SITEPACKAGES_DIR} + unzip -d ${D}${PYTHON_SITEPACKAGES_DIR} ${PYPA_WHEEL} || \ + bbfatal_log "Failed to unzip wheel: ${PYPA_WHEEL}. Check the logs." + + # pip install would normally generate [console_scripts] in ${bindir} + install -d ${D}/${bindir} + # We will skip the ${bindir}/pip variant as we would just remove it in the do_install:append + cat << EOF >> ${D}/${bindir}/pip3 | tee ${D}/${bindir}/pip${PYTHON_BASEVERSION} +#!/bin/sh +'''exec' ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} "\$0" "\$@" +' ''' +# -*- coding: utf-8 -*- +import re +import sys +from pip._internal.cli.main import main +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) +EOF + chmod 0755 ${D}${bindir}/pip3 ${D}${bindir}/pip${PYTHON_BASEVERSION} +} + +do_install:append() { + # Install as pip3 and leave pip2 as default + if [ -e ${D}/${bindir}/pip ]; then + rm ${D}/${bindir}/pip + fi +} + +RDEPENDS:${PN} = "\ + python3-compile \ + python3-io \ + python3-html \ + python3-json \ + python3-multiprocessing \ + python3-netserver \ + python3-setuptools \ + python3-unixadmin \ + python3-xmlrpc \ + python3-pickle \ +" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-devtools/python/python3-pluggy_1.0.0.bb b/poky/meta/recipes-devtools/python/python3-pluggy_1.0.0.bb index 14a7ccb0b0..73bbcb0269 100644 --- a/poky/meta/recipes-devtools/python/python3-pluggy_1.0.0.bb +++ b/poky/meta/recipes-devtools/python/python3-pluggy_1.0.0.bb @@ -10,7 +10,7 @@ RDEPENDS:${PN} += "${PYTHON_PN}-importlib-metadata \ ${PYTHON_PN}-more-itertools \ " -inherit pypi ptest setuptools3 +inherit pypi ptest setuptools_build_meta SRC_URI += " \ file://run-ptest \ diff --git a/poky/meta/recipes-devtools/python/python3-py_1.11.0.bb b/poky/meta/recipes-devtools/python/python3-py_1.11.0.bb index f8be3935e5..02027248f4 100644 --- a/poky/meta/recipes-devtools/python/python3-py_1.11.0.bb +++ b/poky/meta/recipes-devtools/python/python3-py_1.11.0.bb @@ -7,7 +7,7 @@ SRC_URI[sha256sum] = "51c75c4126074b472f746a24399ad32f6053d1b34b68d2fa41e558e6f4 DEPENDS += "${PYTHON_PN}-setuptools-scm-native" -inherit pypi setuptools3 +inherit pypi setuptools_build_meta BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-devtools/python/python3-pycairo_1.20.1.bb b/poky/meta/recipes-devtools/python/python3-pycairo_1.20.1.bb index 9c88d998f9..5c236d40a3 100644 --- a/poky/meta/recipes-devtools/python/python3-pycairo_1.20.1.bb +++ b/poky/meta/recipes-devtools/python/python3-pycairo_1.20.1.bb @@ -2,7 +2,7 @@ SUMMARY = "Python bindings for the Cairo canvas library" HOMEPAGE = "http://cairographics.org/pycairo" BUGTRACKER = "http://bugs.freedesktop.org" SECTION = "python-devel" -LICENSE = "LGPLv2.1 & MPLv1.1" +LICENSE = "LGPL-2.1-only & MPL-1.1" LIC_FILES_CHKSUM = "file://COPYING;md5=f3713ca2c28d9312ad718520b6dc3eee \ file://COPYING-LGPL-2.1;md5=fad9b3332be894bab9bc501572864b29 \ file://COPYING-MPL-1.1;md5=bfe1f75d606912a4111c90743d6c7325" diff --git a/poky/meta/recipes-devtools/python/python3-pycryptodome_3.12.0.bb b/poky/meta/recipes-devtools/python/python3-pycryptodome_3.12.0.bb deleted file mode 100644 index a732441a7a..0000000000 --- a/poky/meta/recipes-devtools/python/python3-pycryptodome_3.12.0.bb +++ /dev/null @@ -1,5 +0,0 @@ -require python-pycryptodome.inc -inherit setuptools3 - -SRC_URI[sha256sum] = "12c7343aec5a3b3df5c47265281b12b611f26ec9367b6129199d67da54b768c1" - diff --git a/poky/meta/recipes-devtools/python/python3-pycryptodome_3.14.1.bb b/poky/meta/recipes-devtools/python/python3-pycryptodome_3.14.1.bb new file mode 100644 index 0000000000..c0324590c2 --- /dev/null +++ b/poky/meta/recipes-devtools/python/python3-pycryptodome_3.14.1.bb @@ -0,0 +1,5 @@ +require python-pycryptodome.inc +inherit setuptools3 + +SRC_URI[sha256sum] = "e04e40a7f8c1669195536a37979dd87da2c32dbdc73d6fe35f0077b0c17c803b" + diff --git a/poky/meta/recipes-devtools/python/python3-pycryptodomex_3.12.0.bb b/poky/meta/recipes-devtools/python/python3-pycryptodomex_3.14.1.bb index 5f88419ce4..79a3fee19c 100644 --- a/poky/meta/recipes-devtools/python/python3-pycryptodomex_3.12.0.bb +++ b/poky/meta/recipes-devtools/python/python3-pycryptodomex_3.14.1.bb @@ -1,7 +1,7 @@ require python-pycryptodome.inc inherit setuptools3 -SRC_URI[sha256sum] = "922e9dac0166e4617e5c7980d2cff6912a6eb5cb5c13e7ece222438650bd7f66" +SRC_URI[sha256sum] = "2ce76ed0081fd6ac8c74edc75b9d14eca2064173af79843c24fa62573263c1f2" FILES:${PN}-tests = " \ ${PYTHON_SITEPACKAGES_DIR}/Cryptodome/SelfTest/ \ diff --git a/poky/meta/recipes-devtools/python/python3-pyelftools_0.27.bb b/poky/meta/recipes-devtools/python/python3-pyelftools_0.28.bb index e2d0e18277..0ceddcb68a 100644 --- a/poky/meta/recipes-devtools/python/python3-pyelftools_0.27.bb +++ b/poky/meta/recipes-devtools/python/python3-pyelftools_0.28.bb @@ -4,7 +4,7 @@ SECTION = "devel/python" LICENSE = "PD" LIC_FILES_CHKSUM = "file://LICENSE;md5=5ce2a2b07fca326bc7c146d10105ccfc" -SRC_URI[sha256sum] = "cde854e662774c5457d688ca41615f6594187ba7067af101232df889a6b7a66b" +SRC_URI[sha256sum] = "53e5609cac016471d40bd88dc410cd90755942c25e58a61021cfdf7abdfeacff" PYPI_PACKAGE = "pyelftools" diff --git a/poky/meta/recipes-devtools/python/python3-pygobject_3.42.0.bb b/poky/meta/recipes-devtools/python/python3-pygobject_3.42.0.bb index 74318337ba..360996dbb7 100644 --- a/poky/meta/recipes-devtools/python/python3-pygobject_3.42.0.bb +++ b/poky/meta/recipes-devtools/python/python3-pygobject_3.42.0.bb @@ -2,7 +2,7 @@ SUMMARY = "Python GObject bindings" HOMEPAGE = "https://gitlab.gnome.org/GNOME/pygobject" DESCRIPTION = "PyGObject is a Python package which provides bindings for GObject based libraries such as GTK, GStreamer, WebKitGTK, GLib, GIO and many more." SECTION = "devel/python" -LICENSE = "LGPLv2.1" +LICENSE = "LGPL-2.1-only" LIC_FILES_CHKSUM = "file://COPYING;md5=a916467b91076e631dd8edb7424769c7" GNOMEBASEBUILDCLASS = "meson" diff --git a/poky/meta/recipes-devtools/python/python3-pyparsing_3.0.6.bb b/poky/meta/recipes-devtools/python/python3-pyparsing_3.0.6.bb deleted file mode 100644 index d15ff33e9b..0000000000 --- a/poky/meta/recipes-devtools/python/python3-pyparsing_3.0.6.bb +++ /dev/null @@ -1,22 +0,0 @@ -SUMMARY = "Python parsing module" -HOMEPAGE = "http://pyparsing.wikispaces.com/" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://LICENSE;md5=657a566233888513e1f07ba13e2f47f1" - -SRC_URI[sha256sum] = "d9bdec0013ef1eb5a84ab39a3b3868911598afa494f5faa038647101504e2b81" - -UPSTREAM_CHECK_REGEX = "pyparsing-(?P<pver>.*)\.tar" - -inherit pypi setuptools3 - -RDEPENDS:${PN} += " \ - ${PYTHON_PN}-datetime \ - ${PYTHON_PN}-debugger \ - ${PYTHON_PN}-json \ - ${PYTHON_PN}-netclient \ - ${PYTHON_PN}-pprint \ - ${PYTHON_PN}-stringold \ - ${PYTHON_PN}-threading \ -" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-devtools/python/python3-pyparsing_3.0.7.bb b/poky/meta/recipes-devtools/python/python3-pyparsing_3.0.7.bb new file mode 100644 index 0000000000..14faea6590 --- /dev/null +++ b/poky/meta/recipes-devtools/python/python3-pyparsing_3.0.7.bb @@ -0,0 +1,29 @@ +SUMMARY = "Python parsing module" +DESCRIPTION = "The pyparsing module is an alternative approach to creating \ +and executing simple grammars, vs. the traditional lex/yacc approach, or \ +the use of regular expressions. The pyparsing module provides a library of \ +classes that client code uses to construct the grammar directly in Python \ +code." +HOMEPAGE = "https://github.com/pyparsing/pyparsing/" +BUGTRACKER = "https://github.com/pyparsing/pyparsing/issues" + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://LICENSE;md5=657a566233888513e1f07ba13e2f47f1" + +SRC_URI[sha256sum] = "18ee9022775d270c55187733956460083db60b37d0d0fb357445f3094eed3eea" + +UPSTREAM_CHECK_REGEX = "pyparsing-(?P<pver>.*)\.tar" + +inherit pypi setuptools3 + +RDEPENDS:${PN} += " \ + ${PYTHON_PN}-datetime \ + ${PYTHON_PN}-debugger \ + ${PYTHON_PN}-json \ + ${PYTHON_PN}-netclient \ + ${PYTHON_PN}-pprint \ + ${PYTHON_PN}-stringold \ + ${PYTHON_PN}-threading \ +" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-devtools/python/python3-pytest_6.2.5.bb b/poky/meta/recipes-devtools/python/python3-pytest_7.0.1.bb index 0d8fdf6373..ea6ba80300 100644 --- a/poky/meta/recipes-devtools/python/python3-pytest_6.2.5.bb +++ b/poky/meta/recipes-devtools/python/python3-pytest_7.0.1.bb @@ -3,13 +3,13 @@ HOMEPAGE = "https://pypi.org/project/pytest/" DESCRIPTION = "The pytest framework makes it easy to write small tests, yet scales to support complex functional testing for applications and libraries." LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://LICENSE;md5=81eb9f71d006c6b268cf4388e3c98f7b" +LIC_FILES_CHKSUM = "file://LICENSE;md5=bd27e41b6550fe0fc45356d1d81ee37c" -SRC_URI[sha256sum] = "131b36680866a76e6781d13f101efb86cf674ebb9762eb70d3082b6f29889e89" +SRC_URI[sha256sum] = "e30905a0c131d3d94b89624a1cc5afec3e0ba2fbdb151867d8e0ebd49850f171" -DEPENDS = "python3-setuptools-scm-native" +DEPENDS += "python3-setuptools-scm-native" -inherit update-alternatives pypi setuptools3 +inherit update-alternatives pypi setuptools_build_meta RDEPENDS:${PN}:class-target += " \ ${PYTHON_PN}-atomicwrites \ diff --git a/poky/meta/recipes-devtools/python/python3-rfc3987_1.3.8.bb b/poky/meta/recipes-devtools/python/python3-rfc3987_1.3.8.bb index ae0154080b..316dc544de 100644 --- a/poky/meta/recipes-devtools/python/python3-rfc3987_1.3.8.bb +++ b/poky/meta/recipes-devtools/python/python3-rfc3987_1.3.8.bb @@ -1,6 +1,6 @@ SUMMARY = "Parsing and validation of URIs (RFC 3986) and IRIs (RFC 3987)" HOMEPAGE = "https://pypi.org/project/rfc3987/" -LICENSE = "GPLv3+" +LICENSE = "GPL-3.0-or-later" LIC_FILES_CHKSUM = "file://PKG-INFO;beginline=8;endline=9;md5=2b723edf67b2f3088bc5e339b1ceda2d" SRC_URI[md5sum] = "b6c4028acdc788a9ba697e1c1d6b896c" diff --git a/poky/meta/recipes-devtools/python/python3-ruamel-yaml_0.17.20.bb b/poky/meta/recipes-devtools/python/python3-ruamel-yaml_0.17.21.bb index a6bee1bea1..7d65c4c2d8 100644 --- a/poky/meta/recipes-devtools/python/python3-ruamel-yaml_0.17.20.bb +++ b/poky/meta/recipes-devtools/python/python3-ruamel-yaml_0.17.21.bb @@ -9,7 +9,7 @@ PYPI_PACKAGE = "ruamel.yaml" inherit pypi setuptools3 -SRC_URI[sha256sum] = "4b8a33c1efb2b443a93fcaafcfa4d2e445f8e8c29c528d9f5cdafb7cc9e4004c" +SRC_URI[sha256sum] = "8b7ce697a2f212752a35c1ac414471dc16c424c9573be4926b56ff3f5d23b7af" RDEPENDS:${PN} += "\ ${PYTHON_PN}-shell \ diff --git a/poky/meta/recipes-devtools/python/python3-scons-native_4.3.0.bb b/poky/meta/recipes-devtools/python/python3-scons-native_4.3.0.bb deleted file mode 100644 index 73076b8732..0000000000 --- a/poky/meta/recipes-devtools/python/python3-scons-native_4.3.0.bb +++ /dev/null @@ -1,7 +0,0 @@ -require python3-scons_${PV}.bb -inherit native python3native -DEPENDS = "python3-native python3-setuptools-native" - -do_install:append() { - create_wrapper ${D}${bindir}/scons SCONS_LIB_DIR='${STAGING_DIR_HOST}/${PYTHON_SITEPACKAGES_DIR}' PYTHONNOUSERSITE='1' -} diff --git a/poky/meta/recipes-devtools/python/python3-scons_4.3.0.bb b/poky/meta/recipes-devtools/python/python3-scons_4.3.0.bb index bff2fdae92..cfb075f65f 100644 --- a/poky/meta/recipes-devtools/python/python3-scons_4.3.0.bb +++ b/poky/meta/recipes-devtools/python/python3-scons_4.3.0.bb @@ -8,6 +8,7 @@ SRC_URI += " file://0001-Fix-man-page-installation.patch" SRC_URI[sha256sum] = "d47081587e3675cc168f1f54f0d74a69b328a2fc90ec4feb85f728677419b879" PYPI_PACKAGE = "SCons" +PIP_INSTALL_DIST_PATH = "${B}/build/dist" inherit pypi setuptools3 @@ -24,4 +25,14 @@ RDEPENDS:${PN}:class-target = "\ python3-pprint \ " -FILES:${PN}-doc += "${datadir}/scons*.1" +do_install:append() { + install -d ${D}${mandir}/man1 + mv ${D}${prefix}/scons*.1 ${D}${mandir}/man1/ +} +FILES:${PN}-doc += "${mandir}/man1/scons*.1" + +do_install:append:class-native() { + create_wrapper ${D}${bindir}/scons SCONS_LIB_DIR='${STAGING_DIR_HOST}/${PYTHON_SITEPACKAGES_DIR}' PYTHONNOUSERSITE='1' +} + +BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-devtools/python/python3-setuptools-scm_6.3.2.bb b/poky/meta/recipes-devtools/python/python3-setuptools-scm_6.4.2.bb index bc594d9620..182ccecbbf 100644 --- a/poky/meta/recipes-devtools/python/python3-setuptools-scm_6.3.2.bb +++ b/poky/meta/recipes-devtools/python/python3-setuptools-scm_6.4.2.bb @@ -4,10 +4,10 @@ DESCRIPTION = "setuptools_scm handles managing your Python package versions in S LICENSE = "MIT" LIC_FILES_CHKSUM = "file://PKG-INFO;beginline=8;endline=8;md5=8227180126797a0148f94f483f3e1489" -SRC_URI[sha256sum] = "a49aa8081eeb3514eb9728fa5040f2eaa962d6c6f4ec9c32f6c1fba88f88a0f2" +SRC_URI[sha256sum] = "6833ac65c6ed9711a4d5d2266f8024cfa07c533a0e55f4c12f6eff280a5a9e30" PYPI_PACKAGE = "setuptools_scm" -inherit pypi setuptools3 +inherit pypi setuptools_build_meta UPSTREAM_CHECK_REGEX = "setuptools_scm-(?P<pver>.*)\.tar" diff --git a/poky/meta/recipes-devtools/python/python3-setuptools_59.5.0.bb b/poky/meta/recipes-devtools/python/python3-setuptools_59.5.0.bb index 33ca928c3e..2155101d30 100644 --- a/poky/meta/recipes-devtools/python/python3-setuptools_59.5.0.bb +++ b/poky/meta/recipes-devtools/python/python3-setuptools_59.5.0.bb @@ -4,7 +4,7 @@ SECTION = "devel/python" LICENSE = "MIT" LIC_FILES_CHKSUM = "file://LICENSE;beginline=1;endline=19;md5=7a7126e068206290f3fe9f8d6c713ea6" -inherit pypi setuptools3 +inherit pypi setuptools_build_meta SRC_URI:append:class-native = " file://0001-conditionally-do-not-fetch-code-by-easy_install.patch" @@ -17,6 +17,19 @@ SRC_URI[sha256sum] = "d144f85102f999444d06f9c0e8c737fd0194f10f2f7e5fdb77573f6e2f DEPENDS += "${PYTHON_PN}" +# Avoid dependency loop; we bootstrap -native +DEPENDS:remove:class-native = "python3-pip-native python3-setuptools-native" +DEPENDS:append:class-native = " unzip-native" + +PYPA_WHEEL ?= "${B}/dist/${PYPI_PACKAGE}-${PV}-*.whl" + +do_install:class-native() { + # Bootstrap to prevent dependency loop in python3-pip-native + install -d ${D}${PYTHON_SITEPACKAGES_DIR} + unzip -d ${D}${PYTHON_SITEPACKAGES_DIR} ${PYPA_WHEEL} || \ + bbfatal_log "Failed to unzip wheel: ${PYPA_WHEEL}. Check the logs." +} + RDEPENDS:${PN} = "\ ${PYTHON_PN}-2to3 \ ${PYTHON_PN}-compile \ @@ -38,10 +51,6 @@ RDEPENDS:${PN} = "\ ${PYTHON_PN}-xml \ " -do_install:prepend() { - install -d ${D}${PYTHON_SITEPACKAGES_DIR} -} - BBCLASSEXTEND = "native nativesdk" # The pkg-resources module can be used by itself, without the package downloader diff --git a/poky/meta/recipes-devtools/python/python3-smartypants/0001-Change-hash-bang-to-python3.patch b/poky/meta/recipes-devtools/python/python3-smartypants/0001-Change-hash-bang-to-python3.patch new file mode 100644 index 0000000000..aab16eaab4 --- /dev/null +++ b/poky/meta/recipes-devtools/python/python3-smartypants/0001-Change-hash-bang-to-python3.patch @@ -0,0 +1,47 @@ +From e299bcb05405ff49450307bf3002c1fac14a866c Mon Sep 17 00:00:00 2001 +From: Tim Orling <tim.orling@konsulko.com> +Date: Sun, 20 Feb 2022 18:55:50 -0800 +Subject: [PATCH] Change hash bang to python3 + +In setup.py, smartypants and smartypants.py set hash bang to python3. + +Upstream-Status: Inappropriate [oe-core specific] + +Signed-off-by: Tim Orling <tim.orling@konsulko.com> + +--- + setup.py | 2 +- + smartypants | 2 +- + smartypants.py | 2 +- + 3 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/setup.py b/setup.py +index ff1ea76..96a8b73 100755 +--- a/setup.py ++++ b/setup.py +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python ++#!/usr/bin/env python3 + # Copyright (C) 2013, 2014 by Yu-Jie Lin + # For detail license information, See COPYING + +diff --git a/smartypants b/smartypants +index 189adf5..0cca568 100755 +--- a/smartypants ++++ b/smartypants +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python ++#!/usr/bin/env python3 + # Copyright (c) 2013, 2014 Yu-Jie Lin + # Licensed under the BSD License, for detailed license information, see COPYING + +diff --git a/smartypants.py b/smartypants.py +index a70575b..e53bd87 100755 +--- a/smartypants.py ++++ b/smartypants.py +@@ -1,4 +1,4 @@ +-#!/usr/bin/python ++#!/usr/bin/env python3 + # -*- coding: utf-8 -*- + # Copyright (c) 2013, 2014, 2016 Yu-Jie Lin + # Copyright (c) 2004, 2005, 2007, 2013 Chad Miller diff --git a/poky/meta/recipes-devtools/python/python3-smartypants_2.0.0.bb b/poky/meta/recipes-devtools/python/python3-smartypants_2.0.0.bb index ba3408247b..05c94c390f 100644 --- a/poky/meta/recipes-devtools/python/python3-smartypants_2.0.0.bb +++ b/poky/meta/recipes-devtools/python/python3-smartypants_2.0.0.bb @@ -6,6 +6,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=977036977591ac666c728921ecc54c4f" inherit pypi setuptools3 PYPI_PACKAGE = "smartypants" +SRC_URI += "file://0001-Change-hash-bang-to-python3.patch" SRC_URI[sha256sum] = "7812353a32022699a1aa8cd5626e01c94a946dcaeedaee2d0b382bae4c4cbf36" BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-devtools/python/python3-strict-rfc3339/0001-setup.py-use-vendored-_distutils.patch b/poky/meta/recipes-devtools/python/python3-strict-rfc3339/0001-setup.py-use-vendored-_distutils.patch new file mode 100644 index 0000000000..ba1c3d3363 --- /dev/null +++ b/poky/meta/recipes-devtools/python/python3-strict-rfc3339/0001-setup.py-use-vendored-_distutils.patch @@ -0,0 +1,27 @@ +From 857719e82daea0d85b734cac34cf569050724068 Mon Sep 17 00:00:00 2001 +From: Tim Orling <tim.orling@konsulko.com> +Date: Sun, 20 Feb 2022 20:26:51 -0800 +Subject: [PATCH] setup.py: use vendored _distutils + +Deprecation warning of distutils is interferring with bdist_wheel build. + +For now, use the vendored setuptools._distutils.core. + +Upstream-Status: Pending [upstream appears unmaintained] + +Signed-off-by: Tim Orling <tim.orling@konsulko.com> +--- + setup.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/setup.py b/setup.py +index 1bf87cf..a49fb8e 100644 +--- a/setup.py ++++ b/setup.py +@@ -1,5 +1,5 @@ + import os.path +-from distutils.core import setup ++from setuptools._distutils.core import setup + + readme_file = os.path.join(os.path.dirname(__file__), 'README.md') + readme = open(readme_file).read() diff --git a/poky/meta/recipes-devtools/python/python3-strict-rfc3339_0.7.bb b/poky/meta/recipes-devtools/python/python3-strict-rfc3339_0.7.bb index aa2d5b46f0..b592cb95d4 100644 --- a/poky/meta/recipes-devtools/python/python3-strict-rfc3339_0.7.bb +++ b/poky/meta/recipes-devtools/python/python3-strict-rfc3339_0.7.bb @@ -1,11 +1,13 @@ SUMMARY = "Strict, simple, lightweight RFC3339 function.s" HOMEPAGE = "https://pypi.org/project/strict-rfc3339/" -LICENSE = "GPLv3" +LICENSE = "GPL-3.0-only" LIC_FILES_CHKSUM = "file://LICENSE;md5=8f0e2cd40e05189ec81232da84bd6e1a" -SRC_URI[md5sum] = "4d9b635b4df885bc37bc1189d66c9abc" +SRC_URI += "file://0001-setup.py-use-vendored-_distutils.patch" SRC_URI[sha256sum] = "5cad17bedfc3af57b399db0fed32771f18fc54bbd917e85546088607ac5e1277" inherit pypi setuptools3 +PIP_INSTALL_PACKAGE = "strict_rfc3339" + BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-devtools/python/python3-subunit_1.4.0.bb b/poky/meta/recipes-devtools/python/python3-subunit_1.4.0.bb index a06ded868f..bc49a2b69e 100644 --- a/poky/meta/recipes-devtools/python/python3-subunit_1.4.0.bb +++ b/poky/meta/recipes-devtools/python/python3-subunit_1.4.0.bb @@ -1,4 +1,17 @@ -inherit setuptools3 -require python-subunit.inc +SUMMARY = "Python implementation of subunit test streaming protocol" +HOMEPAGE = "https://pypi.org/project/python-subunit/" +SECTION = "devel/python" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://README.rst;beginline=1;endline=20;md5=909c08e291647fd985fbe5d9836d51b6" + +PYPI_PACKAGE = "python-subunit" + +SRC_URI[sha256sum] = "042039928120fbf392e8c983d60f3d8ae1b88f90a9f8fd7188ddd9c26cad1e48" + +inherit pypi setuptools3 + +PIP_INSTALL_PACKAGE = "python_subunit" RDEPENDS:${PN} = " python3-testtools" + +BBCLASSEXTEND = "nativesdk" diff --git a/poky/meta/recipes-devtools/python/python3-tomli_2.0.0.bb b/poky/meta/recipes-devtools/python/python3-tomli_2.0.1.bb index aa23ad856d..c3d51282c2 100644 --- a/poky/meta/recipes-devtools/python/python3-tomli_2.0.0.bb +++ b/poky/meta/recipes-devtools/python/python3-tomli_2.0.1.bb @@ -8,12 +8,12 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=aaaaf0879d17df0110d1aa8c8c9f46f5" inherit pypi setuptools3 -SRC_URI[sha256sum] = "c292c34f58502a1eb2bbb9f5bbc9a5ebc37bee10ffb8c2d6bbdfa8eb13cc14e1" +SRC_URI[sha256sum] = "de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f" do_configure:prepend() { cat > ${S}/setup.py <<-EOF from setuptools import setup -setup(name="tomli", version="${PV}", packages=["tomli"], package_data={"": ["*"]}) +setup(name="tomli", version="${PV}", packages=["tomli"], package_dir={'tomli': 'src/tomli'}, package_data={"": ["*"]}) EOF } diff --git a/poky/meta/recipes-devtools/python/python3-wheel/0001-Backport-pyproject.toml-from-flit-backend-branch.patch b/poky/meta/recipes-devtools/python/python3-wheel/0001-Backport-pyproject.toml-from-flit-backend-branch.patch new file mode 100644 index 0000000000..023de0e6a8 --- /dev/null +++ b/poky/meta/recipes-devtools/python/python3-wheel/0001-Backport-pyproject.toml-from-flit-backend-branch.patch @@ -0,0 +1,100 @@ +From f00dd220346773bc088d403847ee7f06f2b4c30a Mon Sep 17 00:00:00 2001 +From: Tim Orling <tim.orling@konsulko.com> +Date: Fri, 18 Feb 2022 11:09:16 -0800 +Subject: [PATCH] Backport pyproject.toml from flit-backend branch + +This allows us to bootstrap wheels and PEP-517 packaging. + +Upstream-Status: Backport from flit-backend branch +https://raw.githubusercontent.com/pypa/wheel/4f6ba78fede38a8d9e35a14e38377a121033afb3/pyproject.toml + +Signed-off-by: Tim Orling <tim.orling@konsulko.com> +--- + pyproject.toml | 78 ++++++++++++++++++++++++++++++++++++++++++++++++++ + 1 file changed, 78 insertions(+) + create mode 100644 pyproject.toml + +diff --git a/pyproject.toml b/pyproject.toml +new file mode 100644 +index 0000000..749b8de +--- /dev/null ++++ b/pyproject.toml +@@ -0,0 +1,78 @@ ++[build-system] ++requires = ["flit_core >=3.2,<4"] ++build-backend = "flit_core.buildapi" ++ ++[project] ++name = "wheel" ++description = "A built-package format for Python" ++readme = "README.rst" ++classifiers = [ ++ "Development Status :: 5 - Production/Stable", ++ "Intended Audience :: Developers", ++ "Topic :: System :: Archiving :: Packaging", ++ "License :: OSI Approved :: MIT License", ++ "Programming Language :: Python", ++ "Programming Language :: Python :: 3 :: Only", ++ "Programming Language :: Python :: 3.7", ++ "Programming Language :: Python :: 3.8", ++ "Programming Language :: Python :: 3.9", ++ "Programming Language :: Python :: 3.10" ++] ++authors = [{name = "Daniel Holth", email = "dholth@fastmail.fm"}] ++maintainers = [{name = "Alex Grönholm", email = "alex.gronholm@nextday.fi"}] ++keywords = ["wheel", "packaging"] ++license = {file = "LICENSE.txt"} ++requires-python = ">=3.7" ++dependencies = [ ++ "setuptools >= 45.2.0" ++] ++dynamic = ["version"] ++ ++[project.urls] ++Documentation = "https://wheel.readthedocs.io/" ++Changelog = "https://wheel.readthedocs.io/en/stable/news.html" ++"Issue Tracker" = "https://github.com/pypa/wheel/issues" ++ ++[project.scripts] ++wheel = "wheel.cli:main" ++ ++[project.entry-points."distutils.commands"] ++bdist_wheel = "wheel.bdist_wheel:bdist_wheel" ++ ++[project.optional-dependencies] ++test = [ ++ "pytest >= 3.0.0" ++] ++ ++[tool.flit.sdist] ++exclude = [ ++ ".cirrus.yml", ++ ".github/*", ++ ".gitignore", ++ ".pre-commit-config.yaml", ++ ".readthedocs.yml" ++] ++ ++[tool.black] ++target-version = ['py37'] ++extend-exclude = ''' ++^/src/wheel/vendored/ ++''' ++ ++[tool.isort] ++src_paths = ["src"] ++profile = "black" ++skip_gitignore = true ++ ++[tool.flake8] ++max-line-length = 88 ++ ++[tool.pytest.ini_options] ++testpaths = "tests" ++ ++[tool.coverage.run] ++source = ["wheel"] ++omit = ["*/vendored/*"] ++ ++[tool.coverage.report] ++show_missing = true diff --git a/poky/meta/recipes-devtools/python/python3-wheel_0.37.1.bb b/poky/meta/recipes-devtools/python/python3-wheel_0.37.1.bb new file mode 100644 index 0000000000..91bff82509 --- /dev/null +++ b/poky/meta/recipes-devtools/python/python3-wheel_0.37.1.bb @@ -0,0 +1,40 @@ +SUMMARY = "The official binary distribution format for Python " +HOMEPAGE = "https://github.com/pypa/wheel" +SECTION = "devel/python" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://PKG-INFO;beginline=10;endline=10;md5=8227180126797a0148f94f483f3e1489" + +SRC_URI[sha256sum] = "e9a504e793efbca1b8e0e9cb979a249cf4a0a7b5b8c9e8b65a5e39d49529c1c4" + +inherit flit_core pypi setuptools3-base + +SRC_URI += " file://0001-Backport-pyproject.toml-from-flit-backend-branch.patch" + +DEPENDS:remove:class-native = "python3-pip-native" + +do_install:class-native () { + # We need to bootstrap python3-wheel-native + install -d ${D}${PYTHON_SITEPACKAGES_DIR} + PYPA_WHEEL="${B}/dist/${PYPI_PACKAGE}-${PV}-*.whl" + unzip -d ${D}${PYTHON_SITEPACKAGES_DIR} ${PYPA_WHEEL} || \ + bbfatal_log "Failed to install" + + # pip install would normally generate [project.scripts] in ${bindir} + install -d ${D}/${bindir} + cat << EOF >> ${D}/${bindir}/wheel +#!/bin/sh +'''exec' ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} "\$0" "\$@" +' ''' +# -*- coding: utf-8 -*- +import re +import sys +from wheel.cli import main +if __name__ == '__main__': + sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) + sys.exit(main()) +EOF + chmod 0755 ${D}${bindir}/wheel +} + +BBCLASSEXTEND = "native nativesdk" + diff --git a/poky/meta/recipes-devtools/python/python3-zipp_3.7.0.bb b/poky/meta/recipes-devtools/python/python3-zipp_3.7.0.bb index 9ce987c870..d0f936faf7 100644 --- a/poky/meta/recipes-devtools/python/python3-zipp_3.7.0.bb +++ b/poky/meta/recipes-devtools/python/python3-zipp_3.7.0.bb @@ -7,7 +7,7 @@ SRC_URI[sha256sum] = "9f50f446828eb9d45b267433fd3e9da8d801f614129124863f9c51ebce DEPENDS += "${PYTHON_PN}-setuptools-scm-native" -inherit pypi setuptools3 +inherit pypi setuptools_build_meta DEPENDS += "${PYTHON_PN}-toml-native" diff --git a/poky/meta/recipes-devtools/python/python3_3.10.2.bb b/poky/meta/recipes-devtools/python/python3_3.10.2.bb index 9c67461493..429839b622 100644 --- a/poky/meta/recipes-devtools/python/python3_3.10.2.bb +++ b/poky/meta/recipes-devtools/python/python3_3.10.2.bb @@ -1,7 +1,7 @@ SUMMARY = "The Python Programming Language" HOMEPAGE = "http://www.python.org" DESCRIPTION = "Python is a programming language that lets you work more quickly and integrate your systems more effectively." -LICENSE = "PSFv2" +LICENSE = "PSF-2.0" SECTION = "devel/python" LIC_FILES_CHKSUM = "file://LICENSE;md5=4b8801e752a2c70ac41a5f9aa243f766" @@ -49,12 +49,12 @@ UPSTREAM_CHECK_URI = "https://www.python.org/downloads/source/" CVE_PRODUCT = "python" # Upstream consider this expected behaviour -CVE_CHECK_WHITELIST += "CVE-2007-4559" +CVE_CHECK_IGNORE += "CVE-2007-4559" # This is not exploitable when glibc has CVE-2016-10739 fixed. -CVE_CHECK_WHITELIST += "CVE-2019-18348" +CVE_CHECK_IGNORE += "CVE-2019-18348" # This is windows only issue. -CVE_CHECK_WHITELIST += "CVE-2020-15523" +CVE_CHECK_IGNORE += "CVE-2020-15523" PYTHON_MAJMIN = "3.10" |