U
    ƒIÀdŽ  ã                   @   sd   d Z ddlZddlmZ ddlmZ ddlmZmZ ddl	m
Z
 ddlmZ eeeedœd	d
„ZdS )z4Metadata generation logic for source distributions.
é    N)ÚBuildBackendHookCaller)ÚBuildEnvironment)ÚInstallationSubprocessErrorÚMetadataGenerationFailed)Úrunner_with_spinner_message)ÚTempDirectory)Ú	build_envÚbackendÚdetailsÚreturnc                 C   sŒ   t ddd�}|j}| �b tdƒ}| |¡�D z| |¡}W n. tk
rh } zt|d�|‚W 5 d}~X Y nX W 5 Q R X W 5 Q R X tj ||¡S )zlGenerate metadata using mechanisms described in PEP 517.

    Returns the generated metadata directory.
    zmodern-metadataT)ÚkindÚglobally_managedz#Preparing metadata (pyproject.toml))Úpackage_detailsN)	r   Úpathr   Úsubprocess_runnerÚ prepare_metadata_for_build_wheelr   r   ÚosÚjoin)r   r	   r
   Úmetadata_tmpdirÚmetadata_dirÚrunnerÚdistinfo_dirÚerror© r   ú`/home/sam/Atlas/atlas_env/lib/python3.8/site-packages/pip/_internal/operations/build/metadata.pyÚgenerate_metadata   s    2r   )Ú__doc__r   Úpip._vendor.pyproject_hooksr   Úpip._internal.build_envr   Úpip._internal.exceptionsr   r   Úpip._internal.utils.subprocessr   Úpip._internal.utils.temp_dirr   Ústrr   r   r   r   r   Ú<module>   s     þ