From 5f35090dc809872fb7b8f381c1ccf995b75f03a0 Mon Sep 17 00:00:00 2001 From: Andrew Geissler Date: Fri, 23 Jul 2021 13:09:54 -0400 Subject: poky: subtree update:2834c2f853..17aabc0127 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Adam Romanek (3): bitbake: fetch/git: run gc in foreground to avoid race with tar bitbake: fetch2/s3: allow to use credentials from environment variables own-mirrors: Add support for s3:// scheme in SOURCE_MIRROR_URL Alexander Kanavin (44): devtool upgrade: rebase override-only patches as well cmake: update 3.20.3 -> 3.20.4 gnu-config: update to latest revision bash: update 5.1 -> 5.1.8 dnf: updatee 4.7.0 -> 4.8.0 vulkan-samples: update to latest revision bind: upgrade 9.16.16 -> 9.16.18 bluez5: upgrade 5.58 -> 5.59 dejagnu: upgrade 1.6.2 -> 1.6.3 libdnf: upgrade 0.63.0 -> 0.63.1 libpcre: upgrade 8.44 -> 8.45 libxi: upgrade 1.7.10 -> 1.7.99.2 mtools: upgrade 4.0.29 -> 4.0.31 python3-git: upgrade 3.1.17 -> 3.1.18 sqlite3: upgrade 3.35.5 -> 3.36.0 vte: upgrade 0.64.1 -> 0.64.2 x264: upgrade to latest revision python3: apply test skipping patch unconditionally pypi: set SRC_URI with _prepend, not with += man-pages: upgrade 5.11 -> 5.12 rt-tests: update 1.10 -> 2.1 python3-iniparse: update 0.4 -> 0.5 iputils: correct upstream version check texinfo: update 6.7 -> 6.8 xserver-xorg: exclude development snapshots from upstream version checks xwayland: exclude development snapshots from upstream version checks devtool: correctly handle non-standard source tree locations in upgrades llvm: make upgradable via devtool xserver-xorg: update 1.20.11 -> 1.20.12 libmodulemd: update 2.12.1 -> 2.13.0 bluez5: upgrade 5.59 -> 5.60 createrepo-c: upgrade 0.17.3 -> 0.17.4 ethtool: upgrade 5.12 -> 5.13 gtk+3: upgrade 3.24.29 -> 3.24.30 harfbuzz: upgrade 2.8.1 -> 2.8.2 iproute2: upgrade 5.12.0 -> 5.13.0 libgit2: upgrade 1.1.0 -> 1.1.1 mpg123: upgrade 1.28.0 -> 1.28.2 mtools: upgrade 4.0.31 -> 4.0.32 ruby: upgrade 3.0.1 -> 3.0.2 stress-ng: upgrade 0.12.11 -> 0.12.12 webkitgtk: upgrade 2.32.1 -> 2.32.2 xwayland: upgrade 21.1.1 -> 21.1.2 tcl: fix upstream version check Alexey Brodkin (3): dpkg: Add ARC support default-distrovars.inc: Remove seccomp for ARC dhcpcd: add ARC support Andreas Müller (4): libdrm: upgrade 2.4.106 -> 2.4.107 mesa: upgrade 21.1.3 -> 21.1.4 pango: upgrade 1.48.5 -> 1.48.7 mesa: upgrade 21.1.4 -> 21.1.5 Andrej Valek (1): busybox: add tmpdir option into mktemp applet Armin Kuster (1): maintainers.inc: remove myself as a Maintainer Asfak Rahman (1): openssh: Remove temporary keys before generating new ones Bruce Ashfield (24): linux-yocto/5.10: update to v5.10.46 linux-yocto/5.10: features/nft_tables: refresh config options linux-yocto/5.4: update to v5.4.128 linux-yocto/5.10: rcu: Fix stall-warning deadlock due to non-release of rcu_node ->lock linux-yocto/5.10: update to v5.10.47 linux-yocto/5.4: update to v5.4.129 linux-yocto/5.10: scsi-debug needs scsi-disk linux-libc-headers: update to 5.13 kernel-devsrc: fix scripts/prepare for ARM64 kernel-devsrc: fix scripts prepare for powerpc kernel-devsrc: powerpc64 add scripts prepare support linux-yocto: introduce 5.13 recipes linux-yocto/5.13: add devupstream support linux-yocto-rt/5.13: integrate -rt1 linux-yocto: add vfat KERNEL_FEATURE when MACHINE_FEATURES include vfat linux-yocto/5.10: update to v5.10.49 linux-yocto/5.4: update to v5.4.131 linux-yocto/5.13: update to v5.13.2 linux-yocto/5.10: update to v5.10.50 linux-yocto/5.4: update to v5.4.132 linux-yocto/5.13: update to v5.13.3 linux-yocto/5.13: update to v5.13.4 linux-yocto/5.10: update to v5.10.52 linux-yocto/5.4: update to v5.4.134 Changhyeok Bae (1): iputils: Update to 20210202 Changqing Li (1): boost-build-native: workaround one rarely hang problem on fedora34 Christoph Muellner (1): ldconfig-native: Add RISC-V support Damian Wrobel (1): gobject-introspection: Fix the license (add MIT) Denys Dmytriyenko (1): bitbake: providers: replace newly added logger.warn() with logger.warning() Fabio Berton (1): lib/oe/package_manager: Don't ignore installation failures in install_complementary Florian Amstutz (1): devtool: deploy-target: Fix preserving attributes when using --strip Jose Quaresma (3): glslang: upgrade 11.4.0 -> 11.5.0 shaderc: upgrade 2021.0 -> 2021.1 spirv-tools: upgrade 2021.1 -> 2021.2 Joshua Watt (3): ref-manual: Document BUILDHISTORY_PATH_PREFIX_STRIP bitbake: bitbake: Add piping compression library bitbake: server: Fix early parsing errors preventing zombie bitbake Khem Raj (7): glib-2.0: Fix signature of close_range gnome-desktop-testing: Fix non-literal format string warning util-linux: Disable chfn-chsh on non-target builds libseccomp: Update to main branch systemd: Fix libseccomp testcase involving __NR_ppoll util-linux: Fix signature of close_range() gpgme: Use glibc provided closefrom API when available Lee Chee Yang (1): qemu: fix CVE-2021-3527 Marek Vasut (2): pulseaudio: Drop pulseaudio-conf update-rc.d: update SRCREV to pull in fix for non-bash shell support Mark Hatle (1): populate_sdk_ext: Error if trying to generate an eSDK from a mulitconfig Max Krummenacher (1): xwayland: port packageconfig from xserver-xorg recipe Michael Halstead (1): releases: update to include 3.1.9 Michael Ho (1): sstate.bbclass: fix errors about read-only sstate mirrors Mike Crowe (1): licence_image: Add lic-pkgs IMAGE_FEATURE Mingli Yu (4): pulseaudio: check if NEON code can be compiled on arm perlcross: check the file if patched or not perl: correct libpth and glibpth parselogs.py: ignore rndr initialization failure Patrick Williams (1): docs: remove image-mklibs references Paul Barker (1): linux-yocto: Fix devupstream SRCREV assignment Peter Bergin (1): Revert "libubootenv: inherit uboot-config" Quentin Schulz (1): docs: replace remaining ``FOO`` by :term:`FOO` Ralph Siemsen (1): oeqa/manual/toaster: fix small typo Richard Purdie (26): package_pkgdata: Avoid task hash mismatches for generic task changes selftest/fetch: Avoid occasional selftest failure from poor temp file name choice kernel: Fix interaction when packaging disabled kernel-devicetree: Fix interaction when packaging disabled python3-pip/python3-pbr: Drop obsolete md5sum at upgrade oeqa/selftest/runcmd: Tweal test timeouts bash: Fix a rare make race build failure sstate/staging: Handle directory creation race issue oeqa/selftest/archiver: Allow tests to ignore empty directories dwarfsrcfiles: Avoid races over debug-link files oeqa/selftest/multiprocesslauch: Fix test race runqemu: Remove potential lock races around tap device handling glibc-testsuite: Fix build failures when directly running recipe license: Drop adding RRECOMMENDS for license packages report-error: Drop pointless inherit pseudo: Add uninative configuration sanity check pseudo: Update to latest version including statx fix sstate: Drop pseudo exclusion oeqa/qemurunner: Handle files no longer existing gracefully python3: Add a fix for a make install race Add README link to README.poky README.OE-Core/README.qemu: Move to markdown format bitbake: data_smart/parse: Allow ':' characters in variable/function names zstd: Include pzstd in the build buildtools-tarball: Add lz4 and ztsd (including pzstd) build-appliance-image: Update to master head revision Ross Burton (29): glibc: backport MTE improvements from master glibc: re-enable memory tagging libgudev: fix SRC_URI cantarell-fonts: fix SRC_URI shadow: generate alternative links for chfn and chsh util-linux: build chfn and chsh util-linux: add missing ptest dependencies util-linux: backport test suite fixes util-linux: rewrite the ptest integration glib-2.0: fix g-file-into modification time test oeqa/selftest/recipetool: update socat version to fix failing download parted: improve ptest execution tcl: suffix all Tcl man pages instead of using alternatives tcl: EXTRA_OECONF already passes --libdir, don't do it again tcl: mark a patch as upstreamable tcl: use tcl-core instead of patching out packages tcl: use AUTOTOOLS_SCRIPT_PATH tcl: remove redundant file creation tcl: detect tests that error as well as fail tcl: clock.test needs a timezone to be set tcl: fix race in interp.test parted: remove obsolete patch parted: fix ptest RRECOMMENDS busybox: support mounting swap via labels meta: remove redundant ${libdir}/cmake from FILES_${PN}-dev cups: update to 2.3.3op2 parted: skip tests that need vfat support avahi: fix CVE-2021-36217, crash on pinging '.local' parted: add device mappper PACKAGECONFIG Sakib Sajal (3): buildstats.bbclass: log host data on failure to task specific file oe-time-dd-test.sh: add options and refactor scripts/oe-time-dd-test.sh: run "uptime" on each iteration Saul Wold (4): qemurunner: Add info log for qemu startup oeqa/qemurunner: add support qmp cmd args oeqa/dump.py: Add support for QMP command arguments testimage.bbclass: Add dump-guest-memory cmd Scott Weaver (1): meta-skeleton: update to satisfy yocto-check-layer tests Tim Orling (6): python3-importlib-metadata: upgrade 4.5.0 -> 4.6.0 python3-packaging: upgrade 20.9 -> 21.0 python3-hypothesis: upgrade 6.14.0 -> 6.14.1 python3-zipp: upgrade 3.4.1 -> 3.5.0 at-spi2-core: upgrade 2.40.2 -> 2.40.3 python3-hypothesis: upgrade 6.14.1 -> 6.14.3 Tony Tascioglu (1): valgrind: skip flaky ptest fb_test_amd64 Trevor Gamblin (2): python3-pip: upgrade 20.0.2 -> 21.1.2 python3-pip: add multiprocessing to RDEPENDS Yi Zhao (1): libffi: disable use of static exec trampolines Zoltán Böszörményi (1): tzdata: Allow controlling zoneinfo binary format Zqiang (1): ifupdown: Skip wrong test item bkylerussell@gmail.com (1): gstreamer: add libgst packages to PACKAGES_DYNAMIC jbouchard (1): Use the label provided when formating a dos partition wangmy (19): libcap: upgrade 2.50 -> 2.51 libhandy: upgrade 1.2.2 -> 1.2.3 libva: upgrade 2.11.0 -> 2.12.0 libxcrypt: upgrade 4.4.22 -> 4.4.23 python3-numpy: upgrade 1.20.3 -> 1.21.0 python3-pbr: upgrade 5.4.4 -> 5.6.0 cmake: upgrade 3.20.4 -> 3.20.5 gpgme: upgrade 1.15.1 -> 1.16.0 libglu: upgrade 9.0.1 -> 9.0.2 stress-ng: upgrade 0.12.10 -> 0.12.11 xf86-input-libinput: upgrade 1.0.1 -> 1.1.0 vulkan-headers: upgrade 1.2.176 -> 1.2.182 vulkan-loader: upgrade 1.2.176 -> 1.2.182 vulkan-tools: upgrade 1.2.176 -> 1.2.182 gnome-desktop-testing: upgrade 2018.1 -> 2021.1 python3-importlib-metadata: upgrade 4.6.0 -> 4.6.1 u-boot: upgrade 2021.04 -> 2021.07 python3-setuptools: upgrade 57.0.0 -> 57.1.0 btrfs-tools: upgrade 5.12.1 -> 5.13 zangrc (1): python3-pip: upgrade 21.1.2 -> 21.1.3 zhengruoqin (3): libffi: upgrade 3.3 -> 3.4.2 python3: upgrade 3.9.5 -> 3.9.6 python3-pathlib2: upgrade 2.3.5 -> 2.3.6 Signed-off-by: Andrew Geissler Change-Id: If493204235c3a1ce4e7fe65438168512d17a900e --- .../recipes-devtools/python/python3-git_3.1.17.bb | 32 -- .../recipes-devtools/python/python3-git_3.1.18.bb | 32 ++ .../python/python3-hypothesis_6.14.0.bb | 22 - .../python/python3-hypothesis_6.14.3.bb | 22 + .../python/python3-importlib-metadata_4.5.0.bb | 20 - .../python/python3-importlib-metadata_4.6.1.bb | 20 + .../0001-Add-python-3-compatibility.patch | 552 --------------------- .../python/python3-iniparse_0.4.bb | 17 - .../python/python3-iniparse_0.5.bb | 14 + .../python/python3-packaging_20.9.bb | 13 - .../python/python3-packaging_21.0.bb | 13 + .../python/python3-pathlib2_2.3.5.bb | 13 - .../python/python3-pathlib2_2.3.6.bb | 12 + .../recipes-devtools/python/python3-pbr_5.4.4.bb | 5 - .../recipes-devtools/python/python3-pbr_5.6.0.bb | 4 + .../0001-change-shebang-to-python3.patch | 128 +++-- .../recipes-devtools/python/python3-pip_20.0.2.bb | 33 -- .../recipes-devtools/python/python3-pip_21.1.3.bb | 33 ++ .../python3-setuptools/reproducibility.patch | 40 -- .../python/python3-setuptools_57.0.0.bb | 56 --- .../python/python3-setuptools_57.1.0.bb | 55 ++ .../recipes-devtools/python/python3-zipp_3.4.1.bb | 19 - .../recipes-devtools/python/python3-zipp_3.5.0.bb | 18 + ...ix-Issue36464-parallel-build-race-problem.patch | 33 -- .../recipes-devtools/python/python3/makerace.patch | 23 + poky/meta/recipes-devtools/python/python3_3.9.5.bb | 386 -------------- poky/meta/recipes-devtools/python/python3_3.9.6.bb | 386 ++++++++++++++ 27 files changed, 730 insertions(+), 1271 deletions(-) delete mode 100644 poky/meta/recipes-devtools/python/python3-git_3.1.17.bb create mode 100644 poky/meta/recipes-devtools/python/python3-git_3.1.18.bb delete mode 100644 poky/meta/recipes-devtools/python/python3-hypothesis_6.14.0.bb create mode 100644 poky/meta/recipes-devtools/python/python3-hypothesis_6.14.3.bb delete mode 100644 poky/meta/recipes-devtools/python/python3-importlib-metadata_4.5.0.bb create mode 100644 poky/meta/recipes-devtools/python/python3-importlib-metadata_4.6.1.bb delete mode 100644 poky/meta/recipes-devtools/python/python3-iniparse/0001-Add-python-3-compatibility.patch delete mode 100644 poky/meta/recipes-devtools/python/python3-iniparse_0.4.bb create mode 100644 poky/meta/recipes-devtools/python/python3-iniparse_0.5.bb delete mode 100644 poky/meta/recipes-devtools/python/python3-packaging_20.9.bb create mode 100644 poky/meta/recipes-devtools/python/python3-packaging_21.0.bb delete mode 100644 poky/meta/recipes-devtools/python/python3-pathlib2_2.3.5.bb create mode 100644 poky/meta/recipes-devtools/python/python3-pathlib2_2.3.6.bb delete mode 100644 poky/meta/recipes-devtools/python/python3-pbr_5.4.4.bb create mode 100644 poky/meta/recipes-devtools/python/python3-pbr_5.6.0.bb delete mode 100644 poky/meta/recipes-devtools/python/python3-pip_20.0.2.bb create mode 100644 poky/meta/recipes-devtools/python/python3-pip_21.1.3.bb delete mode 100644 poky/meta/recipes-devtools/python/python3-setuptools/reproducibility.patch delete mode 100644 poky/meta/recipes-devtools/python/python3-setuptools_57.0.0.bb create mode 100644 poky/meta/recipes-devtools/python/python3-setuptools_57.1.0.bb delete mode 100644 poky/meta/recipes-devtools/python/python3-zipp_3.4.1.bb create mode 100644 poky/meta/recipes-devtools/python/python3-zipp_3.5.0.bb delete mode 100644 poky/meta/recipes-devtools/python/python3/0001-Makefile-fix-Issue36464-parallel-build-race-problem.patch create mode 100644 poky/meta/recipes-devtools/python/python3/makerace.patch delete mode 100644 poky/meta/recipes-devtools/python/python3_3.9.5.bb create mode 100644 poky/meta/recipes-devtools/python/python3_3.9.6.bb (limited to 'poky/meta/recipes-devtools/python') diff --git a/poky/meta/recipes-devtools/python/python3-git_3.1.17.bb b/poky/meta/recipes-devtools/python/python3-git_3.1.17.bb deleted file mode 100644 index 009cac660..000000000 --- a/poky/meta/recipes-devtools/python/python3-git_3.1.17.bb +++ /dev/null @@ -1,32 +0,0 @@ -SUMMARY = "Python library used to interact with Git repositories" -DESCRIPTION = "GitPython provides object model read and write access to \ -a git repository. Access repository information conveniently, alter the \ -index directly, handle remotes, or go down to low-level object database \ -access with big-files support." -HOMEPAGE = "http://github.com/gitpython-developers/GitPython" -SECTION = "devel/python" -LICENSE = "BSD-3-Clause" -LIC_FILES_CHKSUM = "file://LICENSE;md5=8b8d26c37c1d5a04f9b0186edbebc183" - -PYPI_PACKAGE = "GitPython" - -inherit pypi setuptools3 - -SRC_URI[sha256sum] = "ee24bdc93dce357630764db659edaf6b8d664d4ff5447ccfeedd2dc5c253f41e" - -DEPENDS += " ${PYTHON_PN}-gitdb" - -RDEPENDS_${PN} += " \ - ${PYTHON_PN}-datetime \ - ${PYTHON_PN}-gitdb \ - ${PYTHON_PN}-io \ - ${PYTHON_PN}-logging \ - ${PYTHON_PN}-math \ - ${PYTHON_PN}-netclient \ - ${PYTHON_PN}-stringold \ - ${PYTHON_PN}-unittest \ - ${PYTHON_PN}-unixadmin \ - git \ -" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-devtools/python/python3-git_3.1.18.bb b/poky/meta/recipes-devtools/python/python3-git_3.1.18.bb new file mode 100644 index 000000000..955418c0e --- /dev/null +++ b/poky/meta/recipes-devtools/python/python3-git_3.1.18.bb @@ -0,0 +1,32 @@ +SUMMARY = "Python library used to interact with Git repositories" +DESCRIPTION = "GitPython provides object model read and write access to \ +a git repository. Access repository information conveniently, alter the \ +index directly, handle remotes, or go down to low-level object database \ +access with big-files support." +HOMEPAGE = "http://github.com/gitpython-developers/GitPython" +SECTION = "devel/python" +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://LICENSE;md5=8b8d26c37c1d5a04f9b0186edbebc183" + +PYPI_PACKAGE = "GitPython" + +inherit pypi setuptools3 + +SRC_URI[sha256sum] = "b838a895977b45ab6f0cc926a9045c8d1c44e2b653c1fcc39fe91f42c6e8f05b" + +DEPENDS += " ${PYTHON_PN}-gitdb" + +RDEPENDS_${PN} += " \ + ${PYTHON_PN}-datetime \ + ${PYTHON_PN}-gitdb \ + ${PYTHON_PN}-io \ + ${PYTHON_PN}-logging \ + ${PYTHON_PN}-math \ + ${PYTHON_PN}-netclient \ + ${PYTHON_PN}-stringold \ + ${PYTHON_PN}-unittest \ + ${PYTHON_PN}-unixadmin \ + git \ +" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-devtools/python/python3-hypothesis_6.14.0.bb b/poky/meta/recipes-devtools/python/python3-hypothesis_6.14.0.bb deleted file mode 100644 index 89071b2a9..000000000 --- a/poky/meta/recipes-devtools/python/python3-hypothesis_6.14.0.bb +++ /dev/null @@ -1,22 +0,0 @@ -SUMMARY = "A library for property-based testing" -HOMEPAGE = "https://github.com/HypothesisWorks/hypothesis/tree/master/hypothesis-python" -LICENSE = "MPL-2.0" -LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=4ee62c16ebd0f4f99d906f36b7de8c3c" - -PYPI_PACKAGE = "hypothesis" - -inherit pypi setuptools3 - -SRC_URI[sha256sum] = "9bdee01ae260329b16117e9b0229a839b4a77747a985922653f595bd2a6a541a" - -RDEPENDS_${PN} += " \ - python3-attrs \ - python3-compression \ - python3-core \ - python3-json \ - python3-sortedcontainers \ - python3-statistics \ - python3-unittest \ - " - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-devtools/python/python3-hypothesis_6.14.3.bb b/poky/meta/recipes-devtools/python/python3-hypothesis_6.14.3.bb new file mode 100644 index 000000000..83c9917a0 --- /dev/null +++ b/poky/meta/recipes-devtools/python/python3-hypothesis_6.14.3.bb @@ -0,0 +1,22 @@ +SUMMARY = "A library for property-based testing" +HOMEPAGE = "https://github.com/HypothesisWorks/hypothesis/tree/master/hypothesis-python" +LICENSE = "MPL-2.0" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=4ee62c16ebd0f4f99d906f36b7de8c3c" + +PYPI_PACKAGE = "hypothesis" + +inherit pypi setuptools3 + +SRC_URI[sha256sum] = "1c8776d9fc8c598cf1b93b99bd87976f9d9b589fc58843d85a30090700f14a8a" + +RDEPENDS_${PN} += " \ + python3-attrs \ + python3-compression \ + python3-core \ + python3-json \ + python3-sortedcontainers \ + python3-statistics \ + python3-unittest \ + " + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-devtools/python/python3-importlib-metadata_4.5.0.bb b/poky/meta/recipes-devtools/python/python3-importlib-metadata_4.5.0.bb deleted file mode 100644 index 7c156787a..000000000 --- a/poky/meta/recipes-devtools/python/python3-importlib-metadata_4.5.0.bb +++ /dev/null @@ -1,20 +0,0 @@ -DESCRIPTION = "Read metadata from Python packages" -HOMEPAGE = "https://pypi.org/project/importlib-metadata/" -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=e88ae122f3925d8bde8319060f2ddb8e" - -inherit pypi setuptools3 - -PYPI_PACKAGE = "importlib_metadata" -UPSTREAM_CHECK_REGEX = "/importlib-metadata/(?P(\d+[\.\-_]*)+)/" - -SRC_URI[sha256sum] = "b142cc1dd1342f31ff04bb7d022492b09920cb64fed867cd3ea6f80fe3ebd139" - -S = "${WORKDIR}/importlib_metadata-${PV}" - -DEPENDS += "${PYTHON_PN}-setuptools-scm-native ${PYTHON_PN}-toml-native" -RDEPENDS_${PN} += "${PYTHON_PN}-zipp ${PYTHON_PN}-pathlib2" -RDEPENDS_${PN}_append_class-target = " python3-misc" -RDEPENDS_${PN}_append_class-nativesdk = " python3-misc" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-devtools/python/python3-importlib-metadata_4.6.1.bb b/poky/meta/recipes-devtools/python/python3-importlib-metadata_4.6.1.bb new file mode 100644 index 000000000..7e9604aaf --- /dev/null +++ b/poky/meta/recipes-devtools/python/python3-importlib-metadata_4.6.1.bb @@ -0,0 +1,20 @@ +DESCRIPTION = "Read metadata from Python packages" +HOMEPAGE = "https://pypi.org/project/importlib-metadata/" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=e88ae122f3925d8bde8319060f2ddb8e" + +inherit pypi setuptools3 + +PYPI_PACKAGE = "importlib_metadata" +UPSTREAM_CHECK_REGEX = "/importlib-metadata/(?P(\d+[\.\-_]*)+)/" + +SRC_URI[sha256sum] = "079ada16b7fc30dfbb5d13399a5113110dab1aa7c2bc62f66af75f0b717c8cac" + +S = "${WORKDIR}/importlib_metadata-${PV}" + +DEPENDS += "${PYTHON_PN}-setuptools-scm-native ${PYTHON_PN}-toml-native" +RDEPENDS_${PN} += "${PYTHON_PN}-zipp ${PYTHON_PN}-pathlib2" +RDEPENDS_${PN}_append_class-target = " python3-misc" +RDEPENDS_${PN}_append_class-nativesdk = " python3-misc" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-devtools/python/python3-iniparse/0001-Add-python-3-compatibility.patch b/poky/meta/recipes-devtools/python/python3-iniparse/0001-Add-python-3-compatibility.patch deleted file mode 100644 index 44090a20d..000000000 --- a/poky/meta/recipes-devtools/python/python3-iniparse/0001-Add-python-3-compatibility.patch +++ /dev/null @@ -1,552 +0,0 @@ -From 8a98e4d44a5e59439a4b6bd95368cc362412c995 Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin -Date: Fri, 24 Mar 2017 18:06:08 +0200 -Subject: [PATCH] Add python 3 compatibility. - -Taken from -http://pkgs.fedoraproject.org/cgit/rpms/python-iniparse.git/tree/python-iniparse-python3-compat.patch - -Upstream-Status: Inappropriate [upstream is defunct] -Signed-off-by: Alexander Kanavin ---- - iniparse/__init__.py | 20 ++++++++++---------- - iniparse/compat.py | 30 ++++++++++++++++-------------- - iniparse/config.py | 16 ++++++++-------- - iniparse/configparser.py | 7 +++++++ - iniparse/ini.py | 20 ++++++++++++-------- - iniparse/utils.py | 4 ++-- - tests/__init__.py | 14 +++++++------- - tests/test_compat.py | 23 +++++++++++++++-------- - tests/test_fuzz.py | 18 +++++++++--------- - tests/test_ini.py | 8 ++++---- - tests/test_misc.py | 4 ++-- - tests/test_tidy.py | 2 +- - tests/test_unicode.py | 10 +++++----- - 13 files changed, 98 insertions(+), 78 deletions(-) - create mode 100644 iniparse/configparser.py - -diff --git a/iniparse/__init__.py b/iniparse/__init__.py -index 8de756f..7193f92 100644 ---- a/iniparse/__init__.py -+++ b/iniparse/__init__.py -@@ -3,17 +3,17 @@ - # Copyright (c) 2007 Tim Lauridsen - # All Rights Reserved. See LICENSE-PSF & LICENSE for details. - --from ini import INIConfig, change_comment_syntax --from config import BasicConfig, ConfigNamespace --from compat import RawConfigParser, ConfigParser, SafeConfigParser --from utils import tidy -+from .ini import INIConfig, change_comment_syntax -+from .config import BasicConfig, ConfigNamespace -+from .compat import RawConfigParser, ConfigParser, SafeConfigParser -+from .utils import tidy - --from ConfigParser import DuplicateSectionError, \ -- NoSectionError, NoOptionError, \ -- InterpolationMissingOptionError, \ -- InterpolationDepthError, \ -- InterpolationSyntaxError, \ -- DEFAULTSECT, MAX_INTERPOLATION_DEPTH -+from .configparser import DuplicateSectionError, \ -+ NoSectionError, NoOptionError, \ -+ InterpolationMissingOptionError, \ -+ InterpolationDepthError, \ -+ InterpolationSyntaxError, \ -+ DEFAULTSECT, MAX_INTERPOLATION_DEPTH - - __all__ = [ - 'BasicConfig', 'ConfigNamespace', -diff --git a/iniparse/compat.py b/iniparse/compat.py -index db89ed8..f95c25c 100644 ---- a/iniparse/compat.py -+++ b/iniparse/compat.py -@@ -12,19 +12,21 @@ The underlying INIConfig object can be accessed as cfg.data - """ - - import re --from ConfigParser import DuplicateSectionError, \ -- NoSectionError, NoOptionError, \ -- InterpolationMissingOptionError, \ -- InterpolationDepthError, \ -- InterpolationSyntaxError, \ -- DEFAULTSECT, MAX_INTERPOLATION_DEPTH -+from .configparser import DuplicateSectionError, \ -+ NoSectionError, NoOptionError, \ -+ InterpolationMissingOptionError, \ -+ InterpolationDepthError, \ -+ InterpolationSyntaxError, \ -+ DEFAULTSECT, MAX_INTERPOLATION_DEPTH - - # These are imported only for compatiability. - # The code below does not reference them directly. --from ConfigParser import Error, InterpolationError, \ -- MissingSectionHeaderError, ParsingError -+from .configparser import Error, InterpolationError, \ -+ MissingSectionHeaderError, ParsingError - --import ini -+import six -+ -+from . import ini - - class RawConfigParser(object): - def __init__(self, defaults=None, dict_type=dict): -@@ -56,7 +58,7 @@ class RawConfigParser(object): - # The default section is the only one that gets the case-insensitive - # treatment - so it is special-cased here. - if section.lower() == "default": -- raise ValueError, 'Invalid section name: %s' % section -+ raise ValueError('Invalid section name: %s' % section) - - if self.has_section(section): - raise DuplicateSectionError(section) -@@ -88,7 +90,7 @@ class RawConfigParser(object): - filename may also be given. - """ - files_read = [] -- if isinstance(filenames, basestring): -+ if isinstance(filenames, six.string_types): - filenames = [filenames] - for filename in filenames: - try: -@@ -143,7 +145,7 @@ class RawConfigParser(object): - def getboolean(self, section, option): - v = self.get(section, option) - if v.lower() not in self._boolean_states: -- raise ValueError, 'Not a boolean: %s' % v -+ raise ValueError('Not a boolean: %s' % v) - return self._boolean_states[v.lower()] - - def has_option(self, section, option): -@@ -234,7 +236,7 @@ class ConfigParser(RawConfigParser): - if "%(" in value: - try: - value = value % vars -- except KeyError, e: -+ except KeyError as e: - raise InterpolationMissingOptionError( - option, section, rawval, e.args[0]) - else: -@@ -283,7 +285,7 @@ class SafeConfigParser(ConfigParser): - _badpercent_re = re.compile(r"%[^%]|%$") - - def set(self, section, option, value): -- if not isinstance(value, basestring): -+ if not isinstance(value, six.string_types): - raise TypeError("option values must be strings") - # check for bad percent signs: - # first, replace all "good" interpolations -diff --git a/iniparse/config.py b/iniparse/config.py -index 5cfa2ea..3b28549 100644 ---- a/iniparse/config.py -+++ b/iniparse/config.py -@@ -143,7 +143,7 @@ class BasicConfig(ConfigNamespace): - - >>> n.aaa = 42 - >>> del n.x -- >>> print n -+ >>> print(n) - aaa = 42 - name.first = paramjit - name.last = oberoi -@@ -152,7 +152,7 @@ class BasicConfig(ConfigNamespace): - - >>> isinstance(n.name, ConfigNamespace) - True -- >>> print n.name -+ >>> print(n.name) - first = paramjit - last = oberoi - >>> sorted(list(n.name)) -@@ -160,7 +160,7 @@ class BasicConfig(ConfigNamespace): - - Finally, values can be read from a file as follows: - -- >>> from StringIO import StringIO -+ >>> from six import StringIO - >>> sio = StringIO(''' - ... # comment - ... ui.height = 100 -@@ -171,7 +171,7 @@ class BasicConfig(ConfigNamespace): - ... ''') - >>> n = BasicConfig() - >>> n._readfp(sio) -- >>> print n -+ >>> print(n) - complexity = medium - data.secret.password = goodness=gracious me - have_python -@@ -199,7 +199,7 @@ class BasicConfig(ConfigNamespace): - - def __str__(self, prefix=''): - lines = [] -- keys = self._data.keys() -+ keys = list(self._data.keys()) - keys.sort() - for name in keys: - value = self._data[name] -@@ -258,7 +258,7 @@ def update_config(target, source): - >>> n.ui.display_clock = True - >>> n.ui.display_qlength = True - >>> n.ui.width = 150 -- >>> print n -+ >>> print(n) - playlist.expand_playlist = True - ui.display_clock = True - ui.display_qlength = True -@@ -267,7 +267,7 @@ def update_config(target, source): - >>> from iniparse import ini - >>> i = ini.INIConfig() - >>> update_config(i, n) -- >>> print i -+ >>> print(i) - [playlist] - expand_playlist = True - -@@ -277,7 +277,7 @@ def update_config(target, source): - width = 150 - - """ -- for name in source: -+ for name in sorted(source): - value = source[name] - if isinstance(value, ConfigNamespace): - if name in target: -diff --git a/iniparse/configparser.py b/iniparse/configparser.py -new file mode 100644 -index 0000000..c543d50 ---- /dev/null -+++ b/iniparse/configparser.py -@@ -0,0 +1,7 @@ -+try: -+ from ConfigParser import * -+ # not all objects get imported with __all__ -+ from ConfigParser import Error, InterpolationMissingOptionError -+except ImportError: -+ from configparser import * -+ from configparser import Error, InterpolationMissingOptionError -diff --git a/iniparse/ini.py b/iniparse/ini.py -index 408354d..052d9e9 100644 ---- a/iniparse/ini.py -+++ b/iniparse/ini.py -@@ -7,7 +7,7 @@ - - Example: - -- >>> from StringIO import StringIO -+ >>> from six import StringIO - >>> sio = StringIO('''# configure foo-application - ... [foo] - ... bar1 = qualia -@@ -16,14 +16,14 @@ Example: - ... special = 1''') - - >>> cfg = INIConfig(sio) -- >>> print cfg.foo.bar1 -+ >>> print(cfg.foo.bar1) - qualia -- >>> print cfg['foo-ext'].special -+ >>> print(cfg['foo-ext'].special) - 1 - >>> cfg.foo.newopt = 'hi!' - >>> cfg.baz.enabled = 0 - -- >>> print cfg -+ >>> print(cfg) - # configure foo-application - [foo] - bar1 = qualia -@@ -42,9 +42,11 @@ Example: - # Backward-compatiable with ConfigParser - - import re --from ConfigParser import DEFAULTSECT, ParsingError, MissingSectionHeaderError -+from .configparser import DEFAULTSECT, ParsingError, MissingSectionHeaderError - --import config -+import six -+ -+from . import config - - class LineType(object): - line = None -@@ -278,6 +280,8 @@ class LineContainer(object): - value = property(get_value, set_value) - - def __str__(self): -+ for c in self.contents: -+ pass#print(c.__str__()) - s = [x.__str__() for x in self.contents] - return '\n'.join(s) - -@@ -465,7 +469,7 @@ class INIConfig(config.ConfigNamespace): - self._sections = {} - if defaults is None: defaults = {} - self._defaults = INISection(LineContainer(), optionxformsource=self) -- for name, value in defaults.iteritems(): -+ for name, value in defaults.items(): - self._defaults[name] = value - if fp is not None: - self._readfp(fp) -@@ -551,7 +555,7 @@ class INIConfig(config.ConfigNamespace): - - for line in readline_iterator(fp): - # Check for BOM on first line -- if linecount == 0 and isinstance(line, unicode): -+ if linecount == 0 and isinstance(line, six.text_type): - if line[0] == u'\ufeff': - line = line[1:] - self._bom = True -diff --git a/iniparse/utils.py b/iniparse/utils.py -index 829fc28..f8b773a 100644 ---- a/iniparse/utils.py -+++ b/iniparse/utils.py -@@ -1,5 +1,5 @@ --import compat --from ini import LineContainer, EmptyLine -+from . import compat -+from .ini import LineContainer, EmptyLine - - def tidy(cfg): - """Clean up blank lines. -diff --git a/tests/__init__.py b/tests/__init__.py -index f1fa321..88689fb 100644 ---- a/tests/__init__.py -+++ b/tests/__init__.py -@@ -1,12 +1,12 @@ - import unittest, doctest - --import test_ini --import test_misc --import test_fuzz --import test_compat --import test_unicode --import test_tidy --import test_multiprocessing -+from . import test_ini -+from . import test_misc -+from . import test_fuzz -+from . import test_compat -+from . import test_unicode -+from . import test_tidy -+from . import test_multiprocessing - from iniparse import config - from iniparse import ini - -diff --git a/tests/test_compat.py b/tests/test_compat.py -index b8da3d5..b6dfb5c 100644 ---- a/tests/test_compat.py -+++ b/tests/test_compat.py -@@ -1,9 +1,16 @@ - from iniparse import compat as ConfigParser --import StringIO -+from six import StringIO -+try: -+ import UserDict -+except ImportError: -+ import collections as UserDict - import unittest --import UserDict - --from test import test_support -+import sys -+if sys.version_info[0] < 3: -+ from test import test_support -+else: -+ from test import support as test_support - - class SortedDict(UserDict.UserDict): - def items(self): -@@ -35,7 +42,7 @@ class TestCaseBase(unittest.TestCase): - - def fromstring(self, string, defaults=None): - cf = self.newconfig(defaults) -- sio = StringIO.StringIO(string) -+ sio = StringIO(string) - cf.readfp(sio) - return cf - -@@ -161,7 +168,7 @@ class TestCaseBase(unittest.TestCase): - "No Section!\n") - - def parse_error(self, exc, src): -- sio = StringIO.StringIO(src) -+ sio = StringIO(src) - self.assertRaises(exc, self.cf.readfp, sio) - - def test_query_errors(self): -@@ -181,7 +188,7 @@ class TestCaseBase(unittest.TestCase): - def get_error(self, exc, section, option): - try: - self.cf.get(section, option) -- except exc, e: -+ except exc as e: - return e - else: - self.fail("expected exception type %s.%s" -@@ -227,7 +234,7 @@ class TestCaseBase(unittest.TestCase): - "foo: another very\n" - " long line" - ) -- output = StringIO.StringIO() -+ output = StringIO() - cf.write(output) - self.assertEqual( - output.getvalue(), -@@ -465,7 +472,7 @@ class SortedTestCase(RawConfigParserTestCase): - "o1=4\n" - "[a]\n" - "k=v\n") -- output = StringIO.StringIO() -+ output = StringIO() - self.cf.write(output) - self.assertEquals(output.getvalue(), - "[a]\n" -diff --git a/tests/test_fuzz.py b/tests/test_fuzz.py -index 5420dcc..b219500 100644 ---- a/tests/test_fuzz.py -+++ b/tests/test_fuzz.py -@@ -1,9 +1,10 @@ - import re - import os - import random -+import sys - import unittest --import ConfigParser --from StringIO import StringIO -+from six import StringIO -+from six.moves import configparser - from iniparse import compat, ini, tidy - - # TODO: -@@ -96,24 +97,25 @@ class test_fuzz(unittest.TestCase): - s = '\n'.join(good_lines) - cc = compat.RawConfigParser() - cc.readfp(StringIO(s)) -- cc_py = ConfigParser.RawConfigParser() -+ cc_py = configparser.RawConfigParser() - cc_py.readfp(StringIO(s)) - # compare the two configparsers - self.assertEqualConfig(cc_py, cc) - # check that tidy does not change semantics - tidy(cc) -- cc_tidy = ConfigParser.RawConfigParser() -+ cc_tidy = configparser.RawConfigParser() - cc_tidy.readfp(StringIO(str(cc.data))) - self.assertEqualConfig(cc_py, cc_tidy) - except AssertionError: - fname = 'fuzz-test-iter-%d.ini' % fuzz_iter -- print 'Fuzz test failed at iteration', fuzz_iter -- print 'Writing out failing INI file as', fname -+ print('Fuzz test failed at iteration', fuzz_iter) -+ print('Writing out failing INI file as', fname) - f = open(fname, 'w') - f.write(s) - f.close() - raise - -+ @unittest.skipIf(sys.version_info[0] > 2, 'http://code.google.com/p/iniparse/issues/detail?id=22#c9') - def assertEqualConfig(self, c1, c2): - self.assertEqualSorted(c1.sections(), c2.sections()) - self.assertEqualSorted(c1.defaults().items(), c2.defaults().items()) -@@ -123,9 +125,7 @@ class test_fuzz(unittest.TestCase): - self.assertEqual(c1.get(sec, opt), c2.get(sec, opt)) - - def assertEqualSorted(self, l1, l2): -- l1.sort() -- l2.sort() -- self.assertEqual(l1, l2) -+ self.assertEqual(sorted(l1), sorted(l2)) - - class suite(unittest.TestSuite): - def __init__(self): -diff --git a/tests/test_ini.py b/tests/test_ini.py -index 6a76edb..07d4f4e 100644 ---- a/tests/test_ini.py -+++ b/tests/test_ini.py -@@ -1,5 +1,5 @@ - import unittest --from StringIO import StringIO -+from six import StringIO - - from iniparse import ini - from iniparse import compat -@@ -196,13 +196,13 @@ but = also me - self.assertEqual(p._data.find('section2').find('just').value, 'kidding') - - itr = p._data.finditer('section1') -- v = itr.next() -+ v = next(itr) - self.assertEqual(v.find('help').value, 'yourself') - self.assertEqual(v.find('but').value, 'also me') -- v = itr.next() -+ v = next(itr) - self.assertEqual(v.find('help').value, 'me') - self.assertEqual(v.find('I\'m').value, 'desperate') -- self.assertRaises(StopIteration, itr.next) -+ self.assertRaises(StopIteration, next, itr) - - self.assertRaises(KeyError, p._data.find, 'section') - self.assertRaises(KeyError, p._data.find('section2').find, 'ahem') -diff --git a/tests/test_misc.py b/tests/test_misc.py -index 31cf4da..96ef035 100644 ---- a/tests/test_misc.py -+++ b/tests/test_misc.py -@@ -1,9 +1,9 @@ - import re - import unittest - import pickle --import ConfigParser -+from six.moves import configparser -+from six import StringIO - from textwrap import dedent --from StringIO import StringIO - from iniparse import compat, ini - - class CaseSensitiveConfigParser(compat.ConfigParser): -diff --git a/tests/test_tidy.py b/tests/test_tidy.py -index 7304747..26b6cde 100644 ---- a/tests/test_tidy.py -+++ b/tests/test_tidy.py -@@ -1,6 +1,6 @@ - import unittest - from textwrap import dedent --from StringIO import StringIO -+from six import StringIO - - from iniparse import tidy,INIConfig - from iniparse.ini import EmptyLine -diff --git a/tests/test_unicode.py b/tests/test_unicode.py -index a56fcab..14d4fbd 100644 ---- a/tests/test_unicode.py -+++ b/tests/test_unicode.py -@@ -1,5 +1,5 @@ - import unittest --from StringIO import StringIO -+import six - from iniparse import compat, ini - - class test_unicode(unittest.TestCase): -@@ -17,14 +17,14 @@ baz = Marc-Andr\202 - """ - - def basic_tests(self, s, strable): -- f = StringIO(s) -+ f = six.StringIO(s) - i = ini.INIConfig(f) -- self.assertEqual(unicode(i), s) -- self.assertEqual(type(i.foo.bar), unicode) -+ self.assertEqual(six.text_type(i), s) -+ self.assertEqual(type(i.foo.bar), six.text_type) - if strable: - self.assertEqual(str(i), str(s)) - else: -- self.assertRaises(UnicodeEncodeError, lambda: str(i)) -+ self.assertRaises(UnicodeEncodeError, lambda: six.text_type(i).encode('ascii')) - return i - - def test_ascii(self): --- -2.11.0 - diff --git a/poky/meta/recipes-devtools/python/python3-iniparse_0.4.bb b/poky/meta/recipes-devtools/python/python3-iniparse_0.4.bb deleted file mode 100644 index 47cd6598c..000000000 --- a/poky/meta/recipes-devtools/python/python3-iniparse_0.4.bb +++ /dev/null @@ -1,17 +0,0 @@ -SUMMARY = "Accessing and Modifying INI files" -HOMEPAGE = "https://pypi.org/project/iniparse/" -LICENSE = "MIT & PSF" -LIC_FILES_CHKSUM = "file://LICENSE-PSF;md5=1c78a5bb3584b353496d5f6f34edb4b2 \ - file://LICENSE;md5=52f28065af11d69382693b45b5a8eb54" - -SRC_URI = "file://0001-Add-python-3-compatibility.patch " - -SRC_URI[md5sum] = "5e573e9e9733d97623881ce9bbe5eca6" -SRC_URI[sha256sum] = "abc1ee12d2cfb2506109072d6c21e40b6c75a3fe90a9c924327d80bc0d99c054" - -inherit pypi distutils3 - -RDEPENDS_${PN} += "python3-core python3-six" -DEPENDS += "python3-six" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-devtools/python/python3-iniparse_0.5.bb b/poky/meta/recipes-devtools/python/python3-iniparse_0.5.bb new file mode 100644 index 000000000..4ed82eab2 --- /dev/null +++ b/poky/meta/recipes-devtools/python/python3-iniparse_0.5.bb @@ -0,0 +1,14 @@ +SUMMARY = "Accessing and Modifying INI files" +HOMEPAGE = "https://pypi.org/project/iniparse/" +LICENSE = "MIT & PSF" +LIC_FILES_CHKSUM = "file://LICENSE-PSF;md5=1c78a5bb3584b353496d5f6f34edb4b2 \ + file://LICENSE;md5=52f28065af11d69382693b45b5a8eb54" + +SRC_URI[sha256sum] = "932e5239d526e7acb504017bb707be67019ac428a6932368e6851691093aa842" + +inherit pypi setuptools3 + +RDEPENDS_${PN} += "python3-core python3-six" +DEPENDS += "python3-six" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-devtools/python/python3-packaging_20.9.bb b/poky/meta/recipes-devtools/python/python3-packaging_20.9.bb deleted file mode 100644 index 92cf6a25f..000000000 --- a/poky/meta/recipes-devtools/python/python3-packaging_20.9.bb +++ /dev/null @@ -1,13 +0,0 @@ -DESCRIPTION = "Core utilities for Python packages" -HOMEPAGE = "https://github.com/pypa/packaging" -LICENSE = "Apache-2.0 & BSD" -LIC_FILES_CHKSUM = "file://LICENSE;md5=faadaedca9251a90b205c9167578ce91" - -SRC_URI[sha256sum] = "5b327ac1320dc863dca72f4514ecc086f31186744b84a230374cc1fd776feae5" - -inherit pypi setuptools3 - -BBCLASSEXTEND = "native" - -DEPENDS += "${PYTHON_PN}-setuptools-scm-native" -RDEPENDS_${PN} += "${PYTHON_PN}-six ${PYTHON_PN}-pyparsing" diff --git a/poky/meta/recipes-devtools/python/python3-packaging_21.0.bb b/poky/meta/recipes-devtools/python/python3-packaging_21.0.bb new file mode 100644 index 000000000..23ecd9df5 --- /dev/null +++ b/poky/meta/recipes-devtools/python/python3-packaging_21.0.bb @@ -0,0 +1,13 @@ +DESCRIPTION = "Core utilities for Python packages" +HOMEPAGE = "https://github.com/pypa/packaging" +LICENSE = "Apache-2.0 & BSD" +LIC_FILES_CHKSUM = "file://LICENSE;md5=faadaedca9251a90b205c9167578ce91" + +SRC_URI[sha256sum] = "7dc96269f53a4ccec5c0670940a4281106dd0bb343f47b7471f779df49c2fbe7" + +inherit pypi setuptools3 + +BBCLASSEXTEND = "native" + +DEPENDS += "${PYTHON_PN}-setuptools-scm-native" +RDEPENDS_${PN} += "${PYTHON_PN}-six ${PYTHON_PN}-pyparsing" diff --git a/poky/meta/recipes-devtools/python/python3-pathlib2_2.3.5.bb b/poky/meta/recipes-devtools/python/python3-pathlib2_2.3.5.bb deleted file mode 100644 index a022701ad..000000000 --- a/poky/meta/recipes-devtools/python/python3-pathlib2_2.3.5.bb +++ /dev/null @@ -1,13 +0,0 @@ -DESCRIPTION = "Object-oriented filesystem paths" -HOMEPAGE = "https://github.com/mcmtroffaes/pathlib2" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=042856c23a3e903b33bf361ea1cbe29a" - -SRC_URI[md5sum] = "f2bd0a363eb0f8fa0556f35c1d9e66fb" -SRC_URI[sha256sum] = "6cd9a47b597b37cc57de1c05e56fb1a1c9cc9fab04fe78c29acd090418529868" - -inherit pypi setuptools3 - -RDEPENDS_${PN} += "${PYTHON_PN}-six ${PYTHON_PN}-ctypes" - -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.6.bb new file mode 100644 index 000000000..8516bbe4d --- /dev/null +++ b/poky/meta/recipes-devtools/python/python3-pathlib2_2.3.6.bb @@ -0,0 +1,12 @@ +DESCRIPTION = "Object-oriented filesystem paths" +HOMEPAGE = "https://github.com/mcmtroffaes/pathlib2" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=2dc08586cce3ab91bfa091b655c0e440" + +SRC_URI[sha256sum] = "7d8bcb5555003cdf4a8d2872c538faa3a0f5d20630cb360e518ca3b981795e5f" + +inherit pypi setuptools3 + +RDEPENDS_${PN} += "${PYTHON_PN}-six ${PYTHON_PN}-ctypes" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-devtools/python/python3-pbr_5.4.4.bb b/poky/meta/recipes-devtools/python/python3-pbr_5.4.4.bb deleted file mode 100644 index 6f335ea34..000000000 --- a/poky/meta/recipes-devtools/python/python3-pbr_5.4.4.bb +++ /dev/null @@ -1,5 +0,0 @@ -inherit setuptools3 -require python-pbr.inc - -SRC_URI[md5sum] = "65cdc32e1a1ff56d481fc15aa8caf988" -SRC_URI[sha256sum] = "139d2625547dbfa5fb0b81daebb39601c478c21956dc57e2e07b74450a8c506b" diff --git a/poky/meta/recipes-devtools/python/python3-pbr_5.6.0.bb b/poky/meta/recipes-devtools/python/python3-pbr_5.6.0.bb new file mode 100644 index 000000000..132e6e52b --- /dev/null +++ b/poky/meta/recipes-devtools/python/python3-pbr_5.6.0.bb @@ -0,0 +1,4 @@ +inherit setuptools3 +require python-pbr.inc + +SRC_URI[sha256sum] = "42df03e7797b796625b1029c0400279c7c34fd7df24a7d7818a1abb5b38710dd" diff --git a/poky/meta/recipes-devtools/python/python3-pip/0001-change-shebang-to-python3.patch b/poky/meta/recipes-devtools/python/python3-pip/0001-change-shebang-to-python3.patch index 00cffe169..018700116 100644 --- a/poky/meta/recipes-devtools/python/python3-pip/0001-change-shebang-to-python3.patch +++ b/poky/meta/recipes-devtools/python/python3-pip/0001-change-shebang-to-python3.patch @@ -1,32 +1,30 @@ -From e7a00e9b5104ae2fbcea32a35c85760b77fae7e5 Mon Sep 17 00:00:00 2001 -From: Changqing Li -Date: Thu, 23 Apr 2020 09:42:10 +0000 +From baa85a4dab2e8d64eb25d1181b6420db25ce919a Mon Sep 17 00:00:00 2001 +From: Trevor Gamblin +Date: Tue, 22 Jun 2021 12:31:46 -0400 Subject: [PATCH] change shebang to python3 -Upstream-Status: Pending +Upstream-Status: Inappropriate (OE-specific) -pip will drop support of python2 from 21.0 +Despite no longer supporting python2, some files in the pip source refer +to "python" instead of "python3", so patch them as needed to ensure that +they correctly reference the python3 binary. -Signed-off-by: Changqing Li +Signed-off-by: Trevor Gamblin --- - src/pip/_internal/__init__.py | 2 +- - src/pip/_vendor/appdirs.py | 2 +- - src/pip/_vendor/chardet/cli/chardetect.py | 2 +- - src/pip/_vendor/requests/certs.py | 2 +- - 4 files changed, 4 insertions(+), 4 deletions(-) + src/pip/_vendor/appdirs.py | 2 +- + src/pip/_vendor/chardet/langbulgarianmodel.py | 2 +- + src/pip/_vendor/chardet/langgreekmodel.py | 2 +- + src/pip/_vendor/chardet/langhebrewmodel.py | 2 +- + src/pip/_vendor/chardet/langhungarianmodel.py | 2 +- + src/pip/_vendor/chardet/langrussianmodel.py | 2 +- + src/pip/_vendor/chardet/langthaimodel.py | 2 +- + src/pip/_vendor/chardet/langturkishmodel.py | 2 +- + src/pip/_vendor/chardet/metadata/languages.py | 2 +- + src/pip/_vendor/requests/certs.py | 2 +- + 10 files changed, 10 insertions(+), 10 deletions(-) -diff --git a/src/pip/_internal/__init__.py b/src/pip/_internal/__init__.py -index 3aa8a46..e1ad179 100755 ---- a/src/pip/_internal/__init__.py -+++ b/src/pip/_internal/__init__.py -@@ -1,4 +1,4 @@ --#!/usr/bin/env python -+#!/usr/bin/env python3 - import pip._internal.utils.inject_securetransport # noqa - from pip._internal.utils.typing import MYPY_CHECK_RUNNING - diff --git a/src/pip/_vendor/appdirs.py b/src/pip/_vendor/appdirs.py -index 3a52b75..ad3f81d 100644 +index 33a3b7741..60b9ef5f7 100644 --- a/src/pip/_vendor/appdirs.py +++ b/src/pip/_vendor/appdirs.py @@ -1,4 +1,4 @@ @@ -35,18 +33,88 @@ index 3a52b75..ad3f81d 100644 # -*- coding: utf-8 -*- # Copyright (c) 2005-2010 ActiveState Software Inc. # Copyright (c) 2013 Eddy Petrișor -diff --git a/src/pip/_vendor/chardet/cli/chardetect.py b/src/pip/_vendor/chardet/cli/chardetect.py -index c61136b..a497e98 100644 ---- a/src/pip/_vendor/chardet/cli/chardetect.py -+++ b/src/pip/_vendor/chardet/cli/chardetect.py +diff --git a/src/pip/_vendor/chardet/langbulgarianmodel.py b/src/pip/_vendor/chardet/langbulgarianmodel.py +index e963a5097..97ea6cea8 100644 +--- a/src/pip/_vendor/chardet/langbulgarianmodel.py ++++ b/src/pip/_vendor/chardet/langbulgarianmodel.py +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python ++#!/usr/bin/env python3 + # -*- coding: utf-8 -*- + + from pip._vendor.chardet.sbcharsetprober import SingleByteCharSetModel +diff --git a/src/pip/_vendor/chardet/langgreekmodel.py b/src/pip/_vendor/chardet/langgreekmodel.py +index d99528ede..4a127ea83 100644 +--- a/src/pip/_vendor/chardet/langgreekmodel.py ++++ b/src/pip/_vendor/chardet/langgreekmodel.py +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python ++#!/usr/bin/env python3 + # -*- coding: utf-8 -*- + + from pip._vendor.chardet.sbcharsetprober import SingleByteCharSetModel +diff --git a/src/pip/_vendor/chardet/langhebrewmodel.py b/src/pip/_vendor/chardet/langhebrewmodel.py +index 484c652a4..676c1a711 100644 +--- a/src/pip/_vendor/chardet/langhebrewmodel.py ++++ b/src/pip/_vendor/chardet/langhebrewmodel.py +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python ++#!/usr/bin/env python3 + # -*- coding: utf-8 -*- + + from pip._vendor.chardet.sbcharsetprober import SingleByteCharSetModel +diff --git a/src/pip/_vendor/chardet/langhungarianmodel.py b/src/pip/_vendor/chardet/langhungarianmodel.py +index bbc5cda64..042eae70a 100644 +--- a/src/pip/_vendor/chardet/langhungarianmodel.py ++++ b/src/pip/_vendor/chardet/langhungarianmodel.py +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python ++#!/usr/bin/env python3 + # -*- coding: utf-8 -*- + + from pip._vendor.chardet.sbcharsetprober import SingleByteCharSetModel +diff --git a/src/pip/_vendor/chardet/langrussianmodel.py b/src/pip/_vendor/chardet/langrussianmodel.py +index 5594452b5..564b02e58 100644 +--- a/src/pip/_vendor/chardet/langrussianmodel.py ++++ b/src/pip/_vendor/chardet/langrussianmodel.py +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python ++#!/usr/bin/env python3 + # -*- coding: utf-8 -*- + + from pip._vendor.chardet.sbcharsetprober import SingleByteCharSetModel +diff --git a/src/pip/_vendor/chardet/langthaimodel.py b/src/pip/_vendor/chardet/langthaimodel.py +index 9a37db573..c97487959 100644 +--- a/src/pip/_vendor/chardet/langthaimodel.py ++++ b/src/pip/_vendor/chardet/langthaimodel.py +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python ++#!/usr/bin/env python3 + # -*- coding: utf-8 -*- + + from pip._vendor.chardet.sbcharsetprober import SingleByteCharSetModel +diff --git a/src/pip/_vendor/chardet/langturkishmodel.py b/src/pip/_vendor/chardet/langturkishmodel.py +index 43f4230ae..7e710c371 100644 +--- a/src/pip/_vendor/chardet/langturkishmodel.py ++++ b/src/pip/_vendor/chardet/langturkishmodel.py +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python ++#!/usr/bin/env python3 + # -*- coding: utf-8 -*- + + from pip._vendor.chardet.sbcharsetprober import SingleByteCharSetModel +diff --git a/src/pip/_vendor/chardet/metadata/languages.py b/src/pip/_vendor/chardet/metadata/languages.py +index 3237d5abf..aa2ec7c35 100644 +--- a/src/pip/_vendor/chardet/metadata/languages.py ++++ b/src/pip/_vendor/chardet/metadata/languages.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 + # -*- coding: utf-8 -*- """ - Script which takes one or more file paths and reports on their detected - encodings + Metadata about languages used by our model training code for our diff --git a/src/pip/_vendor/requests/certs.py b/src/pip/_vendor/requests/certs.py -index 06a594e..bfa7839 100644 +index 06a594e58..bfa7839a4 100644 --- a/src/pip/_vendor/requests/certs.py +++ b/src/pip/_vendor/requests/certs.py @@ -1,4 +1,4 @@ @@ -56,5 +124,5 @@ index 06a594e..bfa7839 100644 """ -- -2.24.1 +2.31.1 diff --git a/poky/meta/recipes-devtools/python/python3-pip_20.0.2.bb b/poky/meta/recipes-devtools/python/python3-pip_20.0.2.bb deleted file mode 100644 index 99eeea2ed..000000000 --- a/poky/meta/recipes-devtools/python/python3-pip_20.0.2.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=8ba06d529c955048e5ddd7c45459eb2e" - -DEPENDS += "python3 python3-setuptools-native" - -SRC_URI += "file://0001-change-shebang-to-python3.patch" - -SRC_URI[md5sum] = "7d42ba49b809604f0df3d55df1c3fd86" -SRC_URI[sha256sum] = "7db0c8ea4c7ea51c8049640e8e6e7fde949de672bfa4949920675563a5a6967f" - -inherit pypi distutils3 - -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-netserver \ - python3-setuptools \ - python3-unixadmin \ - python3-xmlrpc \ - python3-pickle \ -" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-devtools/python/python3-pip_21.1.3.bb b/poky/meta/recipes-devtools/python/python3-pip_21.1.3.bb new file mode 100644 index 000000000..0f105c239 --- /dev/null +++ b/poky/meta/recipes-devtools/python/python3-pip_21.1.3.bb @@ -0,0 +1,33 @@ +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 distutils3 + +SRC_URI += "file://0001-change-shebang-to-python3.patch" + +SRC_URI[sha256sum] = "b5b1eb91b36894bd01b8e5a56a422c2f3838573da0b0a1c63a096bb454e3b23f" + +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-setuptools/reproducibility.patch b/poky/meta/recipes-devtools/python/python3-setuptools/reproducibility.patch deleted file mode 100644 index 149d8ad5c..000000000 --- a/poky/meta/recipes-devtools/python/python3-setuptools/reproducibility.patch +++ /dev/null @@ -1,40 +0,0 @@ -The License-File lines in PKG-INFO change ordering depending on the order on disk, -for example for python-packaging, one build shows: - -License-File: LICENSE -License-File: LICENSE.APACHE -License-File: LICENSE.BSD - -and the other shows: - -License-File: LICENSE -License-File: LICENSE.BSD -License-File: LICENSE.APACHE - -This is because glob uses os.listdir() which is unsorted. Sort the result to avoid this. - -Upstream-Status: Submitted [https://github.com/pypa/setuptools/issues/2691] -Signed-off-by: Richard Purdie - -Index: setuptools-57.0.0/setuptools/dist.py -=================================================================== ---- setuptools-57.0.0.orig/setuptools/dist.py -+++ setuptools-57.0.0/setuptools/dist.py -@@ -15,7 +15,7 @@ import distutils.command - from distutils.util import strtobool - from distutils.debug import DEBUG - from distutils.fancy_getopt import translate_longopt --from glob import iglob -+from glob import glob - import itertools - import textwrap - from typing import List, Optional, TYPE_CHECKING -@@ -603,7 +603,7 @@ class Distribution(_Distribution): - return ( - path - for pattern in patterns -- for path in iglob(pattern) -+ for path in sorted(glob(pattern)) - if not path.endswith('~') - and os.path.isfile(path) - ) diff --git a/poky/meta/recipes-devtools/python/python3-setuptools_57.0.0.bb b/poky/meta/recipes-devtools/python/python3-setuptools_57.0.0.bb deleted file mode 100644 index a15b51e31..000000000 --- a/poky/meta/recipes-devtools/python/python3-setuptools_57.0.0.bb +++ /dev/null @@ -1,56 +0,0 @@ -SUMMARY = "Download, build, install, upgrade, and uninstall Python packages" -HOMEPAGE = "https://pypi.org/project/setuptools" -SECTION = "devel/python" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://LICENSE;beginline=1;endline=19;md5=7a7126e068206290f3fe9f8d6c713ea6" - -inherit pypi setuptools3 - -SRC_URI_append_class-native = " file://0001-conditionally-do-not-fetch-code-by-easy_install.patch" - -SRC_URI += "file://0001-change-shebang-to-python3.patch \ - file://reproducibility.patch" - -SRC_URI[sha256sum] = "401cbf33a7bf817d08014d51560fc003b895c4cdc1a5b521ad2969e928a07535" - -DEPENDS += "${PYTHON_PN}" - -RDEPENDS_${PN} = "\ - ${PYTHON_PN}-2to3 \ - ${PYTHON_PN}-compile \ - ${PYTHON_PN}-compression \ - ${PYTHON_PN}-ctypes \ - ${PYTHON_PN}-distutils \ - ${PYTHON_PN}-email \ - ${PYTHON_PN}-html \ - ${PYTHON_PN}-json \ - ${PYTHON_PN}-netserver \ - ${PYTHON_PN}-numbers \ - ${PYTHON_PN}-pickle \ - ${PYTHON_PN}-pkg-resources \ - ${PYTHON_PN}-pkgutil \ - ${PYTHON_PN}-plistlib \ - ${PYTHON_PN}-shell \ - ${PYTHON_PN}-stringold \ - ${PYTHON_PN}-threading \ - ${PYTHON_PN}-unittest \ - ${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 -# and easy_install. Ship it in a separate package so that it can be used by -# minimal distributions. -PACKAGES =+ "${PYTHON_PN}-pkg-resources " -FILES_${PYTHON_PN}-pkg-resources = "${PYTHON_SITEPACKAGES_DIR}/pkg_resources/*" -RDEPENDS_${PYTHON_PN}-pkg-resources = "\ - ${PYTHON_PN}-compression \ - ${PYTHON_PN}-email \ - ${PYTHON_PN}-plistlib \ - ${PYTHON_PN}-pprint \ -" diff --git a/poky/meta/recipes-devtools/python/python3-setuptools_57.1.0.bb b/poky/meta/recipes-devtools/python/python3-setuptools_57.1.0.bb new file mode 100644 index 000000000..c066d8209 --- /dev/null +++ b/poky/meta/recipes-devtools/python/python3-setuptools_57.1.0.bb @@ -0,0 +1,55 @@ +SUMMARY = "Download, build, install, upgrade, and uninstall Python packages" +HOMEPAGE = "https://pypi.org/project/setuptools" +SECTION = "devel/python" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://LICENSE;beginline=1;endline=19;md5=7a7126e068206290f3fe9f8d6c713ea6" + +inherit pypi setuptools3 + +SRC_URI_append_class-native = " file://0001-conditionally-do-not-fetch-code-by-easy_install.patch" + +SRC_URI += "file://0001-change-shebang-to-python3.patch" + +SRC_URI[sha256sum] = "cfca9c97e7eebbc8abe18d5e5e962a08dcad55bb63afddd82d681de4d22a597b" + +DEPENDS += "${PYTHON_PN}" + +RDEPENDS_${PN} = "\ + ${PYTHON_PN}-2to3 \ + ${PYTHON_PN}-compile \ + ${PYTHON_PN}-compression \ + ${PYTHON_PN}-ctypes \ + ${PYTHON_PN}-distutils \ + ${PYTHON_PN}-email \ + ${PYTHON_PN}-html \ + ${PYTHON_PN}-json \ + ${PYTHON_PN}-netserver \ + ${PYTHON_PN}-numbers \ + ${PYTHON_PN}-pickle \ + ${PYTHON_PN}-pkg-resources \ + ${PYTHON_PN}-pkgutil \ + ${PYTHON_PN}-plistlib \ + ${PYTHON_PN}-shell \ + ${PYTHON_PN}-stringold \ + ${PYTHON_PN}-threading \ + ${PYTHON_PN}-unittest \ + ${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 +# and easy_install. Ship it in a separate package so that it can be used by +# minimal distributions. +PACKAGES =+ "${PYTHON_PN}-pkg-resources " +FILES_${PYTHON_PN}-pkg-resources = "${PYTHON_SITEPACKAGES_DIR}/pkg_resources/*" +RDEPENDS_${PYTHON_PN}-pkg-resources = "\ + ${PYTHON_PN}-compression \ + ${PYTHON_PN}-email \ + ${PYTHON_PN}-plistlib \ + ${PYTHON_PN}-pprint \ +" diff --git a/poky/meta/recipes-devtools/python/python3-zipp_3.4.1.bb b/poky/meta/recipes-devtools/python/python3-zipp_3.4.1.bb deleted file mode 100644 index 191d3b38a..000000000 --- a/poky/meta/recipes-devtools/python/python3-zipp_3.4.1.bb +++ /dev/null @@ -1,19 +0,0 @@ -DESCRIPTION = "Backport of pathlib-compatible object wrapper for zip files" -HOMEPAGE = "https://github.com/jaraco/zipp" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://LICENSE;md5=7a7126e068206290f3fe9f8d6c713ea6" - -SRC_URI[md5sum] = "3d91c7ab73b62ac3674210df94df600a" -SRC_URI[sha256sum] = "3607921face881ba3e026887d8150cca609d517579abe052ac81fc5aeffdbd76" - -DEPENDS += "${PYTHON_PN}-setuptools-scm-native" - -inherit pypi setuptools3 - -DEPENDS += "${PYTHON_PN}-toml-native" - -RDEPENDS_${PN} += "${PYTHON_PN}-compression \ - ${PYTHON_PN}-math \ - ${PYTHON_PN}-more-itertools" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-devtools/python/python3-zipp_3.5.0.bb b/poky/meta/recipes-devtools/python/python3-zipp_3.5.0.bb new file mode 100644 index 000000000..ab12601e4 --- /dev/null +++ b/poky/meta/recipes-devtools/python/python3-zipp_3.5.0.bb @@ -0,0 +1,18 @@ +DESCRIPTION = "Backport of pathlib-compatible object wrapper for zip files" +HOMEPAGE = "https://github.com/jaraco/zipp" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://LICENSE;md5=7a7126e068206290f3fe9f8d6c713ea6" + +SRC_URI[sha256sum] = "f5812b1e007e48cff63449a5e9f4e7ebea716b4111f9c4f9a645f91d579bf0c4" + +DEPENDS += "${PYTHON_PN}-setuptools-scm-native" + +inherit pypi setuptools3 + +DEPENDS += "${PYTHON_PN}-toml-native" + +RDEPENDS_${PN} += "${PYTHON_PN}-compression \ + ${PYTHON_PN}-math \ + ${PYTHON_PN}-more-itertools" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-devtools/python/python3/0001-Makefile-fix-Issue36464-parallel-build-race-problem.patch b/poky/meta/recipes-devtools/python/python3/0001-Makefile-fix-Issue36464-parallel-build-race-problem.patch deleted file mode 100644 index 9ed03858d..000000000 --- a/poky/meta/recipes-devtools/python/python3/0001-Makefile-fix-Issue36464-parallel-build-race-problem.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 840fda32c82550259d02a7a56a78a9c05162b1a1 Mon Sep 17 00:00:00 2001 -From: Changqing Li -Date: Wed, 8 May 2019 16:10:29 +0800 -Subject: [PATCH] Makefile: fix Issue36464 (parallel build race problem) - -When using make -j with the 'install' target, it's possible for altbininstall -(which normally creates BINDIR) and libainstall (which doesn't, though it -installs python-config there) to race, resulting in a failure due to -attempting to install python-config into a nonexistent BINDIR. Ensure it also -exists in the libainstall target. - -Upstream-Status: Backport [https://github.com/python/cpython/commit/a25c46bd7dd47a2f95b32d17ee2f66de214892c6] -Signed-off-by: Changqing Li ---- - Makefile.pre.in | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/Makefile.pre.in b/Makefile.pre.in -index 15f3687..7e9f173 100644 ---- a/Makefile.pre.in -+++ b/Makefile.pre.in -@@ -1456,7 +1456,7 @@ LIBPL= @LIBPL@ - LIBPC= $(LIBDIR)/pkgconfig - - libainstall: @DEF_MAKE_RULE@ python-config -- @for i in $(LIBDIR) $(LIBPL) $(LIBPC); \ -+ @for i in $(LIBDIR) $(LIBPL) $(LIBPC) $(BINDIR); \ - do \ - if test ! -d $(DESTDIR)$$i; then \ - echo "Creating directory $$i"; \ --- -2.7.4 - diff --git a/poky/meta/recipes-devtools/python/python3/makerace.patch b/poky/meta/recipes-devtools/python/python3/makerace.patch new file mode 100644 index 000000000..96744cb55 --- /dev/null +++ b/poky/meta/recipes-devtools/python/python3/makerace.patch @@ -0,0 +1,23 @@ +libainstall installs python-config.py but the .pyc cache files are generated +by the libinstall target. This means some builds may not generate the pyc files +for python-config.py depending on the order things happen in. This means builds +are not always reproducible. + +Add a dependency to avoid the race. + +Upstream-Status: Pending +Signed-off-by: Richard Purdie + +Index: Python-3.9.6/Makefile.pre.in +=================================================================== +--- Python-3.9.6.orig/Makefile.pre.in ++++ Python-3.9.6/Makefile.pre.in +@@ -1486,7 +1486,7 @@ LIBSUBDIRS= tkinter tkinter/test tkinter + venv venv/scripts venv/scripts/common venv/scripts/posix \ + curses pydoc_data \ + zoneinfo +-libinstall: build_all $(srcdir)/Modules/xxmodule.c ++libinstall: build_all $(srcdir)/Modules/xxmodule.c libainstall + @for i in $(SCRIPTDIR) $(LIBDEST); \ + do \ + if test ! -d $(DESTDIR)$$i; then \ diff --git a/poky/meta/recipes-devtools/python/python3_3.9.5.bb b/poky/meta/recipes-devtools/python/python3_3.9.5.bb deleted file mode 100644 index 1717ff737..000000000 --- a/poky/meta/recipes-devtools/python/python3_3.9.5.bb +++ /dev/null @@ -1,386 +0,0 @@ -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" -SECTION = "devel/python" - -LIC_FILES_CHKSUM = "file://LICENSE;md5=c22d2438294c784731bf9dd224a467b7" - -SRC_URI = "http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.xz \ - file://run-ptest \ - file://create_manifest3.py \ - file://get_module_deps3.py \ - file://python3-manifest.json \ - file://check_build_completeness.py \ - file://reformat_sysconfig.py \ - file://cgi_py.patch \ - file://0001-Do-not-add-usr-lib-termcap-to-linker-flags-to-avoid-.patch \ - ${@bb.utils.contains('PACKAGECONFIG', 'tk', '', 'file://avoid_warning_about_tkinter.patch', d)} \ - file://0001-Do-not-use-the-shell-version-of-python-config-that-w.patch \ - file://python-config.patch \ - file://0001-Makefile.pre-use-qemu-wrapper-when-gathering-profile.patch \ - file://0001-python3-use-cc_basename-to-replace-CC-for-checking-c.patch \ - file://0001-Makefile-fix-Issue36464-parallel-build-race-problem.patch \ - file://0001-bpo-36852-proper-detection-of-mips-architecture-for-.patch \ - file://crosspythonpath.patch \ - file://0001-Use-FLAG_REF-always-for-interned-strings.patch \ - file://0001-test_locale.py-correct-the-test-output-format.patch \ - file://0017-setup.py-do-not-report-missing-dependencies-for-disa.patch \ - file://0001-setup.py-pass-missing-libraries-to-Extension-for-mul.patch \ - file://0001-Makefile-do-not-compile-.pyc-in-parallel.patch \ - file://0020-configure.ac-setup.py-do-not-add-a-curses-include-pa.patch \ - file://0001-Lib-sysconfig.py-use-libdir-values-from-configuratio.patch \ - file://0001-Skip-failing-tests-due-to-load-variability-on-YP-AB.patch \ - ${@bb.utils.contains('IMAGE_FEATURES', 'tools-sdk', '', 'file://0001-test_ctypes.test_find-skip-without-tools-sdk.patch', d)} \ - " - -SRC_URI_append_class-native = " \ - file://0001-distutils-sysconfig-append-STAGING_LIBDIR-python-sys.patch \ - file://12-distutils-prefix-is-inside-staging-area.patch \ - file://0001-Don-t-search-system-for-headers-libraries.patch \ - " -SRC_URI[sha256sum] = "0c5a140665436ec3dbfbb79e2dfb6d192655f26ef4a29aeffcb6d1820d716d83" - -# exclude pre-releases for both python 2.x and 3.x -UPSTREAM_CHECK_REGEX = "[Pp]ython-(?P\d+(\.\d+)+).tar" -UPSTREAM_CHECK_URI = "https://www.python.org/downloads/source/" - -CVE_PRODUCT = "python" - -# Upstream consider this expected behaviour -CVE_CHECK_WHITELIST += "CVE-2007-4559" -# This is not exploitable when glibc has CVE-2016-10739 fixed. -CVE_CHECK_WHITELIST += "CVE-2019-18348" - -# This is windows only issue. -CVE_CHECK_WHITELIST += "CVE-2020-15523" - -PYTHON_MAJMIN = "3.9" - -S = "${WORKDIR}/Python-${PV}" - -BBCLASSEXTEND = "native nativesdk" - -inherit autotools pkgconfig qemu ptest multilib_header update-alternatives - -MULTILIB_SUFFIX = "${@d.getVar('base_libdir',1).split('/')[-1]}" - -ALTERNATIVE_${PN}-dev = "python3-config" -ALTERNATIVE_LINK_NAME[python3-config] = "${bindir}/python${PYTHON_MAJMIN}-config" -ALTERNATIVE_TARGET[python3-config] = "${bindir}/python${PYTHON_MAJMIN}-config-${MULTILIB_SUFFIX}" - - -DEPENDS = "bzip2-replacement-native libffi bzip2 openssl sqlite3 zlib virtual/libintl xz virtual/crypt util-linux libtirpc libnsl2 autoconf-archive-native" -DEPENDS_append_class-target = " python3-native" -DEPENDS_append_class-nativesdk = " python3-native" - -EXTRA_OECONF = " --without-ensurepip --enable-shared --with-platlibdir=${baselib}" -EXTRA_OECONF_append_class-native = " --bindir=${bindir}/${PN}" - -export CROSSPYTHONPATH="${STAGING_LIBDIR_NATIVE}/python${PYTHON_MAJMIN}/lib-dynload/" - -EXTRANATIVEPATH += "python3-native" - -# LTO will be enabled via packageconfig depending upong distro features -LTO_class-target = "" - -CACHED_CONFIGUREVARS = " \ - ac_cv_file__dev_ptmx=yes \ - ac_cv_file__dev_ptc=no \ - ac_cv_working_tzset=yes \ -" - -def possibly_include_pgo(d): - # PGO currently causes builds to not be reproducible, so disable it for - # now. See YOCTO #13407 - if bb.utils.contains('MACHINE_FEATURES', 'qemu-usermode', True, False, d) and d.getVar('BUILD_REPRODUCIBLE_BINARIES') != '1': - return 'pgo' - - return '' - -PACKAGECONFIG_class-target ??= "readline ${@possibly_include_pgo(d)} gdbm ${@bb.utils.filter('DISTRO_FEATURES', 'lto', d)}" -PACKAGECONFIG_class-native ??= "readline gdbm" -PACKAGECONFIG_class-nativesdk ??= "readline gdbm" -PACKAGECONFIG[readline] = ",,readline" -# Use profile guided optimisation by running PyBench inside qemu-user -PACKAGECONFIG[pgo] = "--enable-optimizations,,qemu-native" -PACKAGECONFIG[tk] = ",,tk" -PACKAGECONFIG[gdbm] = ",,gdbm" -PACKAGECONFIG[lto] = "--with-lto,," - -do_configure_prepend () { - mkdir -p ${B}/Modules - cat > ${B}/Modules/Setup.local << EOF -*disabled* -${@bb.utils.contains('PACKAGECONFIG', 'gdbm', '', '_gdbm _dbm', d)} -${@bb.utils.contains('PACKAGECONFIG', 'readline', '', 'readline', d)} -EOF -} - -CPPFLAGS_append = " -I${STAGING_INCDIR}/ncursesw -I${STAGING_INCDIR}/uuid" - -EXTRA_OEMAKE = '\ - STAGING_LIBDIR=${STAGING_LIBDIR} \ - STAGING_INCDIR=${STAGING_INCDIR} \ - LIB=${baselib} \ -' - -do_compile_prepend_class-target() { - if ${@bb.utils.contains('PACKAGECONFIG', 'pgo', 'true', 'false', d)}; then - qemu_binary="${@qemu_wrapper_cmdline(d, '${STAGING_DIR_TARGET}', ['${B}', '${STAGING_DIR_TARGET}/${base_libdir}'])}" - cat >pgo-wrapper < ${B}/Modules/Setup.local << EOF +*disabled* +${@bb.utils.contains('PACKAGECONFIG', 'gdbm', '', '_gdbm _dbm', d)} +${@bb.utils.contains('PACKAGECONFIG', 'readline', '', 'readline', d)} +EOF +} + +CPPFLAGS_append = " -I${STAGING_INCDIR}/ncursesw -I${STAGING_INCDIR}/uuid" + +EXTRA_OEMAKE = '\ + STAGING_LIBDIR=${STAGING_LIBDIR} \ + STAGING_INCDIR=${STAGING_INCDIR} \ + LIB=${baselib} \ +' + +do_compile_prepend_class-target() { + if ${@bb.utils.contains('PACKAGECONFIG', 'pgo', 'true', 'false', d)}; then + qemu_binary="${@qemu_wrapper_cmdline(d, '${STAGING_DIR_TARGET}', ['${B}', '${STAGING_DIR_TARGET}/${base_libdir}'])}" + cat >pgo-wrapper <