a [dg((@sddlZddlZddlZddlZddlZddlZddlZddlZddlZddl m Z gdZ Gddde Z GdddejjZejdd Zd d Zd d ZddZGdddeZGdddeZeZejZejZejZejZejZeZdS)N)parse_requirements)get_requires_for_build_sdistget_requires_for_build_wheel prepare_metadata_for_build_wheel build_wheel build_sdist __legacy__SetupRequirementsErrorc@seZdZddZdS)r cCs ||_dSN) specifiers)selfr r ?/usr/local/lib/python3.9/site-packages/setuptools/build_meta.py__init__4szSetupRequirementsError.__init__N)__name__ __module__ __qualname__rr r r rr 3sr c@s&eZdZddZeejddZdS) DistributioncCstttt|}t|dSr )listmapstrrr )r r Zspecifier_listr r rfetch_build_eggs9szDistribution.fetch_build_eggsccs2tjj}|tj_zdVW|tj_n |tj_0dSr ) distutilsZcorer)clsorigr r rpatch>s zDistribution.patchN)rrrr classmethod contextlibcontextmanagerrr r r rr8srccs.tj}ddt_zdVW|t_n|t_0dS)NcSsdSr r )attrsr r rWz+no_install_setup_requires..) setuptoolsZ_install_setup_requires)rr r rno_install_setup_requiresNs  r#csfddtDS)Ncs&g|]}tjtj|r|qSr )ospathisdirjoin).0nameZa_dirr r _sz1_get_immediate_subdirectories..)r$listdirr*r r*r_get_immediate_subdirectories^sr-csBfddt|D}z |\}Wnty<tdYn0|S)Nc3s|]}|r|VqdSr endswithr(f extensionr r ds z'_file_with_extension..z[No distribution was found. Ensure that `setup.py` is not empty and that it calls `setup()`.)r$r, ValueError)Z directoryr3Zmatchingfiler r2r_file_with_extensioncs    r7cCs&tj|stdSttdt|S)Nz%from setuptools import setup; setup()open)r$r%existsioStringIOgetattrtokenizer8 setup_scriptr r r_open_setup_scriptqs  r@c@s`eZdZddZddZdddZdd d Zdd d Zdd dZddZ dddZ dddZ dS)_BuildMetaBackendcCs|pi}|dg|S)N--global-option) setdefaultr config_settingsr r r _fix_config{s z_BuildMetaBackend._fix_configc Cs||}tjdddg|dt_z4t|Wdn1sP0YWn.ty}z||j7}WYd}~n d}~00|S)NZegg_inforB)rFsysargvrr run_setupr r )r rE requirementser r r_get_build_requiress  * z%_BuildMetaBackend._get_build_requiressetup.pycCsX|}d}t| }|dd}Wdn1s60Ytt||dtdS)N__main__z\r\nz\nexec)r@readreplacerPcompilelocals)r r?__file__rr1coder r rrJs  .z_BuildMetaBackend.run_setupNcCs||}|j|dgdS)NZwheelrKrFrMrDr r rrs z._BuildMetaBackend.get_requires_for_build_wheelcCs||}|j|gdS)NrWrXrDr r rrs z._BuildMetaBackend.get_requires_for_build_sdistcCstjdddd|gt_t|Wdn1s>0Y|}ddt|D}t|dkrtt|dkrtj |t|d}qLqqL||krt tj ||d|t j |dd|dS) NrGZ dist_infoz --egg-basecSsg|]}|dr|qS)z .dist-infor.r0r r rr+s zF_BuildMetaBackend.prepare_metadata_for_build_wheel..rT) ignore_errors) rHrIr#rJr$r,lenr-r%r'shutilmovermtree)r metadata_directoryrEZdist_info_directoryZ dist_infosr r rrs. & z2_BuildMetaBackend.prepare_metadata_for_build_wheelc Cs||}tj|}tj|ddtj|d}tjdd|d|g|dt_t | Wdn1sz0Yt ||}tj ||}tj |rt|ttj |||Wdn1s0Y|S)NT)exist_ok)dirrGz --dist-dirrB)rFr$r%abspathmakedirstempfileTemporaryDirectoryrHrIr#rJr7r'r9removerename)r Z setup_commandZresult_extensionZresult_directoryrEZ tmp_dist_dirZresult_basename result_pathr r r_build_with_temp_dirs&  &  4z&_BuildMetaBackend._build_with_temp_dircCs|dgd||S)NZ bdist_wheelz.whlrh)r Zwheel_directoryrEr^r r rrs z_BuildMetaBackend.build_wheelcCs|gdd||S)N)Zsdistz --formatsgztarz.tar.gzri)r Zsdist_directoryrEr r rrs z_BuildMetaBackend.build_sdist)rN)N)N)N)NN)N) rrrrFrMrJrrrrhrrr r r rrAys   " rAcseZdZdfdd ZZS)_BuildMetaLegacyBackendrNc sttj}tjtj|}|tjvr6tjd|tjd}|tjd<z.tt |j |dW|tjdd<|tjd<n|tjdd<|tjd<0dS)Nrr>) rrHr%r$dirnamerainsertrIsuperrkrJ)r r?Zsys_pathZ script_dirZ sys_argv_0 __class__r rrJs      z!_BuildMetaLegacyBackend.run_setup)rN)rrrrJ __classcell__r r rorrks rk)r:r$rHr=r[rrcr"rZ pkg_resourcesr__all__ BaseExceptionr distrrr#r-r7r@objectrArkZ_BACKENDrrrrrrr r r rs4   m)