commit 995bdfdcfaa81d8f5ab2ca34c98b4bb341c9cb9c
parent f0be8b0ea22cebe6542d57a0525fcc844ccbce4a
Author: Hannu Nyman <hannu.nyman@iki.fi>
Date: Fri, 11 Dec 2015 16:32:20 +0200
Merge pull request #2107 from commodo/python-2-7-11-upgrade
python: upgrade to version 2.7.11
Diffstat:
5 files changed, 77 insertions(+), 38 deletions(-)
diff --git a/lang/python/Makefile b/lang/python/Makefile
@@ -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)"
diff --git a/lang/python/files/python-host.mk b/lang/python/files/python-host.mk
@@ -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
diff --git a/lang/python/files/python-package-dev.mk b/lang/python/files/python-package-dev.mk
@@ -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 \
+))
+
diff --git a/lang/python/files/python-package-lib2to3.mk b/lang/python/files/python-package-lib2to3.mk
@@ -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 \
+))
diff --git a/lang/python/files/python-package.mk b/lang/python/files/python-package.mk
@@ -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