HEX
Server: Apache
System: Linux zacp120.webway.host 4.18.0-553.50.1.lve.el8.x86_64 #1 SMP Thu Apr 17 19:10:24 UTC 2025 x86_64
User: govancoz (1003)
PHP: 8.3.26
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: //usr/lib/python3.9/site-packages/pip/_vendor/pep517/__pycache__/build.cpython-39.pyc
a

?�f
�@sdZddlZddlZddlZddlmZddlZddlmZddl	m
Z
ddlmZm
Z
ddlmZe�e�Zd	d
�Zdd�Zd
d�Zdd�Zd#dd�Ze��Zejddd�ejddddd�ejddddd�ejdddd�d d!�Zed"k�ree���dS)$z%Build a project using PEP 517 hooks.
�N)�toml�)�BuildEnvironment)�Pep517HookCaller)�tempdir�mkdir_p)�FileNotFoundErrorcCs4ddh}|t|�ks0dj|t|�d�}t|��dS)z7
    Ensure build system has the requisite fields.
    �requires�
build-backendz"Missing required fields: {missing})ZmissingN)�set�format�
ValueError)�systemZrequired�message�r�</usr/lib/python3.9/site-packages/pip/_vendor/pep517/build.py�validate_systems
�rcCsHtj�|d�}t|��}t�|�}Wd�n1s60Y|dS)zC
    Load the build system from a source dir (pyproject.toml).
    zpyproject.tomlNzbuild-system)�os�path�join�openr�load)�
source_dirZ	pyproject�fZpyproject_datarrr�load_systems
(rc	CsHzt|�}Wnttfy&i}Yn0|�dd�|�dddg�|S)z�
    Given a source dir, attempt to get a build system backend
    and requirements from pyproject.toml. Fallback to
    setuptools but only if the file was not found or a build
    system was not indicated.
    r
z setuptools.build_meta:__legacy__r	Z
setuptools�wheel)rr�KeyError�
setdefault)rrrrr�
compat_system's
�rc
Cs�djfit���}t||�}|i�}t�d|�|�|�t�d�t��p}t�d||�djfit���}t||�}	|	|i�}
tj�	||
�}t
�|tj�	|tj�|
���Wd�n1s�0YdS)Nzget_requires_for_build_{dist}zGot build requires: %sz$Installed dynamic build dependencieszTrying to build %s in %szbuild_{dist})
r�locals�getattr�log�info�pip_installrrrr�shutilZmove�basename)�hooks�env�dist�destZget_requires_nameZget_requiresZreqsZtdZ
build_name�build�filename�sourcerrr�	_do_build:s




r-cCs�|p
t|�}tj�||pd�}t|�t|�t||d|�d��}t��,}|�	|d�t
||||�Wd�n1s|0YdS)Nr(r
zbackend-pathr	)rrrrrrr�getrr#r-)rr(r)rr&r'rrrr*Ls�r*rz%A directory containing pyproject.toml)�helpz--binaryz-b�
store_trueF)�action�defaultz--sourcez-sz	--out-dirz-oz>Destination in which to save the builds relative to source dircCsPttd|js|jsdnd|js$|js(dndf��}|D]}t|j||j�q6dS)NZsdistr)�list�filterr,Zbinaryr*rZout_dir)�argsZdistsr(rrr�mainps�r6�__main__)NN)�__doc__�argparseZloggingrZpip._vendorrr$ZenvbuildrZwrappersrZdirtoolsrr�compatrZ	getLogger�__name__r!rrrr-r*�ArgumentParser�parser�add_argumentr6�
parse_argsrrrr�<module>sJ


����