U ��.e=�@s�dZddlZddlZddlZddlmZmZddlm Z m Z ddl Z ddl mZddlZddlZddlmZddlZddlmZdd lmZdd lmZe�e�Zd d �Zd d�Zdd�Zddd�Z ddddd�Z!dd�Z"edkr�e �dS)zHCheck a project and backend by attempting to build using PEP 517 hooks. �N)�isfile�join)�TomlDecodeError�load)�CalledProcessError)�mkdtemp�)�enable_colourful_output)�BuildEnvironment)�Pep517HookCallerc Cst����}z|�|�t�d�Wn*tk rLt�d�YW5QR�dSXz|�i�}t�d|�Wn.tk r�tjddd�YW5QR�dSXz|�|�t�d�Wn*tk r�t�d �YW5QR�dSXt�}t�d |�z�z|� |i�}t�d |�Wn4tk �r@tjd dd�YW��W5QR�dSX|� d ��slt�d|�W��W5QR�dSt ||�}t|��r�t�d|�nt�d|�W�FW5QR�dSt�|��r�t�d�nt�d�W�W5QR�dSW5t � |�XW5QR�dSQRXdS)N�#Installed static build dependencies�+Failed to install static build dependenciesF�Got build requires: %s�'Failure in get_requires_for_build_sdistT��exc_info�$Installed dynamic build dependencies�,Failed to install dynamic build dependencieszTrying to build sdist in %szbuild_sdist returned %rzFailure in build_sdistz.tar.gzz*Filename %s doesn't have .tar.gz extension�Output file %s exists�Output file %s does not existzOutput file is a tar filezOutput file is not a tar file)r � pip_install�log�infor�errorZget_requires_for_build_sdist� Exceptionr�shutil�rmtreeZ build_sdist�endswith�pjoinr�tarfileZ is_tarfile��hooksZbuild_sys_requires�envZreqsZtd�filename�path�r%�s6      98" �