%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /snap/core20/current/usr/lib/python3.8/__pycache__/
Upload File :
Create Path :
Current File : //snap/core20/current/usr/lib/python3.8/__pycache__/sysconfig.cpython-38.pyc

U

k�]e�a�
@sdZddlZddlZddlmZmZdddddd	d
ddd
dgZdhZddddddddd�ddddddddd�ddddddd dd�d!d!d"d"d#d$d%d&�d'd'd(d(d)d*d%d&�d+d+d,d,d-d*d%d&�d.�Zd&Z	ej
��dZd/ej
dd0�Zd1ej
dd0�Zej�ej�Zej�ej�Zej�ej�Zej�ej�ZdadZd2d3�Zej�rVej�eej��Znee� ��Zej!d4k�r�e�"��#d5��r�eej�$eee��Zd6ej%k�r�eej%d6�Zd7d8�Z&e'ed9d�Z(ej!d4k�r�d:d;�Z)e)e�Ze)e(�Z(did=d>�Z*e*d?�Z+e+�r d@D]Z,dAee,dB<dCee,dD<�qdEdF�Z-dGdH�Z.dIdJ�Z/dKdL�Z0dMdN�Z1djdOdP�Z2dQd�Z3dRdS�Z4dTdU�Z5dVdW�Z6dXdY�Z7dkdZd�Z8d[d�Z9d\d
�Z:d]d	�Z;e0�dd?fd^d
�Z<e0�dd?fd_d�Z=d`d�Z>dad�Z?dbd�Z@dcd�ZAddde�ZBdfdg�ZCeDdhk�reC�dS)lz-Access to Python's configuration information.�N)�pardir�realpath�get_config_h_filename�get_config_var�get_config_vars�get_makefile_filename�get_path�get_path_names�	get_paths�get_platform�get_python_version�get_scheme_names�parse_config_hZMACOSX_DEPLOYMENT_TARGETz-{installed_base}/lib/python{py_version_short}z'{platbase}/lib/python{py_version_short}z1{base}/lib/python{py_version_short}/site-packagesz5{platbase}/lib/python{py_version_short}/site-packagesz;{installed_base}/include/python{py_version_short}{abiflags}z?{installed_platbase}/include/python{py_version_short}{abiflags}z
{base}/binz{base})�stdlib�
platstdlib�purelib�platlib�include�platinclude�scripts�dataz{installed_base}/lib/pythonz{base}/lib/pythonz{installed_base}/include/pythonz{installed_base}/Libz
{base}/Libz{base}/Lib/site-packagesz{installed_base}/Includez{base}/Scriptsz#{userbase}/Python{py_version_nodot}z1{userbase}/Python{py_version_nodot}/site-packagesz+{userbase}/Python{py_version_nodot}/Includez+{userbase}/Python{py_version_nodot}/Scriptsz
{userbase})rrrrrrrz'{userbase}/lib/python{py_version_short}z5{userbase}/lib/python{py_version_short}/site-packagesz+{userbase}/include/python{py_version_short}z{userbase}/binz{userbase}/lib/pythonz#{userbase}/lib/python/site-packagesz{userbase}/include)�posix_prefix�
posix_home�ntZnt_userZ
posix_userZosx_framework_user�%d.%d�z%d%dcCs(z
t|�WStk
r"|YSXdS�N)r�OSError)�path�r�/usr/lib/python3.8/sysconfig.py�_safe_realpathis
r!r)z\pcbuild\win32z\pcbuild\amd64Z_PYTHON_PROJECT_BASEcCs,dD]"}tj�tj�|d|��rdSqdS)N)ZSetupzSetup.localZModulesTF)�osr�isfile�join)�d�fnrrr �_is_python_source_dir~sr'Z_homecCs0|r,tj�|��tj�tj�td���r,tS|S)NZPCbuild)r"r�normcase�
startswithr$�_PREFIX)r%rrr �_fix_pcbuild�s
�r+FcCs|rtrtt�Stt�Sr)�	_sys_homer'�
_PROJECT_BASE)Z
check_homerrr �is_python_build�sr.T)rrz{srcdir}/Includerz{projectbase}/.rc
Csnz|jf|�WStk
rhz|jftj�WYStk
rb}ztd|�d�W5d}~XYnXYnXdS)Nz{%s})�format�KeyErrorr"�environ�AttributeError)�sZ
local_vars�varrrr �_subst_vars�sr5cCs0|��}|��D]\}}||kr"q|||<qdSr)�keys�items)Ztarget_dictZ
other_dictZtarget_keys�key�valuerrr �_extend_dict�s
r:cCsbi}|dkri}t|t��t|��D]4\}}tjdkrFtj�|�}tj�t	||��||<q(|S)N)�posixr)
r:r�_INSTALL_SCHEMESr7r"�namer�
expanduser�normpathr5)�scheme�vars�resr8r9rrr �_expand_vars�s
rCcCstjdkrdStjS)Nr;r)r"r=rrrr �_get_default_scheme�s
rDcCsztj�dd�}|r|Sdd�}tjdkrBtj�d�p6d}||d�Stjdkrptjrp|dd	tjd
tjdd��S|dd�S)
NZPYTHONUSERBASEcWstj�tjj|��Sr)r"rr>r$)�argsrrr �joinuser�sz_getuserbase.<locals>.joinuserrZAPPDATA�~ZPython�darwinZLibraryrrz.local)r"r1�getr=�sys�platform�
_framework�version_info)Zenv_baserF�baserrr �_getuserbase�s


�rOc	Cs`ddl}|�d�}|�d�}|�d�}|dkr2i}i}i}t|dd��}|��}	W5QRX|	D]�}
|
�d�s^|
��d	krzq^|�|
�}|r^|�d
d�\}}
|
��}
|
�dd	�}d
|kr�|
||<q^z|t	kr�t
�t|
�}
Wn$t
k
r�|
�dd
�||<Yq^X|
||<q^t|�
��}d}t|�dk�r&t|�D�]�}||}|�|�}|�|�}|�rv|�rv|��|��k�rp|n|}n|�r�|n|}|dk	�r|�d
�}d}||k�r�t||�}n�||k�r�d}nx|tjk�r�tj|}n`||k�r0|�d��r
|dd�|k�r
d	}n$d||k�rd}nt|d|�}nd	||<}|�r||��d�}|d|���||}d
|k�r~|||<n�z|t	k�r�t
�t|�}Wn"t
k
�r�|��||<Yn
X|||<|�|�|�d��r|dd�|k�r|dd�}||k�r|||<n|||<|�|��q,�q|��D]"\}}
t|
t��r.|
��||<�q.|�|�|S)z�Parse a Makefile-style file.

    A dictionary containing name/value pairs is returned.  If an
    optional dictionary is passed in as the second argument, it is
    used instead of a new dictionary.
    rNz"([a-zA-Z][a-zA-Z0-9_]+)\s*=\s*(.*)z\$\(([A-Za-z][A-Za-z0-9_]*)\)z\${([A-Za-z][A-Za-z0-9_]*)}�surrogateescape)�errors�#��rz$$�$)ZCFLAGSZLDFLAGSZCPPFLAGSTFZPY_�)�re�compile�open�	readlinesr)�strip�match�group�replace�_ALWAYS_STR�
ValueError�int�listr6�len�tuple�search�start�strr"r1�end�remover7�
isinstance�update)�filenamerArWZ_variable_rxZ_findvar1_rxZ_findvar2_rxZdoneZnotdone�f�lines�line�m�n�vZtmpvZ	variablesZrenamed_variablesr=r9Zm1Zm2�found�itemZafter�krrr �_parse_makefile�s�	












�



�


rvcCsdtrtj�tptd�Sttd�r0dttj	f}nd}ttj
d�rP|dtj
j7}tj�td�|d�S)z Return the path of the Makefile.ZMakefile�abiflagszconfig-%s%sZconfig�
_multiarchz-%sr)
�
_PYTHON_BUILDr"rr$r,r-�hasattrrJ�_PY_VERSION_SHORTrw�implementationrxr)Zconfig_dir_namerrr rWs
c	Cs$tj�ddjtjttjdd�d��S)NZ_PYTHON_SYSCONFIGDATA_NAMEz _sysconfigdata_{abi}_{multiarch}rxrS)Zabi�	multiarch)r"r1rIr/rJrw�getattrr|rrrr �_get_sysconfigdata_nameds��rc
Cs�ddl}i}t�}zt||�WnJtk
rj}z,d|}t|d�rR|d|j}t|��W5d}~XYnXt�}z"t|��}t||�W5QRXWnJtk
r�}z,d|}t|d�r�|d|j}t|��W5d}~XYnXt	r�|d|d<t
�}dtjk�r$ddl
}|�|�}	||	_|	tj|<d	t�tf}
ttd
��rF|
d7}
tj|
dd
�tj�|
|d�}t|ddd��(}|�d�|�d�|j||d�W5QRXtdddd��}|�|
�W5QRXdS)z;Generate the Python module containing build-time variables.rNz.invalid Python installation: unable to open %s�strerrorz (%s)ZLDSHAREDZ	BLDSHAREDrHzbuild/lib.%s-%sZgettotalrefcountz-pydebugT)�exist_okz.py�w�utf8)�encodingzB# system configuration generated and used by the sysconfig module
zbuild_time_vars = )�streamzpybuilddir.txt)�pprintrrvrrzr�rrYrryrrJrK�types�
ModuleType�build_time_vars�modulesrr{r"�makedirsrr$�write)r�rAZmakefile�e�msgZconfig_hrmr=r��moduleZ
pybuilddirZdestfilerrr �_generate_posix_varslsL







r�cCs0t�}t|t�t�dgd�}|j}|�|�dS)z7Initialize the module as appropriate for POSIX systems.r�rN)r�
__import__�globals�localsr�rk)rAr=Z_tempr�rrr �_init_posix�sr�cCsfddl}td�|d<td�|d<td�|d<|��d|d	<d
|d<t|d<tj�ttj	��|d
<dS)z+Initialize the module as appropriate for NTrNrZLIBDESTrZ
BINLIBDESTrZ	INCLUDEPY�
EXT_SUFFIXz.exeZEXEZVERSIONZBINDIR)
�_impr�extension_suffixes�_PY_VERSION_SHORT_NO_DOTr"r�dirnamer!rJ�
executable)rAr�rrr �_init_non_posix�sr�c	Cs�|dkri}ddl}|�d�}|�d�}|��}|s6q�|�|�}|r�|�dd�\}}z|tkrbt�t|�}Wntk
r�YnX|||<q(|�|�}|r(d||�d�<q(|S)z�Parse a config.h-style file.

    A dictionary containing name/value pairs is returned.  If an
    optional dictionary is passed in as the second argument, it is
    used instead of a new dictionary.
    Nrz"#define ([A-Z][A-Za-z0-9_]+) (.*)
z&/[*] #undef ([A-Z][A-Za-z0-9_]+) [*]/
rTr)rWrX�readliner\r]r_r`ra)	�fprArWZ	define_rxZundef_rxrorprqrrrrr r�s,




