python: Better host pip options
pip by default will read system-wide and per-user configuration files[1]. Setting PIP_CONFIG_FILE=/dev/null instructs pip to not read any config files[2]. pip will spawn child processes of itself to do work, but not all options are passed down to the child processes[3]. Setting global options as environment variables[4] ensures they are passed down to any child processes. [1]: https://pip.pypa.io/en/stable/topics/configuration/#configuration-files [2]: https://pip.pypa.io/en/stable/topics/configuration/#pip-config-file [3]: https://github.com/pypa/pip/issues/9081#issue-733819665 [4]: https://pip.pypa.io/en/stable/topics/configuration/#environment-variables Signed-off-by: Jeffery To <jeffery.to@gmail.com>
This commit is contained in:
parent
6294cf26c7
commit
8c2abb7403
2 changed files with 11 additions and 6 deletions
|
@ -93,6 +93,11 @@ HOST_PYTHON3_PIP:=$(STAGING_DIR_HOSTPKG)/bin/pip$(PYTHON3_VERSION)
|
|||
|
||||
HOST_PYTHON3_PIP_CACHE_DIR:=$(DL_DIR)/pip-cache
|
||||
|
||||
HOST_PYTHON3_PIP_VARS:= \
|
||||
PIP_CACHE_DIR="$(HOST_PYTHON3_PIP_CACHE_DIR)" \
|
||||
PIP_CONFIG_FILE=/dev/null \
|
||||
PIP_DISABLE_PIP_VERSION_CHECK=1
|
||||
|
||||
define SetupPyShim
|
||||
if [ -f $(1)/pyproject.toml ] && [ ! -f $(1)/setup.py ] ; then \
|
||||
$(CP) $(python3_mk_path)setup.py.shim $(1)setup.py ; \
|
||||
|
@ -104,11 +109,11 @@ endef
|
|||
define HostPython3/PipInstall
|
||||
$(call locked, \
|
||||
$(HOST_PYTHON3_VARS) \
|
||||
$(HOST_PYTHON3_PIP_VARS) \
|
||||
$(HOST_PYTHON3_PIP) \
|
||||
--cache-dir "$(HOST_PYTHON3_PIP_CACHE_DIR)" \
|
||||
--disable-pip-version-check \
|
||||
install \
|
||||
--no-binary :all: \
|
||||
--progress-bar off \
|
||||
--require-hashes \
|
||||
$(1) \
|
||||
$(if $(CONFIG_PYTHON3_HOST_PIP_CACHE_WORLD_READABLE), \
|
||||
|
|
|
@ -179,11 +179,11 @@ endif
|
|||
|
||||
ifeq ($(PYTHON3_SETUPTOOLS_BUILD),1)
|
||||
define Build/Compile/python3-setuptools
|
||||
$(HOST_PYTHON3_PIP_VARS) \
|
||||
$(HOST_PYTHON3_PIP) \
|
||||
--disable-pip-version-check \
|
||||
--cache-dir "$(DL_DIR)/pip-cache" \
|
||||
install \
|
||||
--ignore-installed \
|
||||
--progress-bar off \
|
||||
--root=$(PKG_BUILD_DIR)/install-setuptools \
|
||||
--prefix=/usr \
|
||||
$(PKG_BUILD_DIR)/Lib/ensurepip/_bundled/setuptools-$(PYTHON3_SETUPTOOLS_VERSION)-py3-none-any.whl
|
||||
|
@ -197,11 +197,11 @@ endif # CONFIG_PACKAGE_python3-setuptools
|
|||
|
||||
ifdef CONFIG_PACKAGE_python3-pip
|
||||
define Build/Compile/python3-pip
|
||||
$(HOST_PYTHON3_PIP_VARS) \
|
||||
$(HOST_PYTHON3_PIP) \
|
||||
--disable-pip-version-check \
|
||||
--cache-dir "$(DL_DIR)/pip-cache" \
|
||||
install \
|
||||
--ignore-installed \
|
||||
--progress-bar off \
|
||||
--root=$(PKG_BUILD_DIR)/install-pip \
|
||||
--prefix=/usr \
|
||||
$(PKG_BUILD_DIR)/Lib/ensurepip/_bundled/pip-$(PYTHON3_PIP_VERSION)-py3-none-any.whl
|
||||
|
|
Loading…
Reference in a new issue