o
    Vh                     @  s   d dl mZ d dlZd dl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dZ	dejddddZdgZdS )    )annotationsN   )ProjectBuilder)	importlib)StrPathSubprocessRunner)DefaultIsolatedEnvbuilderr   return"importlib.metadata.PackageMetadatac                 C  sJ   t  }t| |}tj|jW  d    S 1 sw   Y  d S )N)tempfileTemporaryDirectorypathlibPathmetadata_pathr   metadataPathDistribution)r	   tmpdirpath r   ^/var/www/html/construction_image-detection-poc/venv/lib/python3.10/site-packages/build/util.py_project_wheel_metadata   s   
$r   Trunner
source_dirr   isolatedboolr   r   c                C  sv   |r1t  "}tj|| |d}||j ||d t|W  d   S 1 s*w   Y  dS t| |d}t|S )a  
    Return the wheel metadata for a project.

    Uses the ``prepare_metadata_for_build_wheel`` hook if available,
    otherwise ``build_wheel``.

    :param source_dir: Project source directory
    :param isolated: Whether or not to run invoke the backend in the current
                     environment or to create an isolated one and invoke it
                     there.
    :param runner: An alternative runner for backend subprocesses
    r   wheelN)r   r   from_isolated_envinstallbuild_system_requiresget_requires_for_buildr   )r   r   r   envr	   r   r   r   project_wheel_metadata   s    $
r#   )r	   r   r
   r   )T)r   r   r   r   r   r   r
   r   )
__future__r   r   r   pyproject_hooks r   _compatr   _typesr   r   r"   r   r   quiet_subprocess_runnerr#   __all__r   r   r   r   <module>   s   
&