summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/python/python3
Commit message (Collapse)AuthorAgeFilesLines
* python3: fix CVE-2019-20907Andrej Valek2020-12-182-0/+292
| | | | | | | | | | - move fixing patch for CVE-2020-8492 to the right location (From OE-Core rev: f7e7378ea7099af8555de809787cf8e2cb5208fd) Signed-off-by: Andrej Valek <andrej.valek@siemens.com> Signed-off-by: Steve Sakoman <steve@sakoman.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: fix CVE-2020-27619Lee Chee Yang2020-11-241-0/+70
| | | | | | | | (From OE-Core rev: 001ee91818642ddac7c1b8e5236baa5c4c542b72) Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com> Signed-off-by: Steve Sakoman <steve@sakoman.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: fix CVE-2020-26116Lee Chee Yang2020-10-271-0/+104
| | | | | | | | (From OE-Core rev: 2f607a61a820bfbc369f779c3161a339f088d04f) Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com> Signed-off-by: Steve Sakoman <steve@sakoman.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* meta: add/fix invalid Upstream-Status tagsRoss Burton2020-10-061-1/+1
| | | | | | | | | | (From OE-Core rev: 4dbae5c7c28a2cd6ebb601f984a54ca33d19afaf) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> (cherry picked from commit 630ce8130598e2bca7231ac28a7cc18b5b942544) Signed-off-by: Steve Sakoman <steve@sakoman.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: fix CVE-2020-14422Lee Chee Yang2020-07-071-0/+77
| | | | | | | | (From OE-Core rev: 0400d217d0891ee553926c10d7caaabc8bebc22e) Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com> Signed-off-by: Steve Sakoman <steve@sakoman.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3-manifest.json: add pathlib to coreTim Orling2020-05-051-0/+2
| | | | | | | | | | | | | | | | | The pathlib module is for Object-oriented filesystem paths It also provides a lot of handy utilities for checking on paths. This seems to justify adding it to the core package along side os, sys, and the other *path libraries. [YOCTO #13670] (From OE-Core rev: 81bec2f08229723b550a0cc33d1c77f82432814d) Signed-off-by: Tim Orling <timothy.t.orling@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Steve Sakoman <steve@sakoman.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: fixing bpo-36852 patch for builds on i686 architectureMatthias Schoepfer2020-03-311-6/+14
| | | | | | | | | | | | | | | The original patch "bpo-36852: proper detection of mips architecture for soft float" uses AC_CANONICAL_TARGET to determine the platform triplet. While AC_CANONICAL_TARGET exports i686 as target_cpu, gcc is using i386 instead. We fall back here to i386, as it is conform to the previous behavior. Upstream Status: Submitted [https://github.com/python/cpython/pull/13196] (From OE-Core rev: 6beab388e73b3ac6157650855a6c1fb1d71e8015) Signed-off-by: Matthias Schoepfer <matthias.schoepfer@ithinx.io> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3-native: Should not search the system for headers/libraries.Jeremy Puhlman2020-03-061-0/+29
| | | | | | | | | | | | | | | | | | | | | | The specific issue here is rpc/rpc.h, but its likely more general. /usr/include is searched for rpc/rpc.h and if it exists on the system, it changes behavior. If you are using the extended buildtools tarball on a machine that has /usr/include/rpc/rpc.h, it will decide that is good enough and not continue to search. nis fails to build because /usr/include and /usr/lib are not part of the include/link paths for the buildtools tarball compiler(nor should they be). This makes it so python3-native will not build if you are using the extended buildtools tarball, but from a larger issue perspective it is building in likely different ways depending on what machine it is building on. libtirpc is already a depend so we shouldn't need the hosts rpc/rcp.h. (From OE-Core rev: f37dfc7907ae7bac08d40468ddde2e5b8bba030c) Signed-off-by: Jeremy A. Puhlman <jpuhlman@mvista.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: resolve ncurses host contaminationAlexander Kanavin2020-02-183-2/+50
| | | | | | | (From OE-Core rev: ee7be51444b609a5cc1fd223b9395e9642d3bfac) Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: install _tkinter.*.so to python3-tkinter packageYi Zhao2020-02-141-0/+1
| | | | | | | | | | | | | | | | When enable PACKAGECONFIG[tk], we should install _tkinter.*.so to python3-tkinter package rather than python3-misc package. Fixes: ERROR: python3-3.8.1-r0 do_package_qa: QA Issue: /usr/lib/python3.8/lib-dynload/_tkinter.cpython-38-x86_64-linux-gnu.so contained in package python3-misc requires libtk8.6.so()(64bit), but no providers found in RDEPENDS_python3-misc? [file-rdeps] (From OE-Core rev: 991d7ced7262a1340878bada307c6d021ea9cb77) Signed-off-by: Yi Zhao <yi.zhao@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: Do not hardcode "lib" for distutilsChangqing Li2020-02-081-0/+43
| | | | | | | | | | | | | | | | | | Get the sys.lib from python3 itself and do not use hardcoded value of 'lib' for distutils. Solve the error below that occurs when run "python3 setup.py install" on lib64 multilib platform: [Errno 2] No such file or directory: '/usr/lib/python3.7/site-packages/test-easy-install-1828.write-test' (From OE-Core rev: fb33127de5d80f5bcb84edf6cf4007bca73fa863) Signed-off-by: Li Zhou <li.zhou@windriver.com> Signed-off-by: Changqing Li <changqing.li@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: fix the installation path of libpython3.7m.a for multilibChangqing Li2020-02-081-0/+35
| | | | | | | | | | | Fix the installation path of libpython3.7m.a on mulitlib lib64 platform to lib64 instead of lib (From OE-Core rev: 3081d3993095d2e4817bbef33c9c90dd814a45d7) Signed-off-by: Li Zhou <li.zhou@windriver.com> Signed-off-by: Changqing Li <changqing.li@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: correctly process ptest output with sedAlexander Kanavin2020-01-211-1/+1
| | | | | | | | | | | | | Particularly: [ERROR|FAIL] was matching characters rather than strings. Using (ERROR|FAIL) requires -r option. (From OE-Core rev: c041c326a1dbf1b128fc32d887acd73c6f5fb415) Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: do not compile .pyc in parallel during do_install()Alexander Kanavin2020-01-213-2/+60
| | | | | | | (From OE-Core rev: af7f5590dc49ec33268939b53879a6d011306114) Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: update to 3.8.1Alexander Kanavin2020-01-2113-469/+233
| | | | | | | | | | | | | | | | | | | | | | | Drop backports, rebase other patches. 0001-main.c-if-OEPYTHON3HOME-is-set-use-instead-of-PYTHON.patch is removed as the use case (allowing python 2 and 3 to coexist in SDKs) is no longer relevant with Python 2.x reaching end of line and upstream has refactored the code making a rebase difficult. If needed, please re-add the patch to py2, rather than py3. Python 3.8 no longer adds "m" to "3.8" in paths, so adjust the recipes and classes accordingly. The manifest for the 3.8.0 version is updated; particularly pkgutil module is now packaged in -core (as other things in core need it); this also necessitates allowing empty -pkgutil package to avoid breakage across layers. (From OE-Core rev: e6ab9f16b92aa1abdae82c535c1a452a1341b0e2) Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: update patch statusRoss Burton2019-11-251-1/+1
| | | | | | | (From OE-Core rev: 3bb0a089840caf51065d7f8b59b3e055bce31e1c) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: Upgrade 3.7.4 -> 3.7.5Adrian Bunk2019-11-054-220/+2
| | | | | | | | | Backported patches removed. (From OE-Core rev: 87f77ac60f57e6b3bfb2b3f3f5877b8d90cf22b8) Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: fix CVE-2019-16935Chen Qi2019-10-281-0/+86
| | | | | | | (From OE-Core rev: 78846c823cbb662897ce85b061a745c1dd7deeab) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: ensure that all forms of python3-config are in python3-devRoss Burton2019-10-231-2/+5
| | | | | | | | | | | | | | | | | | | | | | | In multilib builds python3-config gets renamed to eg python3-config-lib64 but this ends up being packaged in python3-core not python3-dev. The manifest uses an extended glob to package all python* binaries that are not python-config into python3-core: "${bindir}/python*[!-config]", However, this doesn't do what was intended, as [] is a range match. Replace the globs with more verbose but precise matches, and clear out FILES_${PN} to ensure that new binaries don't end up in ${PN} (which shouldn't exist). [ YOCTO #13592 ] (From OE-Core rev: c780f21c33b0684dafff3421600cd1c11ddd0c48) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: -dev should depend on distutilsRoss Burton2019-10-191-1/+2
| | | | | | | | | | | | | | | | | | python3-config uses distutils: Traceback (most recent call last): File "/usr/bin/python3-config", line 9, in <module> from distutils import sysconfig ModuleNotFoundError: No module named 'distutils' Add the dependency so that distutils is always present. [ YOCTO #13592 ] (From OE-Core rev: 04136dbac48986dce5b2b872b2c0b46c673c44f2) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: CVE-2019-16056Chen Qi2019-10-151-0/+132
| | | | | | | (From OE-Core rev: 328e3a1a3bb95cca60621f22cc500f9d24dbc590) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: make gdbm optionalAlexander Kanavin2019-10-154-12/+41
| | | | | | | | | | The use case is building a gpl3-free image, without having to rely on outdated recipes from meta-gplv2 layer. (From OE-Core rev: 02eb487c8145e0f3d957c39cf16f6f805e95e536) Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: move runpy to coreRoss Burton2019-10-021-14/+2
| | | | | | | | | | The runpy module is used to implement 'python3 -m foo', so move it to python3-core as it's an essential part of the CLI. (From OE-Core rev: eba857d3e52f83d426e95fa8373799da058f9484) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: handle STAGING_LIBDIR/INCDIR being unsetRoss Burton2019-09-161-12/+16
| | | | Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3-manifest.json: Fix typo in summaryKhem Raj2019-09-071-1/+1
| | | | | | | (From OE-Core rev: 15c279da465323cab86635e5b5cdb46bf254fa66) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: fix the test_locale output formatMingli Yu2019-08-211-0/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Before this patch: # python3 -m test -v test_locale [snip] test_getsetlocale_issue1813 (test.test_locale.TestMiscellaneous) ... testing with ('tr_TR', 'ISO8859-9') ok [snip] After this patch: # python3 -m test -v test_locale [snip] test_getsetlocale_issue1813 (test.test_locale.TestMiscellaneous) ... testing with ('tr_TR', 'ISO8859-9')... ok [snip] Make the test ended with "... ok" is common in python unittest world, we should make it keep consistent with other test cases in case it may be ignored to record in the report if we use the common filter "... ok". [YOCTO #13298] (From OE-Core rev: 4e698cf8f3a9c661f5b67c6001ad4d92b574d136) Signed-off-by: Mingli Yu <mingli.yu@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: split out the Windows distutils installer stubsRoss Burton2019-08-031-0/+13
| | | | | | | | | | | | | Needing the Windows distutils installer stubs is quite a niche requirement, so put them into a separate package and just recommend it. This can save both space and legal pain, as the installers embed an old zlib that has known CVEs. (From OE-Core rev: 617331a42fc5bde0c2d8d0f4dd8df652daa28778) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: remove empty python3-distutils-staticdevRoss Burton2019-08-031-12/+0
| | | | | | | | | | distutils doesn't ship any static libraries, and the files this should pick up do not exist. Copy/paste gone wrong maybe? (From OE-Core rev: afbca8da4ddd6c3dd01bb44af43aee9e80cae512) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* perl: fix Upstream-Status tagsRoss Burton2019-07-021-1/+1
| | | | | | | (From OE-Core rev: ec644192c758ce1ec90c487a0fff69d6de0ca55d) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: Fix .pyc file reproduciblilityJoshua Watt2019-06-281-0/+35
| | | | | | | | | | Applies a patch to python that makes the pre-compiled .pyc files generated during the build reproducible. (From OE-Core rev: 148d54f91f43147f31b16a7c2cb1ade385832366) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: Reformat sysconfigJoshua Watt2019-06-241-0/+21
| | | | | | | | | | | | | | | | | | | | | | | Reformats the sysconfig file when packaging. This file is output by using the python pprint function. This function will wrap long lines at 80 characters by default, and will even split strings at whitespace boundaries to do so, e.g.: 'A': 'B is really' ' long' This causes a problem for reproducibility however because there might be lines of differing lengths depending on the build path. These non-reproducible paths are removed, but their effect on string wrapping from pprint remains. To correct this, reformat the entire sysconfig file by re-printing using pprint with an (effectively) unlimited line length. (From OE-Core rev: ec8a2b310d5f0b42f60898a5c6d239949842b34c) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: python3: Fix build error x86->x86Ricardo Ribalda Delgado2019-06-191-0/+25
| | | | | | | | | | | | | | | | | | | When building x86->x86 the system will try to execute .so and related items from the default PYTHONPATH. This will fail if the target CPU contains instructions that the host CPU does not have, add CROSSPYTHONPATH into PYTHONPATH so we can prepend the list to find correct libs. Fixes: Illegal instruction (core dumped) Makefile:625: recipe for target 'sharedmods' failed make: *** [sharedmods] Error 132 make: *** Waiting for unfinished jobs.... (From OE-Core rev: 2106a567820bad438ff78d54a49e3d87da428dcf) Signed-off-by: Ricardo Ribalda Delgado <ricardo@ribalda.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: fix build on softfloat mipsMatthias Schoepfer via Openembedded-core2019-06-121-0/+201
| | | | | | | | | | | | | | This patch originally only meant to correct the python3 build for mips with softfloat, as the original test only checked for mips hardfloat. Replaced custom C Program for triplet detection with autotools triplet detection. (From OE-Core rev: 203336486c84528e8779db93f64cc28e4b372aab) Signed-off-by: Matthias Schoepfer <matthias.schoepfer@ithinx.io> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: fix do_install fail for parallel buiildChangqing Li2019-05-081-0/+34
| | | | | | | | | | | | | 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. (From OE-Core rev: 07aeaa4f3f88f575e4674145a7faab3ba8e97fad) Signed-off-by: Changqing Li <changqing.li@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* openssh/systemd/python/qemu: Fix patch Upstream-StatusRichard Purdie2019-05-081-0/+2
| | | | | | | | Fix some missing or corrupted patch Upstream-Status values. (From OE-Core rev: 07bc5a5367e0dec45253fd849e0157094152fd31) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: Add ntpath.py to python coreAlex Kiernan2019-05-081-0/+1
| | | | | | | | | | | | | | | | | The newer python3 recipe no longer includes ntpath.py in core, leading to failures in pkg_resources: Traceback (most recent call last): File "/usr/bin/bmaptool", line 6, in <module> from pkg_resources import load_entry_point File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 42, in <module> import ntpath ModuleNotFoundError: No module named 'ntpath' (From OE-Core rev: 9ff61fa83a0a4f2a7b5b0376b6c48fb1173c9ac7) Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: Drop ptest hackRichard Purdie2019-04-291-60/+0
| | | | | | | | | With the kernel TCP backlog queue coalescing bug fixed in the 5.0 kernels we don't need this patch anymore and can run the tests. (From OE-Core rev: 21bfbef23e1f4c90070017e19f70e488e6ff64be) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Adding back wrapper and using OEPYTHON3HOME variable for python3Jaewon Lee2019-04-291-0/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adding back the python wrapper and adding a patch to use OEPYTHON3HOME instead of PYTHONHOME if set, for python3. If we add back the wrapper as is, we would see the following error that we also see in Thud: ImportError: No module named site OpenEmbedded requires 'python' to be python v2 (>= 2.7.3), not python v3. Please upgrade your python v2 This is because python3 would've set PYTHONHOME to use nativesdk python3 libraries but when the oe-buildenv-internal script tries to call python2 for the py_v27_check, there will be no python2 libraries in the PYTHONHOME directory. In other words, bitbake needs host python2 and the env variable set from the wrapper contaminates the env and host python2 won't be able to find its libraries Creating another variable OEPYTHON3HOME and using this in the python3 wrapper to allow for a way to set a different paths for python3 and python2 [YOCTO #13208] (From OE-Core rev: 75d2a85e24ef9a2bf0e218521944523f0ff281e0) Signed-off-by: Jaewon Lee <jaewon.lee@xilinx.com> Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: add another multilib fixAlexander Kanavin2019-04-231-0/+31
| | | | | | | (From OE-Core rev: 60502aa366f860b4f056da1bcd8fd5ee8f4495f5) Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python: update to 3.7.3Alexander Kanavin2019-04-162-2/+2
| | | | | | | | | License-update: copyright years (From OE-Core rev: a215296bb1b6a87da3692ef0e6176e56310b05f2) Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: Fix ptest output parsingRichard Purdie2019-04-111-1/+1
| | | | | | | | | | A previous fix to python added -W and removed -v. This reverts that part of the change since we're no longer getting ptest results at all. This change back to more verbose output means we start getting test results again. (From OE-Core rev: d70c77e4d5ec1d7cb4f134377df11e6475f31062) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: Avoid hanging testsRichard Purdie2019-04-111-0/+60
| | | | | | | | | | | | There are python tests which hang with recent kernels, 5.0 onwards. This causes ptest to timeout for python3. Disable the problematic test until we better understand the real cause and fix of the issue (discussions are happening with upstream). See the patch for details/links. (From OE-Core rev: 2a48df02a2871635f8235645bfd7f7a3ff0aef31) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* openssh/util-linux/python*: Ensure ptest output is unbufferedRichard Purdie2019-04-091-1/+1
| | | | | | | | | | | | | We need to run sed with the -u option to ensure the output is unbuffered else ptest-runner may timeout thinkig things were idle. Busybox doesn't have the -u option so we need to RDEPEND on sed (which is a good thing to do if we use it anyway). Alex Kanavin should get credit for discovering the problem. (From OE-Core rev: d3ffbebf43c23faa43af81c9ecf6fcaef36d675b) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python: improve ptestRoss Burton2019-04-021-1/+1
| | | | | | | | | | | | | Add missing runtime dependencies: the test suite needs proper chmod from coreutils, and the Europe/Minsk timezone. Also change run-ptest to use -W (run verbosely on failure) instead of -v (always verbose) to hopefully reduce the noise in the ptest reports. (From OE-Core rev: 7574f6850797fb7556d2f8077860b7c1d26ae8ec) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: tweaks to achieve 100% pass rate in ptestAlexander Kanavin2019-02-081-2/+2
| | | | | | | (From OE-Core rev: 22f4f1ef17219448416b7cf2a570c7acd7149a64) Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: upgrade to 3.7.2Alexander Kanavin2019-02-0845-2548/+410
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | I took the same approach as the recent perl upgrade: write recipe from scratch, taking the pieces from the old recipe only when they were proven to be necessary. The pgo, manifest and ptest features are all preserved. New features: - native and target recipes are now unified into one recipe - check_build_completeness.py runs right after do_compile() and verifies that all optional modules have been built (a notorious source of regressions) - a new approach to sysconfig.py and distutils/sysconfig.py returning values appropriate for native or target builds: we copy the configuration file to a separate folder, add that folder to sys.path (through environment variable that differs between native and target builds), and point python to the file through another environment variable. There were a few other patches where it was difficult to decide if the patch is still relevant, and how to test that it works correctly; please add those as-needed by testing the new python. (From OE-Core rev: 02714c105426b0d687620913c1a7401b386428b6) Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: use ncursesw, not ncursesAlexander Kanavin2019-01-211-1/+1
| | | | | | | | | | | So that wide-char functions are accssible. [YOCTO #13142] (From OE-Core rev: 042187a65d0622fbd721346b4e55146616c87fd8) Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python/python3: use cc_basename to replace CC for checking compilerChangqing Li2019-01-071-0/+140
| | | | | | | | | | | | | | | | | | | | | | | | When working path contains "clang"/"gcc"/"icc", it might be part of $CC because of the "--sysroot" parameter. That could cause judgement error about clang/gcc/icc compilers. eg: if build under /yocto/builds/xicc/, bitbake python, $CC will contains xicc, will make $CC match *icc, but actuall xicc just folder name. When "*icc" is matched, below errors are reported when compiling python/python3: x86_64-wrs-linux-gcc: error: strict: No such file or directory x86_64-wrs-linux-gcc: error: unrecognized command line option '-fp-model' Here use cc_basename to replace CC for checking compiler to avoid such kind of issue. (From OE-Core rev: 96383efa2726ed1bf7893332d726112a8552fc24) Signed-off-by: Li Zhou <li.zhou@windriver.com> Signed-off-by: Changqing Li <changqing.li@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: Fix do_configure check platform triplet error (2)Serhey Popovych2018-12-151-0/+40
| | | | | | | | | | | | | | | | | | | | | | When building for powerpc 32bit with musl following error triggered from do_configure: checking for the platform triplet based on compiler characteristics... powerpc-linux-gnu configure: error: internal configure error for the platform triplet, please file a bug report This is caused by PLATFORM_TRIPLET != MULTIARCH mismatch since MULTIARCH in case of musl is powerpc-linux-musl. Since triplet is used as part module name as described in PEP-3149 to make fix less intrusive alias powerpc-linux-musl to powerpc-linux-gnu to avoid possible runtime (e.g. tests) incompatibilities later. Fix was inspired by commit cda0ef61d373 ("python3: fix do_configure check platform triplet error"). (From OE-Core rev: b2ec91e12088afa0560aecede587d0970fc64110) Signed-off-by: Serhey Popovych <serhe.popovych@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* create_manifest3: Dont match filenames which contain the directory name for ↵Alejandro Enedino Hernandez Samaniego2018-12-091-1/+7
| | | | | | | | | | | | | | | | | | | | new manifest When creating a new python3 manifest, there is a corner case on which the filepath for a certain dependency that was found, could contain the path of an existing folder, e.g. ${libdir}/python3/xmlrpclib.py module path contains ${libdir}/python3/xml, this causes an issue where the dependency doesnt get eventually added on FILES for that module. This patch checks if the dependency that was found is a directory, if it is, it checks if it matches one of the existing directories on the manifest, if it is not, then it checks if the dependency's path (without the filename) matches one of the directories. (From OE-Core rev: 59db12fdf294cfab5c1730337d092a75867658f7) Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>