%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /snap/core18/current/usr/lib/python3.6/__pycache__/
Upload File :
Create Path :
Current File : //snap/core18/current/usr/lib/python3.6/__pycache__/sysconfig.cpython-36.pyc

3

/�$h�a�
@sdZddlZddlZddlmZmZdddddd	d
ddd
dgZddddddddd�ddddddddd�ddddddddd�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-�ZdnZej	j
�dZd5ejdd6�Z
d7ejdd6�Zejjej�Zejjej�Zejjej�Zejjej�ZdadZd8d9�Zej�rPejjeej��Zneej��Zej d:k�r�ej!�j"do��r�eejj#eee��Zd=ej$k�r�eej$d=�Zd>d?�Z%e&ed@d�Z'e'�r�ej d:k�r�e'j!�j"dp��r�ejjejje'��Z'dqdBdC�Z(e(dD�Z)e)�r0x&drD]Z*dGee*d2<dHee*dI<�qWdJdK�Z+dLdM�Z,dNdO�Z-dPdQ�Z.dRdS�Z/dsdTdU�Z0dVd�Z1dWdX�Z2dYdZ�Z3d[d\�Z4d]d^�Z5dtd_d�Z6d`d�Z7dad
�Z8dbd	�Z9e.�ddDfdcd
�Z:e.�ddDfddd�Z;ded�Z<dfd�Z=dgd�Z>dhd�Z?didj�Z@dkdl�ZAeBdmk�reA�dS)uz-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_hz-{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_userrrrrrrrz%d.%d�z%d%dcCs"yt|�Stk
r|SXdS)N)r�OSError)�path�r�/usr/lib/python3.6/sysconfig.py�_safe_realpathcsrr�\pcbuild\win32�\pcbuild\amd64Z_PYTHON_PROJECT_BASEcCs.x(dD] }tjjtjj|d|��rdSqWdS)N�
Setup.dist�Setup.localZModulesTF)r"r#)�osr�isfile�join)�d�fnrrr�_is_python_source_dirxs
r)Z_homeFcCs|rtrtt�Stt�S)N)�	_sys_homer)�
_PROJECT_BASE)Z
check_homerrr�is_python_build�sr,Trrz{srcdir}/Includez{projectbase}/.rcCsdy|jf|�Stk
r^y|jftj�Stk
rX}ztd|��WYdd}~XnXYnXdS)Nz{%s})�format�KeyErrorr$�environ�AttributeError)�sZ
local_varsZvarrrr�_subst_vars�sr2cCs4|j�}x&|j�D]\}}||kr$q|||<qWdS)N)�keys�items)Ztarget_dictZ
other_dictZtarget_keys�key�valuerrr�_extend_dict�s
r7cCsfi}|dkri}t|t��xDt|j�D]4\}}tjdkrHtjj|�}tjjt	||��||<q*W|S)N�posixr)r8r)
r7r�_INSTALL_SCHEMESr4r$�namer�
expanduser�normpathr2)�scheme�varsZresr5r6rrr�_expand_vars�s
r?cCstjdkrdStjS)Nr8r)r$r:rrrr�_get_default_scheme�s
r@cCs�tjjdd�}dd�}tjdkrBtjjd�p.d}|r8|S||d�Stjdkr|td	�}|r||r`|S|dd
|dtjdd��S|r�|S|dd
�SdS)NZPYTHONUSERBASEcWstjjtjj|��S)N)r$rr;r&)�argsrrr�joinuser�sz_getuserbase.<locals>.joinuserrZAPPDATA�~ZPython�darwinZPYTHONFRAMEWORKZLibraryz%d.%drz.local)r$r/�getr:�sys�platformr�version_info)Zenv_baserB�baseZ	frameworkrrr�_getuserbase�s"



