aboutsummaryrefslogtreecommitdiff
path: root/lang/python/Makefile
Commit message (Collapse)AuthorAge
* python,python3: bump PKG_RELEASEsAlexandru Ardelean2017-03-09
| | | | Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python: split source packages away from compiled packagesAlexandru Ardelean2017-03-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Well, they're not yet compiled, but in the next commit they should be. People have been complaining [citation needed] to me via email or via Github that Python's performance is crap because it packages sources directly and they're not compiled. And Python has to compile the sources on each run, and on-the-fly. Allowing compilation caching is also a no-no, because I'll get complaints that the flash storage fills up whenever a Python app runs. So, to give the user a choice, the new de-facto packaging for Python packages will be: * ship compiled + [ preferably ] optimized files * package sources separately The problem is that this doubles the number of packages in LEDE/OpenWrt, but build-times should not suffer a big hit, since the compilation is done once, and the install phase should not be too intensive. Oh, and people don't need ship source packages if they don't want to. To do that, a packager needs to just call `$(eval $(call BuildPackage,python-<package>-src))` The `python-` prefix is important. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python,python3: drop tests from all core packagesAlexandru Ardelean2017-03-09
| | | | | | | Well, this slipped by for some time. This should make the Python core packages even more lighter. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python,python3: move PyPackage install rules in the beggining of the Package ↵Alexandru Ardelean2017-03-09
| | | | | | | | | install rules So that we can process Python sources installed by those rules, if we need to. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python: move filespec shell code into fileAlexandru Ardelean2017-03-09
| | | | | | | Cleanup. And preparation for adding a bit more functionality. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python,python3: add python-pip-conf package to be used by both python-pip & ↵Alexandru Ardelean2017-01-23
| | | | | | python3-pip Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* pip,setuptools: move as part of python,python3 buildAlexandru Ardelean2017-01-23
| | | | Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python,python3: install built-in pip and setuptoolsAlexandru Ardelean2017-01-23
| | | | | | Easier than using external package. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python: bump PKG_RELEASE to 3Alexandru Ardelean2017-01-11
| | | | Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python: use built-in libffi lib for host buildAlexandru Ardelean2017-01-11
| | | | | | | | | | | Python comes with it's own builtin libffi lib, which seems easier to use for the host build, than trying to use the one from the package feeds. Also, dropping `005-fix-libffi-x86-64-configure.patch` Not needed anymore. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python: link with static libs of ssl, crypto for host buildsAlexandru Ardelean2017-01-11
| | | | Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* Revert "python: don't use libressl for host build"Alexandru Ardelean2017-01-11
| | | | This reverts commit ca800e60b040a2b409801560dc16dbcac6cba2b1.
* python: drop CFLAGS in HOST_CONFIGURE_ARGS ; it's already in HOST_CONFIGURE_VARSAlexandru Ardelean2017-01-11
| | | | Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python: don't use libressl for host buildAlexandru Ardelean2017-01-06
| | | | | | | | | | | | | | | | | Fixes: https://github.com/openwrt/packages/issues/3767 Since commit: https://github.com/lede-project/source/commit/f6e6341d896adb78f9b496f71aab8f45e1742d5a libressl is built on the host-side. Python picks it up [ via the openssl/* headers ] and assumes it has SSL libs. Compiling works fine, linking fails. Doesn't look like it's because: https://github.com/lede-project/source/commit/2fd5ce9488d11c7e6eee7dc30f128bd12be889f5 Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python: upgrade to version 2.7.13Alexandru Ardelean2017-01-04
| | | | Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python: update PYTHON_FOR_BUILD (based on python3)Alexandru Ardelean2017-01-04
| | | | | | | | | PYTHON_FOR_BUILD is used to build the target python. Nomally Python scripts detect fine the Python host interpreter to use for building the Python target interpreter. But, let's not leave it up to chance anymore. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python: remove argument for `--with-system-ffi` configure arg (based on python3)Alexandru Ardelean2017-01-04
| | | | | | | | | | And apparently `--with-system-ffi` does not take any arguments. But it's only in Python 3.6 that a check was added for that. After checking, Python 2.7 does not take any args either for `--with-system-ffi` ; so, remove it [for the case when this change may get backported]. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python: move includes after common package variablesJo-Philipp Wich2016-12-16
| | | | | | | | | | | | | | | | | | | | | | Move the python-host.mk and python-package.mk includes after the definition of common package variables. This is required to ensure that PKG_UNPACK is not set to to the dummy "true" command which happens if PKG_SOURCE is not yet set. Fixes the following error observed while attempting to build Python on a recent LEDE version: make[2]: Entering directory '.../lang/python' true [ ! -d ./src/ ] || cp -fpR ./src/* .../Python-2.7.12 Applying ./patches/001-enable-zlib.patch using plaintext: can't find file to patch at input line 14 Perhaps you used the wrong -p or --strip option? [...] Patch failed! Please fix ./patches/001-enable-zlib.patch! Makefile:242: recipe for target '.../Python-2.7.12/.prepared_...' failed Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* python, python3: unify HOST_ vars and get rid of HOST_CFLAGSAlexandru Ardelean2016-11-07
| | | | | | | --sysconfigdir and --sbindir are obtained from --prefix and --exec-prefix, so no need to have them explicitly Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python,python3: get rid of HOST_CFLAGSAlexandru Ardelean2016-11-07
| | | | | | | | They rely on system paths and are a bit misleading/confusing. As seen here: https://github.com/openwrt/packages/issues/3339 Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python: move PYTHON_VERSION in own .mk fileAlexandru Ardelean2016-11-07
| | | | | | | Allows for more granularity with respect to python-host.mk and python-package.mk inclusions. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python: add include guard for python-host.mk and include in MakefileAlexandru Ardelean2016-11-07
| | | | | | | | | | | | | | | So that it can be included twice. python-package.mk include python-host.mk, but at some point in time python-host.mk is not exported to staging_dir yet. So, to have in python's Makefile, we need to include it in the Makefile, and to prevent double inclusion (if python-host.mk is exported from a previous build), the include guard is added. Also, moved the includes after some vars were set. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python, python-*: use default prefix for host installMatthias Schiffer2016-10-04
| | | | | | Also fixes a few incorrect "$(STAGING_DIR_HOST)/host" paths. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* python: disable with-ensurepip option for host buildAlexandru Ardelean2016-09-21
| | | | Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python: upgrade to version 2.7.12Alexandru Ardelean2016-09-13
| | | | Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python: do not allow packaging of windows exe filesAlexandru Ardelean2016-06-27
| | | | | | Thanks to @ryzhovau for reporting. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python: revert $(STAGING_DIR)/host to $(STAGING_DIR)/host changeAlexandru Ardelean2016-04-15
| | | | | | | | | Also, override all prefix args in the HOST_CONFIGURE_ARGS so that this works fine on CC/15.05. There are some changes in core regarding package builds that require this. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python: change $(STAGING_DIR)/host to $(STAGING_DIR_HOST)Alexandru Ardelean2016-04-14
| | | | | | | | | | It seems that this can become an issue. Found when building python3-setuptools from packages/trunk in openwrt/15.05. python3-setuptools is not in packages/for-15.05 Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python: bump PKG_RELEASEHannu Nyman2016-03-15
| | | | | | Bump PKG_RELEASE of python 2.7.11 after the recent fixes. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
* Merge pull request #2463 from jefferyto/host-python-with-system-ffiHannu Nyman2016-03-06
|\ | | | | python: use external libffi for host python
| * python: use external libffi for host pythonJeffery To2016-03-06
| | | | | | | | | | | | | | This will ensure that ctypes will use the same version of libffi as other packages, e.g. python-cffi. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* | python: use default host build prefix, remove cross-compile workarounds for hostJeffery To2016-03-05
|/ | | | | | | | | | | | | | | The sets host Python's prefix and exec-prefix to the same value ($(STAGING_DIR)/host for packages, as currently defined in include/host-build.mk), which avoids the case where pyconfig.h is not in the same location as Python's other header files (see https://bugs.python.org/issue896330). This also removes some cross compilation workarounds (_python_sysroot/prefix/exec_prefix, disabling byte-compilation, __PYVENV_LAUNCHER__) that are not necessary when compiling packages for host. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* python: fix HOST_PYTHON_INC_DIR pathJeffery To2016-02-14
| | | | | | | Host python moved in c5564133, this updates HOST_PYTHON_INC_DIR to match. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* treewide: use $(STAGING_DIR)/host instead of $(STAGING_DIR_HOST), sync with ↵Felix Fietkau2016-01-20
| | | | | | changes in trunk Signed-off-by: Felix Fietkau <nbd@openwrt.org>
* python: fixed _python_sysroot pathsJeffery To2015-12-31
| | | | | | | | AFAIK sysroot is combined with prefix/exec_prefix, so sysroot shouldn't include "/usr". (cf. the HostPython function in older versions of python-package.mk) Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* python: bump PKG_RELEASEHannu Nyman2015-12-13
| | | | | | | Bump PKG_RELEASE of python 2.7.11 as there have been several fixes since the initial release. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
* python: fix upgrade 2.7.11 goofAlexandru Ardelean2015-12-11
| | | | | | | | Seems those pkgconfig file paths were revealed to be incorrect after doing a full clean build. And I only had to inspiration to do one after doing the initial PR. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python: upgrade to version 2.7.11Alexandru Ardelean2015-12-11
| | | | | | | And split python-dev and python-lib2to3 packages. Seems for python3 this was done, so we'll sync here. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python: unify HostPython and HostHostPython functionsAlexandru Ardelean2015-12-11
| | | | | | | | That means basically moving the host Python from $(STAGING_DIR_HOST) to $(STAGING_DIR_HOST)/usr and making the PYTHONPATH var as an argument. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python: remove newline function; it's also in OpenWRT coreAlexandru Ardelean2015-12-11
| | | | Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* Merge pull request #1984 from jefferyto/host-python-packageSteven Barth2015-11-24
|\ | | | | python: add capability to install python packages for the host
| * python: add capability to install python packages for the hostJeffery To2015-11-24
| | | | | | | | | | | | | | | | | | | | | | | | Some python packages (e.g. cffi) compile one or more shared libraries as part of their setup process. When these packages are setup dependencies of other packages (e.g. cryptography), these packages (and their shared libraries) will need to be loaded on the host system. This adds a makefile, similar to python-package.mk, to simplify installing python packages on the host. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* | python: add missing host build dependency on expat/hostJan Čermák2015-11-23
|/ | | | | | | | | Since 94f87dc1, host build of Python depends on expat installed in host staging directory. However, pyexpat extension fails to build if expat was not built and installed to staging dir before - adding host build dependency should fix this. Signed-off-by: Jan Čermák <jan.cermak@nic.cz>
* python: fix two build depend issuesJo-Philipp Wich2015-10-23
| | | | | | | | | | | | Build depends must refer to the source package name, not the binary one, therefore we need to use `bzip2` in order to enforce a build of libbz2.so. Also make the host python build depend on the bzip2 host build in order to ensure that host python is built with bzip2 support. We don't need a build dependency for the target python as this already depends on +libbz2 through python-light. That package dependency in turn implies a build dependency. Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
* python: add dependency to bz2 host buildJohn Crispin2015-08-22
| | | | Signed-off-by: John Crispin <blogic@openwrt.org>
* python: add correct host expatSteven Barth2015-08-03
| | | | Signed-off-by: Steven Barth <steven@midlink.org>
* python: fix patch removing multiarch support for host pythonJan Čermák2015-07-02
| | | | | | | | | | Patch removing multiarch paths from build should be applied only when Python is built for target, but not for host. When the paths are removed during host build, host python throws some ugly errors when importing some hashlib modules. Also it reports that modules crypt and nis failed to build (tested on Ubuntu 14.04 host). Signed-off-by: Jan Čermák <jan.cermak@nic.cz>
* python: upgrade to 2.7.10Alexandru Ardelean2015-05-27
| | | | Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python: fix conflicts between python-light & python-baseAlexandru Ardelean2015-03-12
| | | | Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* python: revert previous patch and add a filespecAlexandru Ardelean2015-03-11
| | | | | | | | | Seems removing the PyPackage rule and/or adding dummy install rule causes some issues inside the build-system, where the libpython2.7.so.1.0 is not seen by packages that depend on python. Even though that libpython2.7.so.1.0 file is installed properly by `python-base`. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>