�
��^i� � � � d Z ddlZddlZddlZddlZddlZ ddlmZ n# e $ r ddl
ZY nw xY w ddlmZ n# e $ r ddl
mZ Y nw xY wddlmZ ddlmZmZ ddlmZmZmZ ddlmZmZmZ ej e� � Zd � Zdd�Zefd�Zd
� Z ej! � � Z"e"�# dd�� � e"�# ddd�� � d� Z$edk r e$� � dS dS )z2Build metadata for a project using PEP 517 hooks.
� N)�Path� )�BuildEnvironment)�Pep517HookCaller�quiet_subprocess_runner)�tempdir�mkdir_p�dir_to_zipfile)�validate_system�load_system�
compat_systemc
�T � | � i � � }t � d|� � |� |� � t � d� � t � � 5 }t � d|� � | � |i � � }t j � ||� � }t j
|t j � |t j � |� � � � � � d d d � � d S # 1 swxY w Y d S )NzGot build requires: %sz$Installed dynamic build dependencieszTrying to build metadata in %s)�get_requires_for_build_wheel�log�info�pip_installr � prepare_metadata_for_build_wheel�os�path�join�shutil�move�basename)�hooks�env�dest�reqs�td�filename�sources ��/builddir/build/BUILDROOT/alt-python311-pip-21.3.1-4.el8.x86_64/opt/alt/python311/lib/python3.11/site-packages/pip/_vendor/pep517/meta.py�
_prep_metar" s> � ��-�-�b�1�1�D��H�H�
%�t�,�,�,��O�O�D�����H�H�
3�4�4�4� ��� L�b����1�2�6�6�6��9�9�"�b�A�A������b�(�+�+����F�B�G�L�L��r�w�/?�/?��/I�/I�J�J�K�K�K� L� L� L� L� L� L� L� L� L� L� L� L���� L� L� L� L� L� Ls �.B"D�D!�$D!�.c � � |pt | � � }t j � | |pd� � }t |� � t |� � t
| |d |� d� � � � }|� t � � 5 t � � 5 }|� |d � � t |||� � d d d � � n# 1 swxY w Y d d d � � d S # 1 swxY w Y d S )N�distz
build-backendzbackend-path�requires)
r r r r r r r �get�subprocess_runnerr r r r" )�
source_dirr �systemr r s r! �buildr+ ) so � �
�
.�{�:�.�.�F�
�7�<�<�
�D�N�F�3�3�D��D�M�M�M��F������F�?�+�V�Z�Z��-G�-G�
�
�E�
� � �!8� 9� 9� )� )�
�
�
� )�3��O�O�F�:�.�/�/�/��u�c�4�(�(�(� )� )� )� )� )� )� )� )� )� )� )���� )� )� )� )�)� )� )� )� )� )� )� )� )� )� )� )���� )� )� )� )� )� )s6 �C6�%-C�C6�C" �"C6�%C" �&C6�6C:�=C:c � � t � � 5 } | |�� � t |� � cd d d � � S # 1 swxY w Y d S )N)r )r r
)�builder�out_dirs r! �build_as_zipr/ 8 s� � � ��� '�g���W������g�&�&�'� '� '� '� '� '� '� '� '� '� '� '���� '� '� '� '� '� 's �7�;�;c �� � t j � | � � } t | � � }t j t | |�� � }t t |� � � � }t j
|� � S )z�
Given a source directory (root) of a package,
return an importlib.metadata.Distribution object
with metadata build from that package.
)r) r* )r r �
expanduserr
� functools�partialr+ r r/ �imp_meta�PathDistribution)�rootr* r- r s r! �loadr7 > sc � � �7���d�#�#�D�
�4�
�
�F����$�v�F�F�F�G���W�%�%�&�&�D��$�T�*�*�*� r) z%A directory containing pyproject.toml)�helpz --out-dirz-oz>Destination in which to save the builds relative to source dirc �l � t � � � } t | j | j � � d S )N)�parser�
parse_argsr+ r) r. )�argss r! �mainr> V s- � ������D� �$�/�4�<�(�(�(�(�(r8 �__main__)r# NN)%�__doc__�argparse�loggingr r r2 �importlib.metadata�metadatar4 �ImportError�importlib_metadata�zipfiler �zipp�envbuildr �wrappersr r �dirtoolsr r r
r+ r r r
� getLogger�__name__r r" r/ r7 �ArgumentParserr; �add_argumentr> � r8 r! �