U ʗRe?% @ sJ d Z ddlZddlZddlZddlZddlZddlmZ ddlm Z ddl mZ ddlm Z mZmZmZmZmZmZ ddlmZ ddlmZ dd lmZ dd lmZ ddlmZ ddlm Z m!Z!m"Z" dd l#m$Z$m%Z% ddl&m'Z' ddl(m)Z)m*Z* e rddl+m,Z, e-e.Z/G dd dZ0e1dddZ2G dd dZ3G dd de3Z4dS )z;Build Environment used for isolation during sdist building N)OrderedDict) get_paths) TracebackType) TYPE_CHECKINGIterableListOptionalSetTupleType)where)Requirement)Version)__file__)open_spinner)get_platlibget_prefixed_libsget_purelib)get_default_environmentget_environment)call_subprocess) TempDirectory tempdir_kinds) PackageFinderc @ s e Zd ZeddddZdS )_PrefixN)pathreturnc C s@ || _ d| _ttjdkrdnd||ddd | _t|| _d S )NFntposix_prefix)baseplatbase)varsscripts)r setupr osnamebin_dirr lib_dirs)selfr r) /builddir/build/BUILDROOT/alt-python38-pip-22.2.1-2.el8.x86_64/opt/alt/python38/lib/python3.8/site-packages/pip/_internal/build_env.py__init__ s z_Prefix.__init__)__name__ __module____qualname__strr+ r) r) r) r* r s r r c C s. t t j} | s t| S t| d S )zGet a file to pass to a Python executable, to run the currently-running pip. This is used to run a pip subprocess, for installing requirements into the build environment. z__pip-runner__.py) pathlibPathpip_locationresolveparentis_dirr/ r$ fsdecode)sourcer) r) r* _get_runnable_pip* s r9 c @ s e Zd ZdZddddZddddZeee ee ee ddd d Z ee e ee eef ee f ddd Zdee eeddddZeedee eeddddZdS )BuildEnvironmentzACreates and manages an isolated environment to install build depsNr0 c s t tjdd t fdddD | _g | _g | _tt| j D ] }| j |j | j|j qDdd t t fD }tj jd| _tj| jst| j ttj| jd d dd"}|td j|| jd W 5 Q R X d S )NT)kindglobally_managedc 3 s&