python-pip: revamp installation procedure (use setuptools machinery)
PIP's installation procedure was too complicated, requiring obscure postinstall and prerm scripts to move files created by setup procedure. But since setuptools is required anyway, it's better to use a special flag created for the purpose of package creation. Resulting directory structure is flatter and unnecessary files that had to be moved by prerm/postinstall scripts are not created anymore. Signed-off-by: Jan Čermák <jan.cermak@nic.cz>
This commit is contained in:
parent
baabb368f7
commit
f83cf7b663
1 changed files with 4 additions and 24 deletions
|
@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
|
|||
|
||||
PKG_NAME:=python-pip
|
||||
PKG_VERSION:=7.1.0
|
||||
PKG_RELEASE:=1
|
||||
PKG_RELEASE:=2
|
||||
|
||||
PKG_SOURCE:=pip-$(PKG_VERSION).tar.gz
|
||||
PKG_SOURCE_URL:=https://pypi.python.org/packages/source/p/pip/
|
||||
|
@ -36,34 +36,14 @@ endef
|
|||
|
||||
define Build/Compile
|
||||
$(call Build/Compile/PyMod,,\
|
||||
install --prefix="$(PKG_INSTALL_DIR)/usr" \
|
||||
install --root="$(PKG_INSTALL_DIR)" --prefix="/usr" \
|
||||
--single-version-externally-managed \
|
||||
)
|
||||
endef
|
||||
|
||||
PYTHON_PIP_PKG_DIR:=$(PYTHON_PKG_DIR)/pip-$(PKG_VERSION)-py$(PYTHON_VERSION).egg/pip
|
||||
define PyPackage/python-pip/filespec
|
||||
+|$(PYTHON_PKG_DIR)
|
||||
-|$(PYTHON_PIP_PKG_DIR)/_vendor/distlib/*.exe
|
||||
endef
|
||||
|
||||
# Backup these files, so that they do not clash with python-setuptools
|
||||
# If we install python-pip python-setuptools, we want these to be replaced,
|
||||
# since python-pip replaces python-setuptools (when installed)
|
||||
define Package/python-pip/preinst
|
||||
#!/bin/sh
|
||||
cd "$${IPKG_INSTROOT}$(PYTHON_PKG_DIR)"
|
||||
mv -f easy-install.pth easy-install.pth.old
|
||||
mv -f site.py site.py.old
|
||||
exit 0
|
||||
endef
|
||||
|
||||
# And put them back on remove
|
||||
define Package/python-pip/postrm
|
||||
#!/bin/sh
|
||||
cd "$${IPKG_INSTROOT}$(PYTHON_PKG_DIR)"
|
||||
mv -f easy-install.pth.old easy-install.pth
|
||||
mv -f site.py.old site.py
|
||||
exit 0
|
||||
-|$(PYTHON_PKG_DIR)/pip/_vendor/distlib/*.exe
|
||||
endef
|
||||
|
||||
define PyPackage/python-pip/install
|
||||
|
|
Loading…
Reference in a new issue