rJcCsZddl}|jd�}|jd�}|jd�}|dkr2i}i}i}t|dd��}|j�}	WdQRXx�|	D]�}
|
jd�s`|
j�d	kr|q`|j|
�}|r`|jd
d�\}}
|
j�}
|
jdd	�}d
|kr�|
||<q`yt	|
�}
Wn$t
k
r�|
jdd
�||<Yq`X|
||<q`Wt|j��}d}�x
t
|�dk�r�x�t|�D�]�}||}|j|�}|j|�}|�rv|�rv|j�|j�k�rp|n|}n|�r�|n|}|dk	�r�|jd
�}d}||k�r�t||�}n�||k�r�d}nx|tjk�r�tj|}n`||k�r0|jd��r
|dd�|k�r
d	}n$d||k�rd}nt|d|�}nd	||<}|�r||j�d�}|d|j��||}d
|k�r~|||<n~yt	|�}Wn"t
k
�r�|j�||<Yn
X|||<|j|�|jd��r|dd�|k�r|dd�}||k�r|||<n|||<|j|��q,W�qWx.|j�D]"\}}
t|
t��r&|
j�||<�q&W|j|�|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$$�$�CFLAGS�LDFLAGS�CPPFLAGSTFZPY_�)rQrRrS)�re�compile�open�	readlines�
startswith�strip�match�group�replace�int�
ValueError�listr3�len�tuple�search�start�strr$r/�end�remover4�
isinstance�update)�filenamer>rUZ_variable_rxZ_findvar1_rxZ_findvar2_rxZdoneZnotdone�f�lines�line�m�n�vZtmpvZ	variablesZrenamed_variablesr:r6Zm1Zm2�found�itemZafter�krrr�_parse_makefile�s�	


















rtcCsdtrtjjtptd�Sttd�r0dttj	f}nd}ttj
d�rP|dtj
j7}tjjtd�|d�S)z Return the path of the Makefile.ZMakefile�abiflagszconfig-%s%sZconfig�
_multiarchz-%sr)
�
_PYTHON_BUILDr$rr&r*r+�hasattrrF�_PY_VERSION_SHORTru�implementationrvr)Zconfig_dir_namerrrrLs
c	Cs(tjjddjtjtjttjdd�d��S)NZ_PYTHON_SYSCONFIGDATA_NAMEz+_sysconfigdata_{abi}_{platform}_{multiarch}rvrN)ZabirG�	multiarch)	r$r/rEr-rFrurG�getattrrzrrrr�_get_sysconfigdata_nameYs
r}c,Cs�ddl}i}t�}yt||�WnJtk
rj}z.d|}t|d�rR|d|j}t|��WYdd}~XnXt�}y"t|��}t||�WdQRXWnJtk
r�}z.d|}t|d�r�|d|j}t|��WYdd}~XnXt	r�|d|d<t
�}dtjk�r$ddl
}|j|�}	||	_|	tj|<d	t�tf}
ttd
��rF|
d7}
tj|
dd
�tjj|
|d�}t|ddd��(}|jd�|jd�|j||d�WdQRXtdddd��}|j|
�WdQRXdS)z;Generate the Python module containing build-time variables.rNz.invalid Python installation: unable to open %s�strerrorz (%s)ZLDSHAREDZ	BLDSHAREDrDzbuild/lib.%s-%sZgettotalrefcountz-pydebugT)�exist_okz.py�w�utf8)�encodingzB# system configuration generated and used by the sysconfig module
zbuild_time_vars = )�streamzpybuilddir.txt�ascii)�pprintrrtrrxr~rrWrrwr}rFrG�types�
ModuleType�build_time_vars�modulesrryr$�makedirsrr&�write)r�r>Zmakefile�e�msgZconfig_hrkr:r��moduleZ
pybuilddirZdestfilerrr�_generate_posix_varsbsL







r�cCs0t�}t|t�t�dgd�}|j}|j|�dS)z7Initialize the module as appropriate for POSIX systems.r�rN)r}�
__import__�globals�localsr�ri)r>r:Z_tempr�rrr�_init_posix�sr�cCsVtd�|d<td�|d<td�|d<d|d<d	|d
<t|d<tjjttj��|d<d
S)z+Initialize the module as appropriate for NTrZLIBDESTrZ
BINLIBDESTrZ	INCLUDEPYz.pyd�
EXT_SUFFIXz.exeZEXEZVERSIONZBINDIRN)r�_PY_VERSION_SHORT_NO_DOTr$r�dirnamerrF�
executable)r>rrr�_init_non_posix�sr�c	Cs�|dkri}ddl}|jd�}|jd�}xx|j�}|s8P|j|�}|r�|jdd�\}}yt|�}Wntk
rvYnX|||<q*|j|�}|r*d||jd�<q*W|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_]+) [*]/
rOr)rUrV�readliner[r\r^r_)	�fpr>rUZ	define_rxZundef_rxrmrnrorprrrr�s*




cCsBtr,tjdkr"tjjtptd�}q4tp(t}ntd�}tjj|d�S)zReturn the path of pyconfig.h.rZPCrz
pyconfig.h)rwr$r:rr&r*r+r)Zinc_dirrrrr�s

cCsttt��S)z,Return a tuple containing the schemes names.)rb�sortedr9rrrrr
�scCstS)z*Return a tuple containing the paths names.)�_SCHEME_KEYSrrrrr	�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)r?r9)r=r>�expandrrrr
�s
cCst|||�|S)z[Return a path corresponding to the scheme.

    ``scheme`` is the install scheme name.
    )r
)r:r=r>r�rrrr�scGs�tdk�rhiattd<ttd<ttd<ttd<ttd<ttd<ttd<ttd	<ttd
<ttd<yt	j
td<Wntk
r�d
td<YnXtj
dkr�tt�tj
dkr�tt�tjd�}|dk	r�|td<t�td<td�}|r�d|td<nd
td<tjdt�}tj
dk�r>t�r0tjjt��}tjj||�}ntjjt��}t|�td<t	jdk�rhddl}|jt�|�r�g}x|D]}|jtj|���qxW|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_baserIZinstalled_platbaseZplatbaseZprojectbaserurNrr8r��SOZuserbaseZ	MULTIARCH�/Zmultiarchsubdir�srcdirrDr)�_CONFIG_VARS�_PREFIX�_EXEC_PREFIX�_PY_VERSIONryr��_BASE_PREFIX�_BASE_EXEC_PREFIXr+rFrur0r$r:r�r�rErJrrwrr�rr&rrG�_osx_supportZcustomize_config_vars�append)rAr�r{r�rIr�Zvalsr:rrrrsX






cCs*|dkrddl}|jdtd�t�j|�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�DeprecationWarningrrE)r:r�rrrrVscCstjdkrnd}tjj|�}|d)kr(tjStjjd|�}tj|t|�|�j�}|dkr\dS|dkrhdStjStjd	ks�ttd
�r�tjSdtj	kr�tj	dStj
�\}}}}}|j�jdd
�}|jdd�}|jdd�}|dd�dkr�d||fS|dd�dk�rV|ddk�rd}dt|d�d|dd�f}ddd�}	|d|	tj
7}n�|dd �d!k�rtd||fS|dd�d"k�r�d#|||fS|dd$�d%k�r�d%}ddl}
|
jd&�}|j|�}|�r|j�}n2|dd$�d'k�rddl}
|
jt�|||�\}}}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; eg. for IRIX
    the architecture isn't particularly important (IRIX only runs on SGI
    hardware), but for Linux the kernel version isn't particularly
    important.

    Examples of returned values:
       linux-i586
       linux-alpha (?)
       solaris-2.6-sun4u
       irix-5.3
       irix64-6.2

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

    For other non-POSIX platforms, currently just returns 'sys.platform'.
    rz bit (rO�)Zamd64z	win-amd64Zitaniumzwin-ia64r8�unameZ_PYTHON_HOST_PLATFORMr�rN� �_�-N�Zlinuxz%s-%sZsunosr�5Zsolarisz%d.%srTrZ32bitZ64bit)i���l����z.%s�ZirixZaixz%s-%s.%s��cygwinz[\d.]+rDz%s-%s-%s���)r$r:rF�version�findrGra�lowerrxr/r�r]r^�maxsizerUrVr[r\r�Zget_platform_osxr)r��i�jZlookZosnameZhost�releaser��machineZbitnessrUZrel_rernr�rrrrbsZ


 



cCstS)N)ryrrrrr�scCsJxDtt|j���D]0\}\}}|dkr2td|�td||f�qWdS)Nrz%s: z
	%s = "%s")�	enumerater�r4�print)�titler�indexr5r6rrr�_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)
rF�argvr�r�rrr@r�r
rrrrr�_main�s
r��__main__)rrrrrrr)r r!)r r!)F)rr)N)N)C�__doc__r$rF�os.pathrr�__all__r9r�r��splitr�rHryr�rr<r�r��base_prefixr�r�r��base_exec_prefixr�r�Z
_USER_BASErr�r�r+�getcwdr:r��endswithr&r/r)r|r*r,rwr=r2r7r?r@rJrtrr}r�r�r�rrr
r	r
rrrrrr�r��__name__rrrr�<module>s�

	

|
	?
 S[


Zerion Mini Shell 1.0