summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/python/python3_3.5.6.bb
Commit message (Collapse)AuthorAgeFilesLines
* python3: upgrade to 3.7.2Alexander Kanavin2019-02-081-334/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* python/python3: use cc_basename to replace CC for checking compilerChangqing Li2019-01-071-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | 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/+1
| | | | | | | | | | | | | | | | | | | | | | 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>
* python3: drop redundant patchRoss Burton2018-12-051-1/+0
| | | | | | | | | | | | This patch altered the clean target's behaviour to skip the ipkg-install directory. However this directory isn't created by opkg, opkg-utils, or the package_ipk class; and we don't invoke the clean target as we perform out-of-tree builds. (From OE-Core rev: 9f8bd475701e5d797d3ffc1ba97647101ba0b9b0) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: don't cripple target distutilsRoss Burton2018-12-051-1/+0
| | | | | | | | | | | We stop distutils for *native* Python from rewriting hashbangs when installing (so installed scripts don't have a hashbang that refers to sysroot paths), but this isn't needed nor desirable for the *target* Python. (From OE-Core rev: 52e128619803907c804d42815ea979b1848529c4) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: Adds instructions to the manifest fileAlejandro Enedino Hernandez Samaniego2018-12-011-1/+5
| | | | | | | | | | | | | | | | | | | | | While there is a bit of documentation regarding building a new manifest file for python, it seems that users usually only read the manifest file. The manifest file is in JSON format which doesn't allow comments, hence why instructions were initially put elsewhere. This patch hacks the call to open the JSON manifest file by using a marker to trick it into reading only part of the file as the manifest itself, and keep the other part as comments, which contain instructions for the user to run the create_manifest task after an upgrade or when adding a new package. (From OE-Core rev: 3eab24c6dc095fd2305b9be8467aab1191141e35) Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: add tk supportMingli Yu2018-11-231-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add support to enable tk via PACKAGECONFIG. before this patch: # python3 Python 3.5.6 (default, Nov 8 2018, 04:53:45) [GCC 8.2.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>> import tkinter Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/usr/lib64/python3.5/tkinter/__init__.py", line 35, in <module> import _tkinter # If this fails your Python may not be configured for Tk ImportError: No module named '_tkinter' >>> After this patch, if enable tk in PACKAGECONFIG, then # python3 Python 3.5.6 (default, Nov 8 2018, 03:15:52) [GCC 8.2.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>> import tkinter >>> (From OE-Core rev: 4b781d545e7e0b084201cd6a8fad953b0f231513) Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* recipes: Remove tab indentations in python codeRobert Yang2018-11-231-1/+1
| | | | | | | | | Use 4 spaces to replace a tab. (From OE-Core rev: cbb6743d46752481782789fa1a0dfade11057114) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: Fix python3-pyvenv run-time dependencyHugues Kamba2018-11-071-2/+2
| | | | | | | | | | | | | | | | | | | | | | | Pyvenv is just a small script that uses venv to create virtual environments. https://www.python.org/dev/peps/pep-0405/#creating-virtual-environments This patch adds the python3-venv module as a self-contained package which python3-pyvenv must depend on at run-time. The patch also provides the package python3-pyvenv from the pyhton3-venv package.This is good for future-proofing since python3-pyvenv has been deprecated and only python3-venv is now available in Python 3.6. https://docs.python.org/3/library/venv.html. Without this patch python3-pyvenv is broken because it is missing the venv module at run-time. This patch specifies the newly created python3-venv as a run-time dependency of python3-pyvenv. (From OE-Core rev: effa141bfce55aab25142ee578c95383c755ad73) Signed-off-by: Hugues Kamba <hugues.kamba@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python: remove the PN package entirelyRoss Burton2018-10-161-2/+2
| | | | | | | | | | Nothing should be in this package, so remove it entirely to be sure nothing does end up in there. (From OE-Core rev: b4ea23adf58d664f3cc5abe6d04b507fc000426e) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python: don't wipe RDEPENDS when parsing manifestRoss Burton2018-10-161-1/+2
| | | | | | | | | | | | | | | We want to allow the main recipe to extend RDEPENDS directly, so don't wipe RDEPENDS when reading the manifest. This fixes the missing python-misc dependency from python-modules. As the wiping was having the good side-effect of removing the PN-dev dependency on PN (which doesn't exist), clear RDEPENDS_${PN}-dev. (From OE-Core rev: fe3727af217dce4488f1fc6aab3f66232cf11fea) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: add ptest runnerRoss Burton2018-10-141-1/+4
| | | | | | | | | Copy the Python 2 run-ptest script to execute the Python 3 test suite. (From OE-Core rev: d371ff04628bdf7bac66341aeb9a66d145f66416) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: set PYTHONHOME for nativesdkCheuk Wing Leung2018-10-141-1/+1
| | | | | | | | | | | | | | | | | | commit c5629268b0f8ae0a425c98337d13e8dc83107e13: [ python: set PYTHONHOME for nativesdk This ensures that the nativesdk python functions correctly without needing to set PYTHONHOME in the sdk environment setup script. ] it's also needed for python3. (From OE-Core rev: b0cbd9efc30289bb4838dcaa43beba2c0c372ab2) Signed-off-by: Cheuk Wing Leung <cwleung@kth.se> Signed-off-by: Ming Liu <liu.ming50@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: add ca-certificates to python3-crypt RRECOMMENDSRoss Burton2018-10-091-2/+1
| | | | | | | | | | | | | It's likely that the certificate root chain is needed if python3-crypt is installed, so recommend it. Also remove the redundant nativesdk-python3-crypt assignment, as the general form is sufficient when class-extended. (From OE-Core rev: dd644ee9991e953474d41dbbf713a7e33b4c9141) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: respect package order in manifestRoss Burton2018-09-211-4/+2
| | | | | | | | | | Don't sort the manifest when using it to generate packaging rules, so ordering can be used to have complex packaging rules. (From OE-Core rev: 80dae6218efd25c92b9c43360e0846bb0af56c7e) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: don't hard-code version in python-configRoss Burton2018-09-131-1/+1
| | | | | | | | | | Use variables instead of hard-coding to remove another variation between releases. (From OE-Core rev: 6f6b384799bf093fabac90230dcdef1541ea9c75) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python: we use system ffi so no need to autoreconf in-tree libffiRoss Burton2018-09-131-1/+0
| | | | | | | | | | For target Python we use the libffi that we build, so we don't need to autoreconf the in-tree libffi. (From OE-Core rev: 12626b26aca281d0d5ee90dc15627083a517fa3b) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: remove redundant assignmentsRoss Burton2018-09-131-2/+0
| | | | | | | | | | _PYTHON_PROJECT_BASE and _PYTHON_PROJECT_SRC appear to be set in setup.py from the source directory and build directory correctly, so this is redundant. (From OE-Core rev: 983206d4ccab2b27adba2776f73c0c711d3ec98e) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3: split common assignments into a dedicated python3.incRoss Burton2018-09-131-17/+2
| | | | | | | | | | | | | Instead of including the Py2 python.inc and having to undo some of the assignments, create a new python3.inc to hold the common configuration. Over time we can move more from the recipes into this file to unify the target and native recipes. (From OE-Core rev: fc4767113adbdfbf4aeaaf6dd8605e7fd4bbaa46) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3{,-native}: backport openssl 1.1.1 compatibility changesAnuj Mittal2018-09-131-0/+5
| | | | | | | | | | | Backport changes from 3.7/3.6 to fix failing python3 ssl test suite. Fixes [YOCTO #12919] (From OE-Core rev: 6c123468b546931de005cf136d98bca6b893b37b) Signed-off-by: Anuj Mittal <anuj.mittal@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python3{,native}: update to 3.5.6Anuj Mittal2018-09-131-0/+341
Includes changes: 76aa2c0a9a bpo-33216: Clarify the documentation for CALL_FUNCTION_* (#8338) 1b141b9553 Doc: Backport language switcher (bpo-33700, bpo-31045) (#8048) f381cfe07d [3.5] bpo-33001: Prevent buffer overrun in os.symlink (GH-5989) (#5991) 937ac1fe06 [3.5] bpo-32981: Fix catastrophic backtracking vulns (GH-5955) (#6034) (From OE-Core rev: e38ff96cc2217df403ea2c5abcd35d42969689d4) Signed-off-by: Anuj Mittal <anuj.mittal@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>