� ��^i� � �� � d Z ddlZddlZddlZddlZddlZddlmZ ddlm Z ddl mZmZ ddl mZmZ ej e� � Zd� Zd � Zd � Zd� Zdd�Z ej � � Ze� d d�� � e� dddd�� � e� dddd�� � e� ddd�� � d� Zedk r ee� � � � � dS dS )z%Build a project using PEP 517 hooks. � N� )�BuildEnvironment)�Pep517HookCaller)�tempdir�mkdir_p)�FileNotFoundError� toml_loadc � � ddh}|t | � � k s5d� |t | � � z �� � }t |� � �dS )z7 Ensure build system has the requisite fields. �requires� build-backendz"Missing required fields: {missing})�missingN)�set�format� ValueError)�system�required�messages ��/builddir/build/BUILDROOT/alt-python311-pip-21.3.1-4.el8.x86_64/opt/alt/python311/lib/python3.11/site-packages/pip/_vendor/pep517/build.py�validate_systemr s_ � � �O�,�H���F���#�#�6�=�=��S��[�[�(� >� � �� ��!�!�!� $�#� c �� � t j � | d� � }t j |d� � 5 }t |� � }ddd� � n# 1 swxY w Y |d S )zC Load the build system from a source dir (pyproject.toml). zpyproject.toml�rbNzbuild-system)�os�path�join�io�openr )� source_dir� pyproject�f�pyproject_datas r �load_systemr" s� � � ����Z�)9�:�:�I� ���D� !� !� &�Q�"�1����&� &� &� &� &� &� &� &� &� &� &���� &� &� &� &��.�)�)s �A�A�Ac � � t | � � }n# t t f$ r i }Y nw xY w|� 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 � setuptools�wheel)r" r �KeyError� setdefault)r r s r � compat_systemr( ' s � ���Z�(�(�����x�(� � � ��������� ����*�� � � ���j�<��"9�:�:�:��Ms � �(�(c �� � dj di t � � ��}t | |� � } |i � � }t � d|� � |� |� � t � d� � t � � 5 }t � d||� � dj di t � � ��}t | |� � } | |i � � } t j � || � � }t j |t j � |t j � | � � � � � � d d d � � d S # 1 swxY w Y d S )Nzget_requires_for_build_{dist}zGot build requires: %sz$Installed dynamic build dependencieszTrying to build %s in %szbuild_{dist}� ) r �locals�getattr�log�info�pip_installr r r r �shutil�move�basename)�hooks�env�dist�dest�get_requires_name�get_requires�reqs�td� build_name�build�filename�sources r � _do_buildr? : s� � �>�7�>�J�J����J�J���5�"3�4�4�L��<����D��H�H� %�t�,�,�,��O�O�D�����H�H� 3�4�4�4� ��� L�b����+�T�2�6�6�6�*�^�*�6�6�V�X�X�6�6� ���z�*�*���5��R�=�=������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 � CE�E �#E c � � |pt | � � }t j � | |pd� � }t |� � t |� � t | |d |� d� � � � }t � � 5 }|� |d � � t ||||� � d d d � � d S # 1 swxY w Y d S )Nr5 r zbackend-pathr )r" r r r r r r �getr r/ r? )r r5 r6 r r3 r4 s r r<