cCsBtr,tjdkr"tj�tptd�}q4tp(t}ntd�}tj�|d�S)zReturn the path of pyconfig.h.rZPCrz
pyconfig.h)ryr"r=rr$r,r-r)Zinc_dirrrr r�s

cCsttt��S)z,Return a tuple containing the schemes names.)rd�sortedr<rrrr r
�scCstS)z*Return a tuple containing the paths names.)�_SCHEME_KEYSrrrr r	�scCs|rt||�St|SdS)z�Return a mapping containing an install scheme.

    ``scheme`` is the install scheme name. If not provided, it will
    return the default scheme for the current platform.
    N)rCr<)r@rA�expandrrr r
�s
cCst|||�|S)z[Return a path corresponding to the scheme.

    ``scheme`` is the install scheme name.
    )r
)r=r@rAr�rrr rscGs�tdk�rhiattd<ttd<ttd<ttd<ttd<ttd<ttd<ttd	<ttd
<ttd<zt	j
td<Wntk
r�d
td<YnXtj
dkr�tt�tj
dkr�tt�t�d�}|dk	r�|td<t�td<td�}|r�d|td<nd
td<t�dt�}tj
dk�r>t�r0tj�t��}tj�||�}ntj�t��}t|�td<t	jdk�rhddl}|�t�|�r�g}|D]}|�t�|���qv|StSdS)anWith no arguments, return a dictionary of all configuration
    variables relevant for the current platform.

    On Unix, this means every variable defined in Python's installed Makefile;
    On Windows it's a much smaller set.

    With arguments, return a list of values that result from looking up
    each argument in the configuration variable dictionary.
    N�prefix�exec_prefixZ
