CasperSecurity

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

U

�@i�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

Hacker Blog, Shell İndir, Sql İnjection, XSS Attacks, LFI Attacks, Social Hacking, Exploit Bot, Proxy Tools, Web Shell, PHP Shell, Alfa Shell İndir, Hacking Training Set, DDoS Script, Denial Of Service, Botnet, RFI Attacks, Encryption
Telegram @BIBIL_0DAY