python3: Add new packages python3-setuptools
authorFlorian Fieber <florian@florianfieber.de>
Sun, 7 Jun 2015 21:12:13 +0000 (23:12 +0200)
committerFlorian Fieber <florian@florianfieber.de>
Thu, 19 Nov 2015 17:37:53 +0000 (18:37 +0100)
Signed-off-by: Florian Fieber <florian@florianfieber.de>
lang/python3-setuptools/Makefile [new file with mode: 0644]
lang/python3-setuptools/patches/0001-remove-windows-support.patch [new file with mode: 0644]
lang/python3-setuptools/patches/0002-fix-pyvenv-environment-get.patch [new file with mode: 0644]

diff --git a/lang/python3-setuptools/Makefile b/lang/python3-setuptools/Makefile
new file mode 100644 (file)
index 0000000..8394ec1
--- /dev/null
@@ -0,0 +1,60 @@
+#
+# Copyright (C) 2014-2015 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=python3-setuptools
+PKG_VERSION:=18.5
+PKG_RELEASE:=1
+
+PKG_SOURCE:=setuptools-$(PKG_VERSION).tar.gz
+PKG_SOURCE_URL:=https://pypi.python.org/packages/source/s/setuptools/
+PKG_MD5SUM:=533c868f01169a3085177dffe5e768bb
+
+PKG_LICENSE:=PSF
+
+PKG_BUILD_DIR:=$(BUILD_DIR)/setuptools-$(PKG_VERSION)
+
+include $(INCLUDE_DIR)/package.mk
+$(call include_mk, python3-package.mk)
+
+define Package/python3-setuptools
+       SUBMENU:=Python
+       SECTION:=lang
+       CATEGORY:=Languages
+       TITLE:=Tool for installing Python $(PYTHON3_VERSION) packages.
+       URL:=https://bitbucket.org/pypa/setuptools
+       DEPENDS:=+python3 +python3-dev +python3-lib2to3
+       MAINTAINER:=Alexandru Ardelean <ardeleanalex@gmail.com>
+endef
+
+define Package/python3-setuptools/description
+       Easily download, build, install, upgrade, and uninstall Python $(PYTHON3_VERSION) packages
+endef
+
+define Build/Compile
+       $(call Build/Compile/Py3Mod,,\
+               install --root="$(PKG_INSTALL_DIR)" --prefix="/usr" \
+               --single-version-externally-managed \
+       )
+endef
+
+define Build/InstallDev
+       $(INSTALL_DIR) $(PYTHON3_LIB_DIR)
+       $(CP) \
+               $(PKG_INSTALL_DIR)$(PYTHON3_PKG_DIR)/* \
+               $(PYTHON3_LIB_DIR)
+endef
+
+define Py3Package/python3-setuptools/install
+       $(INSTALL_DIR) $(1)/usr/bin
+       $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/easy_install-$(PYTHON3_VERSION) $(1)/usr/bin/
+       $(LN) easy_install-$(PYTHON3_VERSION) $(1)/usr/bin/easy_install3
+endef
+
+$(eval $(call Py3Package,python3-setuptools))
+$(eval $(call BuildPackage,python3-setuptools))
diff --git a/lang/python3-setuptools/patches/0001-remove-windows-support.patch b/lang/python3-setuptools/patches/0001-remove-windows-support.patch
new file mode 100644 (file)
index 0000000..0a2d50b
--- /dev/null
@@ -0,0 +1,20 @@
+diff --git a/setuptools/dist.py b/setuptools/dist.py
+index 6b9d350..1350e8a 100644
+--- a/setuptools/dist.py
++++ b/setuptools/dist.py
+@@ -15,7 +15,6 @@ from distutils.errors import (DistutilsOptionError, DistutilsPlatformError,
+ from setuptools.depends import Require
+ from setuptools.compat import basestring, PY2
+-from setuptools import windows_support
+ import pkg_resources
+ def _get_unpatched(cls):
+@@ -310,7 +309,6 @@ class Distribution(_Distribution):
+         egg_cache_dir = os.path.join(os.curdir, '.eggs')
+         if not os.path.exists(egg_cache_dir):
+             os.mkdir(egg_cache_dir)
+-            windows_support.hide_file(egg_cache_dir)
+             readme_txt_filename = os.path.join(egg_cache_dir, 'README.txt')
+             with open(readme_txt_filename, 'w') as f:
+                 f.write('This directory contains eggs that were downloaded '
diff --git a/lang/python3-setuptools/patches/0002-fix-pyvenv-environment-get.patch b/lang/python3-setuptools/patches/0002-fix-pyvenv-environment-get.patch
new file mode 100644 (file)
index 0000000..c46a5f3
--- /dev/null
@@ -0,0 +1,13 @@
+diff --git a/setuptools/command/easy_install.py b/setuptools/command/easy_install.py
+index df1655b..24c34e5 100755
+--- a/setuptools/command/easy_install.py
++++ b/setuptools/command/easy_install.py
+@@ -1885,7 +1885,7 @@ class CommandSpec(list):
+             return param
+         if isinstance(param, list):
+             return cls(param)
+-        if param is None:
++        if param is None or os.environ.get('__PYVENV_LAUNCHER__'):
+             return cls.from_environment()
+         # otherwise, assume it's a string.
+         return cls.from_string(param)