Mini Shell

Direktori : /lib64/python3.9/distutils/__pycache__/
Upload File :
Current File : //lib64/python3.9/distutils/__pycache__/spawn.cpython-39.pyc

a

�DOg4�@sndZddlZddlZddlZddlmZmZddlmZddl	m
Z
ejdkrVdada
ddd	�Zd
d
d�ZdS)z�distutils.spawn

Provides the 'spawn()' function, a front-end to various platform-
specific functions for launching another program in a sub-process.
Also provides the 'find_executable()' to search the path for a given
executable name.
�N)�DistutilsPlatformError�DistutilsExecError)�DEBUG)�log�darwin�c

Cs�t|�}t�d�|��|r dS|r@t|d�}|dur@||d<d}tjdkr�tdur�ddlm	}|�
d�pndatr�dd	�t�d
�D�atr�t
j�dt�}dd	�|�d
�D�}tdd�d
dgkr�|dd�d
dgkr�d|tf}	t|	��tt
j|d�}z tj||d�}
|
��|
j}WnLt�yd}z2t�s8|d}td||jdf�|�WYd}~n
d}~00|�r�t�sz|d}td||f��dS)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.  If 'dry_run' is true,
    the command will not actually be run.

    Raise DistutilsExecError if running the program fails in any way; just
    return on success.
    � Nrr)�	sysconfig�MACOSX_DEPLOYMENT_TARGET�cSsg|]}t|��qS���int��.0�xrr�'/usr/lib64/python3.9/distutils/spawn.py�
<listcomp><�zspawn.<locals>.<listcomp>�.cSsg|]}t|��qSrr
rrrrrDr��
�z]$MACOSX_DEPLOYMENT_TARGET mismatch: now "%s" but "%s" during configure;must use 10.3 or later)r
)�envzcommand %r failed: %s���z#command %r failed with exit code %s)�listr�info�join�find_executable�sys�platform�_cfg_target�	distutilsr	Zget_config_var�split�_cfg_target_split�os�environ�getr�dict�
subprocess�Popen�wait�
returncode�OSErrorrr�args)
�cmd�search_path�verbose�dry_run�
executablerr	Z
cur_targetZcur_target_splitZmy_msg�proc�exitcode�excrrr�spawns`
��(��
��
�r7c	Cs�tj�|�\}}tjdkr*|dkr*|d}tj�|�r:|S|dur�tj�dd�}|dur�zt�d�}Wnt	t
fy�tj}Yn0|s�dS|�tj
�}|D]&}tj�||�}tj�|�r�|Sq�dS)z�Tries 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.
    �win32z.exeN�PATH�CS_PATH)r%�path�splitextrr �isfiler&r'�confstr�AttributeError�
ValueError�defpathr#�pathsepr)r3r;�_�ext�paths�p�frrrr_s(
r)rrr)N)�__doc__rr%r)Zdistutils.errorsrrZdistutils.debugrr"rr r!r$r7rrrrr�<module>s

H

Zerion Mini Shell 1.0