
    ]f@                       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m	Z	m
Z
 d dlZddlmZ ddlmZmZ dd	lmZ d dlmc mZ d d
lmZ ej        Z G d dej                  Zd ej        j        D             ej        z   e_        dS )    )annotationsN)Callable)AnyClassVarcast   )Distribution)SetuptoolsDeprecationWarningSetuptoolsWarning   )	bdist_egg)DistutilsArgErrorc                       e Zd ZU dZded<   ej        j        ddgz   Zej        j        ddgz   Zdd	 fd
d fgZ	ded<    e
e	          Z fdZ fdZd Z fdZed             Zd Z xZS )installz7Use easy_install to install the package, w/dependenciesr	   distribution)old-and-unmanageableNzTry not to use this!)!single-version-externally-managedNz5used by system package builders to create 'flat' eggsr   r   install_egg_infoc                    dS NT selfs    W/var/www/html/software/conda/lib/python3.11/site-packages/setuptools/command/install.py<lambda>zinstall.<lambda>+   s    $     install_scriptsc                    dS r   r   r   s    r   r   zinstall.<lambda>,   s     r   z8ClassVar[list[tuple[str, Callable[[Any], bool] | None]]]new_commandsc                    t          j        ddd           t                                                       d | _        d | _        d S )Nzsetup.py install is deprecated.z
            Please avoid running ``setup.py`` directly.
            Instead, use pypa/build, pypa/installer or other
            standards-based tools.
            zAhttps://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html)see_url)r
   emitsuperinitialize_optionsold_and_unmanageable!single_version_externally_managedr   	__class__s    r   r$   zinstall.initialize_options0   sY    $)-
 X	
 	
 	
 	
 	""$$$$(!15...r   c                    t                                                       | j        r	d| _        d S | j        r| j        s| j        st          d          d S d S d S )NTzAYou must specify --record or --root when building system packages)r#   finalize_optionsrootr&   recordr   r'   s    r   r*   zinstall.finalize_optionsB   s      """9 	59D2223 	9 T[ '   	 	   r   c                |    | j         s| j        rt          j                            |           S d | _        d| _        d S )N )r+   r&   origr   handle_extra_path	path_file
extra_dirsr   s    r   r0   zinstall.handle_extra_pathM   sA    9 	8> 	8<11$777 tr   c                   | j         s| j        r t                                                      S |                     t          j                              s!t                                                       n|                                  d S )N)r%   r&   r#   run_called_from_setupinspectcurrentframedo_egg_installr'   s    r   r4   zinstall.runX   ss    $ 	!(N 	!77;;== &&w';'='=>> 	"GGKKMMMM!!!tr   c                   | Ed}t          j        |           t          j                    dk    rd}t          j        |           dS t	          j        |           }|dd         D ]a}|dd         \  }t	          j        |          }|j                            d	d
          }|dk    r|j	        dk    rO|dk    o
|j	        dk    c S dS )a  
        Attempt to detect whether run() was called from setup() or by another
        command.  If called by setup(), the parent caller will be the
        'run_command' method in 'distutils.dist', and *its* caller will be
        the 'run_commands' method.  If called any other way, the
        immediate caller *might* be 'run_command', but it won't have been
        called by 'run_commands'. Return True in that case or if a call stack
        is unavailable. Return False otherwise.
        Nz4Call stack not available. bdist_* commands may fail.
IronPythonz6For best results, pass -X:Frames to enable call stack.Tr      r   __name__r.   zsetuptools.distrun_commandzdistutils.distrun_commandsF)
r   r"   platformpython_implementationr6   getouterframesgetframeinfo	f_globalsgetfunction)	run_framemsgframesframecallerinfocaller_modules          r   r5   zinstall._called_from_setupe   s     HC"3'''-//<??N!&s+++4'	22AaC[ 		Y 		YEbqb	IV'//D",00R@@M 111dm}6T6T $44X.9XXXXur   c                B   | j                             d          } || j         d| j        | j                  }|                                 d|_        |j                            t          j        d                     | 	                    d           t          t          | j                             d                    }|j        g}t          j        r |                    dt          j                   ||_        |                    d	           d t          _        d S )
Neasy_installx)argsr+   r,   .z*.eggr   r   F)show_deprecation)r   get_command_classr+   r,   ensure_finalizedalways_copy_frompackage_indexscanglobr=   r   bdist_egg_clsget_command_obj
egg_output
setuptoolsbootstrap_install_frominsertrP   r4   )r   rN   cmdr   rP   s        r   r8   zinstall.do_egg_install   s
   (::>JJl;	
 
 
 	" 	ty11222%%%(9(I(I+(V(VWW	$%, 	>KK:<===''',0
)))r   )r<   
__module____qualname____doc____annotations__r/   r   user_optionsboolean_optionsr   dict_ncr$   r*   r0   r4   staticmethodr5   r8   __classcell__)r(   s   @r   r   r      s7        AA<,>	
0 L l2+6 O 
../	--.NL     $|

C6 6 6 6 6$	 	 	 	 		 	 	       \@1 1 1 1 1 1 1r   r   c                :    g | ]}|d          t           j        v|S )r   )r   rg   ).0r_   s     r   
<listcomp>rl      s/       Agk0I0IC0I0I0Ir   )
__future__r   rX   r6   r?   collections.abcr   typingr   r   r   r\   distr	   warningsr
   r   r   rY   distutils.command.installcommandr   r/   distutils.errorsr   _installsub_commandsr   r   r   r   <module>rw      sL   " " " " " "    $ $ $ $ $ $ & & & & & & & & & &           F F F F F F F F 1 1 1 1 1 1 ( ( ( ( ( ( ( ( ( . . . . . . <H1 H1 H1 H1 H1dl H1 H1 H1X <,     r   