U âQab G ã @ sx d Z ddlmZ ddlmZmZ ddlmZ ddlm Z ddl Z ddlZddlZddl Z ddlZddlmZ ddlmZmZmZ dd lmZ dd lmZ ddlmZ zddlmZmZ d d„ ZW n, ek rì ddlm Z mZ dd„ ZY nX dd„ Z!dd„ Z"dd„ Z#G dd„ deƒZ$e% &d '¡ ¡Z(dd„ Z)dd„ Z*dd„ Z+d d!d"œZ,d#d$„ Z-d%d&„ Z.d'd(„ Z/d)d*d+d,gZ0d1d/d0„Z1dS )2z6setuptools.command.bdist_egg Build .egg distributionsé )ÚDistutilsSetupError)Úremove_treeÚmkpath)Úlog)ÚCodeTypeN)Úsix)Úget_build_platformÚDistributionÚensure_directory)Ú EntryPoint)ÚLibrary)ÚCommand)Úget_pathÚget_python_versionc C s t dƒS )NZpurelib)r © r r ú@/usr/lib/python3.8/site-packages/setuptools/command/bdist_egg.pyÚ_get_purelib s r )Úget_python_libr c C s t dƒS )NF)r r r r r r s c C s2 d| krt j | ¡d } | d¡r.| d d… } | S )NÚ.r Úmoduleiúÿÿÿ)ÚosÚpathÚsplitextÚendswith)Úfilenamer r r Ústrip_module# s r c c s6 t | ¡D ]&\}}}| ¡ | ¡ |||fV q dS )zbDo os.walk in a reproducible way, independent of indeterministic filesystem readdir order N)r ÚwalkÚsort)ÚdirÚbaseÚdirsÚfilesr r r Úsorted_walk+ s r" c C s6 t d¡ ¡ }t|dƒ}| || ¡ W 5 Q R X d S )NaR def __bootstrap__(): global __bootstrap__, __loader__, __file__ import sys, pkg_resources, imp __file__ = pkg_resources.resource_filename(__name__, %r) __loader__ = None; del __bootstrap__, __loader__ imp.load_dynamic(__name__,__file__) __bootstrap__() Úw)ÚtextwrapÚdedentÚlstripÚopenÚwrite)ÚresourceÚpyfileZ_stub_templateÚfr r r Ú write_stub5 s r, c @ sŽ e Zd ZdZddddeƒ fdddd gZd ddgZd d„ Zdd„ Zdd„ Z dd„ Z dd„ Zdd„ Zdd„ Z dd„ Zdd„ Zdd „ Zd!d"„ Zd#S )$Ú bdist_eggzcreate an "egg" distribution)z bdist-dir=Úbz1temporary directory for creating the distributionz plat-name=Úpz;platform name to embed in generated filenames (default: %s))úexclude-source-filesNz+remove all .py files from the generated egg)ú keep-tempÚkzPkeep the pseudo-installation tree around after creating the distribution archive)z dist-dir=Údz-directory to put final built distributions in)ú skip-buildNz2skip rebuilding everything (for testing/debugging)r1 r4 r0 c C s. d | _ d | _d| _d | _d| _d | _d | _d S )Nr )Ú bdist_dirÚ plat_nameÚ keep_tempÚdist_dirÚ skip_buildÚ egg_outputÚexclude_source_files©Úselfr r r Úinitialize_optionsZ s zbdist_egg.initialize_optionsc C s¨ | d¡ }| _|j| _| jd kr>| d¡j}tj |d¡| _| jd krPt ƒ | _| dd¡ | jd kr¤td d |j |jtƒ | j ¡ o†| jƒ ¡ }tj | j|d ¡| _d S )NÚegg_infoZbdistZegg)r8 r8 z.egg)Úget_finalized_commandÚei_cmdr? r5 Ú bdist_baser r Újoinr6 r Zset_undefined_optionsr: r Zegg_nameZegg_versionr ÚdistributionÚhas_ext_modulesr8 )r= rA rB Úbasenamer r r Úfinalize_optionsc s$ ýzbdist_egg.finalize_optionsc C sö | j | d¡_tj tj tƒ ¡¡}| jj g }| j_ |D ]ˆ}t |tƒr´t|ƒdkr´tj |d ¡r´tj |d ¡}tj |¡}||ks˜| |tj ¡r´|t|ƒd d … |d f}| jj |¡ q:z"t d| j ¡ | jddd d W 5 || j_ X d S )NÚinstallé r é zinstalling package data to %sÚinstall_data)ÚforceÚroot)r5 r@ Úinstall_libr r ÚnormcaseÚrealpathr rD Ú data_filesÚ isinstanceÚtupleÚlenÚisabsÚ startswithÚsepÚappendr ÚinfoÚcall_command)r= Z site_packagesÚoldÚitemrP Z normalizedr r r Údo_install_data{ s" ÿzbdist_egg.do_install_datac C s | j gS )N)r: r<