Browse Source

Merge pull request #2107 from commodo/python-2-7-11-upgrade

python: upgrade to version 2.7.11
lilik-openwrt-22.03
Hannu Nyman 9 years ago
parent
commit
995bdfdcfa
5 changed files with 77 additions and 38 deletions
  1. +14
    -18
      lang/python/Makefile
  2. +12
    -7
      lang/python/files/python-host.mk
  3. +27
    -0
      lang/python/files/python-package-dev.mk
  4. +18
    -0
      lang/python/files/python-package-lib2to3.mk
  5. +6
    -13
      lang/python/files/python-package.mk

+ 14
- 18
lang/python/Makefile View File

@ -12,11 +12,11 @@ include ./files/python-package.mk
PKG_NAME:=python
PKG_VERSION:=$(PYTHON_VERSION).$(PYTHON_VERSION_MICRO)
PKG_RELEASE:=6
PKG_RELEASE:=1
PKG_SOURCE:=Python-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=http://www.python.org/ftp/python/$(PKG_VERSION)
PKG_MD5SUM:=c685ef0b8e9f27b5e3db5db12b268ac6
PKG_SOURCE_URL:=https://www.python.org/ftp/python/$(PKG_VERSION)
PKG_MD5SUM:=1dbcc848b4cd8399a8199d000f9f823c
PKG_LICENSE:=PSF
PKG_LICENSE_FILES:=LICENSE Modules/_ctypes/libffi_msvc/LICENSE Modules/_ctypes/darwin/LICENSE Modules/_ctypes/libffi/LICENSE Modules/_ctypes/libffi_osx/LICENSE Tools/pybench/LICENSE
@ -39,7 +39,7 @@ define Package/python/Default
SECTION:=lang
CATEGORY:=Languages
TITLE:=Python $(PYTHON_VERSION) programming language
URL:=http://www.python.org/
URL:=https://www.python.org/
MAINTAINER:=Alexandru Ardelean <ardeleanalex@gmail.com>
endef
@ -75,16 +75,14 @@ define Package/python-light/description
into separate packages.
endef
# Define newline here, since it's not defined in OpenWRT
define newline
endef
PYTHON_LIB_FILES_DEL:=
PYTHON_PACKAGES:=
PYTHON_PACKAGES_DEPENDS:=
define PyBasePackage
PYTHON_PACKAGES+=$(1)
ifeq ($(3),)
PYTHON_PACKAGES_DEPENDS+=$(1)
endif
PYTHON_LIB_FILES_DEL+=$(2)
define PyPackage/$(1)/filespec
$(subst $(space),$(newline),$(foreach lib_file,$(2),+|$(lib_file)))
@ -95,7 +93,7 @@ include ./files/python-package-*.mk
define Package/python
$(call Package/python/Default)
DEPENDS:=+python-light $(foreach package,$(PYTHON_PACKAGES),+$(package))
DEPENDS:=+python-light $(foreach package,$(PYTHON_PACKAGES_DEPENDS),+$(package))
endef
define Package/python/description
@ -146,13 +144,13 @@ define Build/InstallDev
$(PKG_INSTALL_DIR)/usr/include/python$(PYTHON_VERSION) \
$(1)/usr/include/
$(CP) \
$(STAGING_DIR_HOST)/lib/python$(PYTHON_VERSION) \
$(STAGING_DIR_HOST)/usr/lib/python$(PYTHON_VERSION) \
$(PKG_INSTALL_DIR)/usr/lib/libpython$(PYTHON_VERSION).so* \
$(1)/usr/lib/
$(CP) \
$(STAGING_DIR_HOST)/lib/pkgconfig/python.pc \
$(STAGING_DIR_HOST)/lib/pkgconfig/python2.pc \
$(STAGING_DIR_HOST)/lib/pkgconfig/python-$(PYTHON_VERSION).pc \
$(STAGING_DIR_HOST)/usr/lib/pkgconfig/python.pc \
$(STAGING_DIR_HOST)/usr/lib/pkgconfig/python2.pc \
$(STAGING_DIR_HOST)/usr/lib/pkgconfig/python-$(PYTHON_VERSION).pc \
$(1)/usr/lib/pkgconfig
$(CP) \
$(PKG_INSTALL_DIR)/usr/lib/python$(PYTHON_VERSION)/config \
@ -190,12 +188,10 @@ endef
define PyPackage/python-light/filespec
+|/usr/lib/python$(PYTHON_VERSION)
-|/usr/lib/python$(PYTHON_VERSION)/config
-|/usr/lib/python$(PYTHON_VERSION)/distutils/cygwinccompiler.py
-|/usr/lib/python$(PYTHON_VERSION)/distutils/command/wininst*
-|/usr/lib/python$(PYTHON_VERSION)/ensurepip
-|/usr/lib/python$(PYTHON_VERSION)/idlelib
-|/usr/lib/python$(PYTHON_VERSION)/lib2to3
-|/usr/lib/python$(PYTHON_VERSION)/lib-tk
-|/usr/lib/python$(PYTHON_VERSION)/lib-dynload/_testcapi.so
-|/usr/lib/python$(PYTHON_VERSION)/pdb.doc
@ -225,8 +221,8 @@ HOST_CONFIGURE_ARGS+= \
--without-cxx-main \
--without-pymalloc \
--with-threads \
--prefix=$(STAGING_DIR_HOST)/usr \
--with-system-expat=$(STAGING_DIR_HOST) \
--prefix=$(STAGING_DIR_HOST) \
--with-ensurepip=upgrade \
CONFIG_SITE= \
CFLAGS="$(HOST_CFLAGS)"


