
    Ji{                    *   S r SSKJr  SSKrSSKrSSKrSSKrSSKrSSKrSSK	J
r
Jr  SSKJrJrJr  SSKJr  SSKJr  SS	KJr  \(       a  SS
KJr  \" S\
S9rS rSS jr\SS j5       r\SS j5       rSS jr   S         SS jjrSSS jjrg)zdistutils.spawn

Provides the 'spawn()' function, a front-end to various platform-
specific functions for launching another program in a sub-process.
    )annotationsN)MappingMutableSequence)TYPE_CHECKINGTypeVaroverload   )logDEBUG)DistutilsExecError)_ENV	_MappingT)boundc                &    [         (       a  U $ U S   $ )z=
Render a subprocess command differently depending on DEBUG.
r   r   )cmds    ]/var/www/html/dynamic-report/venv/lib/python3.13/site-packages/setuptools/_distutils/spawn.py_debugr      s     %3#SV#    c                    [         R                  " 5       S:w  a  U $ SSKJnJn  U" 5       nU(       a  X0O0 n0 [        U 5      EUE$ )NDarwinr	   )MACOSX_VERSION_VARget_macosx_target_ver)platformsystemutilr   r   _resolve)envr   r   
target_verupdates        r   _inject_macos_verr!   $   sB    H$
?&(J1; -F&hsm&v&&r   c                    g N r   s    r   r   r   /   s    -0r   c                    g r#   r$   r%   s    r   r   r   1   s    +.r   c                ,    U c  [         R                  $ U $ r#   )osenvironr%   s    r   r   r   3   s    2::-#-r   c                   [         R                  " [        R                  " U 5      5        U(       a   [        R
                  " U S   5      nUb  X@S'    [        R                  " U [        U5      S9  g! [         a.  n[        S[        U 5      < SUR                  S    35      UeSnAf[        R                   a+  n[        S[        U 5      < SUR                   35      UeSnAff = f)a&  Run another program, specified as a command list 'cmd', in a new process.

'cmd' is just the argument list for the new process, ie.
cmd[0] is the program to run and cmd[1:] are the rest of its arguments.
There is no way to run a program with a name different from that of its
executable.

If 'search_path' is true (the default), the system's executable
search path will be used to find the program; otherwise, cmd[0]
must be the exact path to the executable.

Raise DistutilsExecError if running the program fails in any way; just
return on success.
r   Nr%   zcommand z	 failed: z failed with exit code )r
   info
subprocesslist2cmdlineshutilwhich
check_callr!   OSErrorr   r   argsCalledProcessError
returncode)r   search_pathverboser   
executableexcerrs          r   spawnr;   7   s    ( HHZ$$S)*\\#a&)
!F	c'8'=>  vc{oYsxx|n=
	 ((  vc{o%<S^^<LM
	s$   A2 2
C'<)B%%C'<&C""C'c                   [         R                  " S[        SS9  [        R                  R                  U 5      u  p#[        R                  S:X  a  US:w  a  U S-   n [        R                  R                  U 5      (       a  U $ Uc:  [        R                  R                  SS5      nUc   [        R                  " S5      nU(       d  gUR                  [        R                   5      nU HJ  n[        R                  R#                  XP5      n[        R                  R                  U5      (       d  MH  Us  $    g! [        [        4 a    [        R                  n Nf = f)	zTries to find 'executable' in the directories listed in 'path'.

A string listing directories separated by 'os.pathsep'; defaults to
os.environ['PATH'].  Returns the complete filename or None if not found.
z+Use shutil.which instead of find_executable   )
stacklevelwin32z.exeNPATHCS_PATH)warningswarnDeprecationWarningr(   pathsplitextsysr   isfiler)   getconfstrAttributeError
ValueErrordefpathsplitpathsepjoin)r8   rE   _extpathspfs          r   find_executablerV   ^   s	    MM57IVW WWj)FAcVm&(
	ww~~j!!|zz~~fd+<"zz), JJrzz"EGGLL'77>>!H	 
  #J/ "zz"s   (D6 6 EE)r   _MappingT | Nonereturnz'_MappingT | dict[str, str | int] | None)r   NonerX   zos._Environ[str])r   r   rX   r   )r   rW   rX   z_MappingT | os._Environ[str])TFN)
r   z/MutableSequence[bytes | str | os.PathLike[str]]r6   boolr7   rZ   r   z_ENV | NonerX   rY   r#   )r8   strrE   
str | NonerX   r\   )__doc__
__future__r   r(   r   r/   r-   rG   rB   collections.abcr   r   typingr   r   r   _logr
   debugr   errorsr   r   r   r   r!   r   r;   rV   r$   r   r   <module>rd      s    # 	    
  4 3 3   & Kw/	$' 
 0 
 0	 . 
 .. 	$	8$$ $ 
	$
 
$N$r   