aboutsummaryrefslogtreecommitdiff
path: root/lang/python/python3/Makefile
Commit message (Collapse)AuthorAge
...
| * python3: split python3-urllib from python3-lightAlexandru Ardelean2019-02-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This is the result of this discussion: https://github.com/openwrt/packages/issues/8285 `urllib.request` requires the `email` module/lib, which was part of python3-light. This change moves the Lib/urllib folder from the python3-light into it's own package, making it lighter. At least this way, users that want `urllib` (on top of `python3-light`) will be forced to install it via opkg and this will make sure `python3-email` gets installed as well. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* | python,python3: add Jeffery To as co-maintainerAlexandru Ardelean2019-02-27
|/ | | | | | | | | | | | | | For a while now, Jeffery has helped quite a lot with Python, and is now unofficial go-to guy [for problems] with Python packages. This change adds him as co-maintainer [if he also agrees]. I'm not going away; I'll be still doing the same work for Python. This change serves to recognize Jeffery in an official way, since he's already taking on these things. And 2 co-maintainers is better in case one kicks the bucket [by accident]. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python,python3: do not package binary files to base packagesKarel Kočí2019-02-21
| | | | | | | | | | | | | | Thanks to fix 200a5a2eec896b2d34f1114d14df66d810c1f4bd all base packages now contain all binaries that are generated as part of python installation. That causes collision between those packages with package managers that consider this such as Turris updater-ng. This is also just wrong. Those binaries were not included and should not be after mentioned fix as well. This just adds empty install definition. The idea is to override the default one that is otherwise used. Signed-off-by: Karel Kočí <karel.koci@nic.cz>
* python,python3: fix CVE-2019-5010 - Denial of ServiceAlexandru Ardelean2019-02-12
| | | | | | | | | | This patch addresses issue: [ssl][CVE-2019-5010] TALOS-2018-0758 Denial of Service Link to Python issue: https://bugs.python.org/issue35746 Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python3: install pkgconfig to stagingDaniel F. Dickinson2019-01-18
| | | | | | | | | | | Some programs that use the Python C API have difficulties finding cross-compiled Python3 without the pkgconfig, so make sure we have python3.pc and python-3.7.pc in pkgconfig staging dir. CircleCI requires a package Makefile change to actually do the CI check, so bump PKG_RELEASE. Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
* python3: enable lib2to3 to also search and fix .pyc files.Nj Hsiong2019-01-09
| | | | | | python3's lib2to3 would fail in silence if python3 and its packages are installed as compiled .pyc files. Root cause is, in Lib/lib2to3/refactor.py, the function get_all_fix_names only searches '.py' fix names. Signed-off-by: Nj Hsiong <nj.hsiong@gmail.com>
* python,python3: use setuptools & pip versions from python{3}-version.mkAlexandru Ardelean2019-01-02
| | | | | | | | | | | `setuptools` & `pip` whl files were selected via wildcards, because it was easier in the beginning. Also, initially there weren't any PYTHON{3}_{SETUTPTOOLS/PIP}_VERSION variables. But now since these vars exist, it makes sense to use them, because we can catch easier (at build) time if Python/Python3 bump these versions. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python3: bump to version 3.7.2Alexandru Ardelean2018-12-31
| | | | Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python3: bump to version 3.7.1Alexandru Ardelean2018-11-02
| | | | | | | | | | | | This change bumps Python3 version to 3.7.1. Patch `002-fix-implicit-dh-free-declaration.patch` is now included in upstream. This also fixes CVE-2018-1061. https://www.cvedetails.com/cve/CVE-2018-1061/ Compile & run-tested on x86. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* Python3: Fix host build on OpenSUSEJan Kardell2018-10-08
| | | | | | | | | | | | | The linker option -rpath is required to find libs in staging_dir. Now it is included when building host modules. Without it the import test of the _ctypes and _uuid modules would fail. The _ctypes module uses libffi.so.6 from staging, but OpenSUSE LEAP 15 has libffi.so.7. It will also fail on LEAP 42.x, Fedora28 and 29 and future or old versions of Ubuntu. Fix needed in master and 18.06 branches. Signed-off-by: Jan Kardell <jan.kardell@telliq.com>
* python3: fix build with SSL moduleAlexandru Ardelean2018-09-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | No idea how this creeped up. Probably OpenSSL been has updated recently. Will send this patch upstream as well, but in the meantime we should fix the Python3 build. Build error seems to be: ``` <openwrt>/build_dir/target-i386_pentium4_musl/Python-3.7.0/Modules/_ssl.c:4000:5: error: implicit declaration of function 'DH_free'; did you mean 'lh_free'? [-Werror=implicit-function-declaration] DH_free(dh); ^~~~~~~ lh_free cc1: some warnings being treated as errors Python build finished successfully! The necessary bits to build these optional modules were not found: _tkinter _uuid nis To find the necessary bits, look in setup.py in detect_modules() for the module's name. The following modules found by detect_modules() in setup.py, have been built by the Makefile instead, as configured by the Setup files: _abc atexit pwd time zlib Failed to build these modules: _ssl Makefile:618: recipe for target 'sharedmods' failed ``` Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python3: fix libuuid missing dependency for python3-lightKarol Wrona2018-07-13
| | | | Signed-off-by: Karol Wrona <wrona.vy@gmail.com>
* python3: update to python 3.7.0Martin Strobel2018-07-11
| | | | | | | | Fixes python3 host SSL build -> host-pip can use https:// urls again. Updates Pip to 10.0.1 rebased patches Signed-off-by: Martin Strobel <arctus@crza.de>
* python3: update to version 3.6.5Alexandru Ardelean2018-05-03
| | | | | | | Add PKG_RELEASE for setuptools and pip. Refresh all patches. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python/python3: remove zlib/host dependencyHauke Mehrtens2018-04-28
| | | | | | | | zlib is now a host tool and the zlib/host package was removed. this dependency is not needed any more as there will always be a zlib host library. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* python,python3: remove `--with-system-ffi=no` config argAlexandru Ardelean2018-03-14
| | | | | | | | | | | | | | | | | | | Report https://github.com/openwrt/packages/issues/5638 It was mentioned that this causes build failures on Mac OS X. The default behavior [in the setup.py script] is to check whether `--with-system-ffi` is present in the CONFIG_ARGS env var. However that back-fires a bit when `--with-system-ffi=no`, because the condition `not '--with-system-ffi' in sysconfig.get_config_var("CONFIG_ARGS")` evaluates to true. This is a small bug in the `setup.py` script, but it looks like the easiest/cleanest way to address it on our end is to just remove it entirely from the HOST_CONFIGURE_ARGS. At least that's how it looks like when testing on a Linux machine. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python,python3: limit underlinking behavior to linux platformsAlexandru Ardelean2018-03-14
| | | | | | | | | | | | This change was introduced in commit 1c54e2b0fbe2e9a7d to address build issues on Ubuntu 12.04. However it was reported to cause issues on Mac OS X. Report: https://github.com/openwrt/packages/issues/5310 It was also reported that removing this on MacOS X fixes the issue. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python,python3: disable dependencies between python src packagesAlexandru Ardelean2018-01-16
| | | | | | | Related to: https://github.com/openwrt/packages/issues/5424 Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* Merge pull request #5360 from commodo/python_reproducibleHannu Nyman2018-01-14
|\ | | | | python,python3: honour the SOURCE_DATE_EPOCH for the build-info
| * python,python3: honour the SOURCE_DATE_EPOCH for the build-infoAlexandru Ardelean2018-01-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Modules/getbuildinfo.c allows the use of DATE and TIME macros to be defined via CFLAGS. These vars, control the build date & time when the interpreter is opened, and can be read via the `platform._sys_version()` function. So, a conversion from SOURCE_DATE_EPOCH to DATE & TIME is required at build-time. This is especially needed for `platform._sys_version()` to work. The installation of pip seems to rely on this. The logic has been adapted from: https://wiki.debian.org/ReproducibleBuilds/TimestampsProposal#Makefile Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* | python,python3: export mk files outside of python package dirsAlexandru Ardelean2018-01-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since `lang/python` is it's own folder of Python packages (for both Python 2 & 3), and these build rules are needed in a lot of packages [especially Python packages], putting them here makes sense architecturally, to be shared. This also helps get rid of the `include_mk` construct which relies on OpenWrt core to provide, and seems like a broken design idea that has persisted for a while. Reason is: it requires that Python 2/3 be built to provide these mk files for other Python packages, which seems like a bad idea. Long-term, there could be an issue where some other feeds would require these mk files [e.g. telephony] for some Python packages. We'll see how we handle this a bit later. For now we limit this to this feed. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* | python,python3: do not install .mk snippetsMatthias Schiffer2018-01-10
|/ | | | | | | | | The .mk snippets are not really usable at the moment, as they cannot be considered for metadata collection (package DUMP) when included through include_mk. Python packages do not use include_mk anymore for this reason, so the install commands can be removed as well. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* python,python3: undo egg-info removalJeffery To2018-01-08
| | | | | | | | | | This reverts commits 4333d1dcbfd67dde4ca7d08717bc345cc424fbf8 and 074d2863be48c1a9093fffcda91f7a328bc7d0cb, making Python packages discoverable again by pkg_resources. Fixes #5361. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* python,python3: add zlib/host to HOST_BUILD_DEPENDS (ver 2)Alexandru Ardelean2018-01-02
| | | | | | | | | | | | | | | This reverts commit 3c6d14021e62d68a7d9bdd4520b799c5c207fde1. ( which is a revert of commit c764f77dc1a62ce667b38520496ddb9bfaececab ) The initiall commit ( c764f77dc1a62ce667b38520496ddb9bfaececab ) was reverted, becase zlib did not have a host-build. Now it does: https://github.com/openwrt/openwrt/commit/cbe71649bc49ccc6ae96385482d0794c33336f68 So, now it should be good to put this in. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python3: bump to version 3.6.4Alexandru Ardelean2017-12-31
| | | | | | | | | | | | | | | | Re-worked patch `003-do-not-run-distutils-tests.patch` to reduce patch-size. Removed `011-fix-ncursesw-definition-colisions.patch` it is fixed upstream. Refreshed with `make package/python3/refresh` Resetting PKG_RELEASE to 1. This variable was never used for pip3 & setuptools, since VERSION is specified in the package definitions. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python,python3: add support for SOURCE_DATE_EPOCH varAlexandru Ardelean2017-12-20
| | | | | | | | | | | | | See: https://github.com/openwrt/packages/issues/5278 This should make Python & Python3 packages reproducible when building. In my local tests, I got the same sha256 for a sample .pyc file, so likely this is the solution that should address this. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* Revert "python,python3: add zlib/host to HOST_BUILD_DEPENDS"Hannu Nyman2017-12-16
| | | | | | | | | | | This reverts commit c764f77dc1a62ce667b38520496ddb9bfaececab. The commit caused warnings to be displayed at make defconfig etc. WARNING: Makefile 'package/feeds/packages/python/python/Makefile' has a host build dependency on 'zlib/host' but 'package/libs/zlib/Makefile' does not implement a 'host' build type Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
* python,python3: add zlib/host to HOST_BUILD_DEPENDSAlexandru Ardelean2017-12-13
| | | | | | | | | | | | | | | | | This should fix the zlibmodule build on the host side. Usually, if zlib is not found, Python/Python3 builds fine without it, but there are some cases where the Python/Python3 interpreter on the host-side requires zlib to run. At the moment, zlib does not have a host-build. This should be available when this PR gets merged: https://github.com/lede-project/source/pull/1329 [ or a similar one that contains host-build support for zlib ]. In the meantime, this change can go into Python/Python3. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python,python3: define config option for bluetooth supportAlexandru Ardelean2017-12-10
| | | | | | | | | | | | | | | | | | | | | | | | | It was reported via https://github.com/openwrt/packages/pull/5122#issuecomment-347395472 that if bluez-libs is selected as an installable package, then the error below will show up: ``` * satisfy_dependencies_for: Cannot satisfy the following dependencies for python-light: * bluez-libs * * opkg_install_cmd: Cannot install package python-light. ``` This looks like a limitation in the design of package deps, and maybe a misuse of conditional deps (i.e. PACKAGE_bluez-libs:bluez-libs). So, to fix this, an idea we're adding an extra symbol that enfoces installation of bluez-libs if selected. We also need to add a way to disable bluetooth build if PYTHON(3)_BLUETOOTH_SUPPORT is de-selected. Otherwise, bluetooth is installed and the socket module is broken due to linker errors. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python,python3: build bluetooth support if bluez-libs selectedAlexandru Ardelean2017-11-14
| | | | | | | | | | | | | | | | This should hopefully fix the Python3 build on buildbot. For a while I assumed it may be a build-bot issue, but then looking through the packages repo [and finding the bluez package] it looks like, if you try to build all packages, Python3 detects the bluetooth headers installed by bluez. It looks like Python's bluetooth support was somewhat broken ; it was not detecting the <bluetooth/bluetooth.h> header, so a backport from Python3 to Python fixed that. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python,python3: apply PKG_FIXUP:=autoreconfAlexandru Ardelean2017-11-06
| | | | | | | Should hopefully provide more consistent results across distros. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python3: bump to version 3.6.3Alexandru Ardelean2017-11-06
| | | | Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python3: package CGI componentMirko Vogt2017-10-31
| | | | Signed-off-by: Mirko Vogt <mirko-openwrt@nanl.de>
* python,python3: add option to keep egg-info dirs for python packagesAlexandru Ardelean2017-10-03
| | | | | | | That way some python packages can choose to keep their egg-info dirs, if they want to, or they're needed. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python3: fix install mk filenamesAlexandru Ardelean2017-09-15
| | | | | | | | Copy + paste error. Seems I fixed it while testing but forgot to update PR with this. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python,python3: install mk files in both host build and InstallDev partAlexandru Ardelean2017-09-14
| | | | | | | | | | | Not sure how it can happen that the files are not installed via the host build. Maybe some SDK-like build. Let's make sure they are installed via InstallDev rule too. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python3: upgrade to version 3.6.2Alexandru Ardelean2017-07-24
| | | | Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python,python3: drop PKG_MD5SUM fields ; will use only PKG_HASHAlexandru Ardelean2017-07-19
| | | | Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python,python3: remove multi-arch support, and /usr/local pathsAlexandru Ardelean2017-07-19
| | | | | | | This should hopefully reduce weird behaviour caused by the host system. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python,python3: add dependency on CONFIG_PACKAGE_ symbols for setuptools & pipAlexandru Ardelean2017-07-03
| | | | | | | | | | | | If you build python/python3 and later decide to build python(3)-setuptools and/or python(3)-pip, the build won't re-run without adding `CONFIG_PACKAGE_python(3)-setuptools` and `CONFIG_PACKAGE_python(3)-pip`. Seems to resolve issue: https://github.com/openwrt/packages/issues/4529 Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python,python3: fix underlinking issues with lrt (clock_gettime())Alexandru Ardelean2017-07-03
| | | | | | | | | | | | | | | | | Seems it's called underlinking that's happening only on Ubuntu 12.04 with libressl (that comes from LEDE's tools folder). Link here: https://ubuntuforums.org/showthread.php?t=1870586 I'm still reading about this a bit. Since I don't really get it. But applying that fix (as in the link) seems to fix compiling on Ubuntu 12.04, and tried also on 16.04 (to make sure). Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python,python3: install mk files in the Host/Install phaseAlexandru Ardelean2017-06-29
| | | | | | | | The Build/InstallDev rule is activated only for target builds. But if someone needs only the host Python, then these files need to be installed in this phase, and not Build/InstallDev Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python3: fix distutils path to package when using bytecodesAlexandru Ardelean2017-06-12
| | | | | | | | | | | | | | | | If there is only Python bytecodes, then the __init__.py script will be concatenated, and the __init__.pyc as well. This is becase this bit `path = os.path.join(path, '__init__'+extension)` is iterated twice. This is a bug in Python3, also because we ship bytecodes instead of source code [ with Python & Python3 ]. Python is not affected. Reported-by: Mirko Vogt <mirko@nanl.de> Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python3-pip: override Package/python3-pip/install ruleAlexandru Ardelean2017-05-19
| | | | | | | | | | | | | | This is in essence fixes pip3. That means pip3 will ship without Python byte-codes for a while, until I'll find a better way to fix it. I couldn't think of a not-very hack-ish way of doing it. The only draw-back of this, will be that pip3 will run a bit slower ; but that should be ok for a while. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python packages: move all things python under lang/pythonAlexandru Ardelean2017-05-17
I admit this may be be a bit aggressive, but the lang folder is getting cluttered/filled up with Python, PHP, Perl, Ruby, etc. packages. Makes sense to try to group them into per-lang folders. I took the Pythons. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>