+ 12
- 7
lang/python/files/python-host.mk View File

@ -7,11 +7,14 @@
HOST_PYTHON_INC_DIR:=$(STAGING_DIR_HOST)/include/python$(PYTHON_VERSION)
HOST_PYTHON_PKG_DIR:=/lib/python$(PYTHON_VERSION)/site-packages
HOST_PYTHON_PKG_DIR:=/usr/lib/python$(PYTHON_VERSION)/site-packages
HOST_PYTHONPATH:=$(HOST_PYTHON_LIB_DIR):$(STAGING_DIR_HOST)/$(HOST_PYTHON_PKG_DIR)
define HostHostPython
( export PYTHONPATH="$(HOST_PYTHONPATH)"; \
define HostPython
ifeq ($(3),)
$(3):=$(PYTHONPATH)
endif
( export PYTHONPATH="$(3)"; \
export PYTHONOPTIMIZE=""; \
export PYTHONDONTWRITEBYTECODE=1; \
export _python_sysroot="$(STAGING_DIR_HOST)"; \
@ -25,15 +28,15 @@ endef
# These configure args are needed in detection of path to Python header files
# using autotools.
HOST_CONFIGURE_ARGS += \
_python_sysroot="$(STAGING_DIR_HOST)" \
_python_prefix="" \
_python_exec_prefix=""
_python_sysroot="$(STAGING_DIR_HOST)/usr" \
_python_prefix="/usr" \
_python_exec_prefix="/usr"
# $(1) => build subdir
# $(2) => additional arguments to setup.py
# $(3) => additional variables
define Build/Compile/HostPyMod
$(call HostHostPython, \
$(call HostPython, \
cd $(HOST_BUILD_DIR)/$(strip $(1)); \
CC="$(HOSTCC)" \
CCSHARED="$(HOSTCC) $(HOST_FPIC)" \
@ -48,6 +51,8 @@ define Build/Compile/HostPyMod
$(3) \
, \
./setup.py $(2) \
, \
$(HOST_PYTHONPATH) \
)
endef

+ 27
- 0
lang/python/files/python-package-dev.mk View File

@ -0,0 +1,27 @@
#
# Copyright (C) 2006-2015 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
define Package/python-dev
$(call Package/python/Default)
TITLE:=Python $(PYTHON_VERSION) development files
DEPENDS:=+python
endef
define PyPackage/python-dev/install
$(INSTALL_DIR) $(1)/usr/bin
$(CP) $(PKG_INSTALL_DIR)/usr/bin/python*config $(1)/usr/bin
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libpython$(PYTHON_VERSION).so* $(1)/usr/lib
endef
$(eval $(call PyBasePackage,python-dev, \
/usr/lib/python$(PYTHON_VERSION)/config \
/usr/include/python$(PYTHON_VERSION) \
/usr/lib/pkgconfig \
, \
DO_NOT_ADD_TO_PACKAGE_DEPENDS \
))

+ 18
- 0
lang/python/files/python-package-lib2to3.mk View File

@ -0,0 +1,18 @@
#
# Copyright (C) 2006-2015 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
define Package/python-lib2to3
$(call Package/python/Default)
TITLE:=Python $(PYTHON_VERSION) lib2to3 module
DEPENDS:=+python
endef
$(eval $(call PyBasePackage,python-lib2to3, \
/usr/lib/python$(PYTHON_VERSION)/lib2to3 \
, \
DO_NOT_ADD_TO_PACKAGE_DEPENDS \
))

+ 6
- 13
lang/python/files/python-package.mk View File

@ -6,7 +6,7 @@
#
PYTHON_VERSION:=2.7
PYTHON_VERSION_MICRO:=10
PYTHON_VERSION_MICRO:=11
PYTHON_DIR:=$(STAGING_DIR)/usr
PYTHON_BIN_DIR:=$(PYTHON_DIR)/bin
@ -17,21 +17,10 @@ PYTHON_PKG_DIR:=/usr/lib/python$(PYTHON_VERSION)/site-packages
PYTHON:=python$(PYTHON_VERSION)
HOST_PYTHON_LIB_DIR:=$(STAGING_DIR_HOST)/lib/python$(PYTHON_VERSION)
HOST_PYTHON_LIB_DIR:=$(STAGING_DIR_HOST)/usr/lib/python$(PYTHON_VERSION)
HOST_PYTHON_BIN:=$(STAGING_DIR_HOST)/bin/python2
PYTHONPATH:=$(PYTHON_LIB_DIR):$(STAGING_DIR)/$(PYTHON_PKG_DIR):$(PKG_INSTALL_DIR)/$(PYTHON_PKG_DIR)
define HostPython
( export PYTHONPATH="$(PYTHONPATH)"; \
export PYTHONOPTIMIZE=""; \
export PYTHONDONTWRITEBYTECODE=1; \
export _python_sysroot="$(STAGING_DIR)"; \
export _python_prefix="/usr"; \
export _python_exec_prefix="/usr"; \
$(1) \
$(HOST_PYTHON_BIN) $(2); \
)
endef
# These configure args are needed in detection of path to Python header files
# using autotools.
@ -94,6 +83,8 @@ define PyPackage
endef
endef
$(call include_mk, python-host.mk)
# $(1) => build subdir
# $(2) => additional arguments to setup.py
# $(3) => additional variables
@ -114,6 +105,8 @@ define Build/Compile/PyMod
$(3) \
, \
./setup.py $(2) \
, \
$(PYTHONPATH) \
)
find $(PKG_INSTALL_DIR) -name "*\.pyc" -o -name "*\.pyo" | xargs rm -f
endef


Loading…
Cancel
Save