py_versionZpy_version_shortZpy_version_nodotZinstalled_baserNZinstalled_platbaseZplatbaseZprojectbaserwrSrr;r��SOZuserbaseZ	MULTIARCH�/Zmultiarchsubdir�srcdirrHr)�_CONFIG_VARSr*�_EXEC_PREFIX�_PY_VERSIONr{r��_BASE_PREFIX�_BASE_EXEC_PREFIXr-rJrwr2r"r=r�r�rIrOrryrr�rr$r!rK�_osx_supportZcustomize_config_vars�append)rEr�r}r�rNr�Zvalsr=rrr rsX





cCs*|dkrddl}|�dtd�t��|�S)z�Return the value of a single variable using the dictionary returned by
    'get_config_vars()'.

    Equivalent to get_config_vars().get(name)
    r�rNz SO is deprecated, use EXT_SUFFIXr)�warnings�warn�DeprecationWarningrrI)r=r�rrr rcsc
Cs�tjdkrFdtj��krdSdtj��kr.dSdtj��kr@dStjStjdksZttd	�s`tjSd
tjkrttjd
St��\}}}}}|���	dd�}|�	d
d�}|�	dd�}|dd�dkr�d||fS|dd�dk�r,|ddk�r�d}dt
|d�d|dd�f}ddd�}|d|tj7}n�|dd�dk�rLd |||fS|dd!�d"k�r�d"}ddl}|�
d#�}|�|�}|�r�|��}n2|dd!�d$k�r�ddl}	|	�t�|||�\}}}d%|||fS)&a�Return a string that identifies the current platform.

    This is used mainly to distinguish platform-specific build directories and
    platform-specific built distributions.  Typically includes the OS name and
    version and the architecture (as supplied by 'os.uname()'), although the
    exact information included depends on the OS; on Linux, the kernel version
    isn't particularly important.

    Examples of returned values:
       linux-i586
       linux-alpha (?)
       solaris-2.6-sun4u

    Windows will return one of:
       win-amd64 (64bit Windows on AMD64 (aka x86_64, Intel64, EM64T, etc)
       win32 (all others - specifically, sys.platform is returned)

    For other non-POSIX platforms, currently just returns 'sys.platform'.

    rZamd64z	win-amd64z(arm)z	win-arm32z(arm64)z	win-arm64r;�unameZ_PYTHON_HOST_PLATFORMr�rS� �_�-N�Zlinuxz%s-%sZsunosr�5Zsolarisz%d.%srVrZ32bitZ64bit)i���l����z.%sZaixz%s-%s.%s��cygwinz[\d.]+rHz%s-%s-%s)r"r=rJ�version�lowerrKrzr1r�r^ra�maxsizerWrXr\r]r�Zget_platform_osxr)
ZosnameZhost�releaser��machineZbitnessrWZrel_rerpr�rrr rosT


 



�
cCstSr)r{rrrr r�scCsFtt|����D]0\}\}}|dkr0td|�td||f�qdS)Nrz%s: z
	%s = "%s")�	enumerater�r7�print)�titler�indexr8r9rrr �_print_dict�sr�cCsfdtjkrt�dStdt��tdt��tdt��t�tdt��t�tdt	��dS)z*Display all information sysconfig detains.z--generate-posix-varsNzPlatform: "%s"zPython version: "%s"z!Current installation scheme: "%s"ZPathsZ	Variables)
rJ�argvr�r�rrrDr�r
rrrrr �_main�s
r��__main__)F)N)N)E�__doc__r"rJ�os.pathrr�__all__r_r<r�r��splitr�rMr{r�rr?r�r*�base_prefixr�r�r��base_exec_prefixr�r�Z
_USER_BASEr!r�r�r-�getcwdr=r��endswithr$r1r'r~r,r+r.ryr@r5r:rCrDrOrvrrr�r�r�rrr
r	r
rrrrrr�r��__name__rrrr �<module>s����
���
�
��?�
	
	

?
"SP


Zerion Mini Shell 1.0