3

g                 @   s^   d dl Z d dlZd dlmZ d dlmZ erHd dlmZmZ d dl	m
Z
 e jeZdd ZdS )    N)runner_with_spinner_message)MYPY_CHECK_RUNNING)ListOptional)Pep517HookCallerc             C   s   |dk	st |r$tjd| f  dS yBtjd| tdj| }|j| |j||d}W dQ R X W n  tk
r   tjd|  dS X t	j
j||S )zBuild one InstallRequirement using the PEP 517 build process.

    Returns path to wheel if successfully built. Otherwise, returns None.
    NzFCannot build wheel for %s using PEP 517 when --build-option is presentzDestination directory: %szBuilding wheel for {} (PEP 517))metadata_directoryzFailed building wheel for %s)AssertionErrorloggererrordebugr   formatsubprocess_runnerbuild_wheel	Exceptionospathjoin)namebackendr   build_optionstempdrunner
wheel_name r   H/tmp/pip-unpacked-wheel-v59g9nu1/pip/_internal/operations/build/wheel.pybuild_wheel_pep517   s"    
r   )loggingr   pip._internal.utils.subprocessr   pip._internal.utils.typingr   typingr   r   pip._vendor.pep517.wrappersr   	getLogger__name__r	   r   r   r   r   r   <module>   s   
