Hacked By AnonymousFox

Current Path : /opt/cloudlinux/venv/lib64/python3.11/site-packages/numpy/distutils/__pycache__/
Upload File :
Current File : //opt/cloudlinux/venv/lib64/python3.11/site-packages/numpy/distutils/__pycache__/mingw32ccompiler.cpython-311.pyc

�

�܋f3V��^�dZddlZddlZddlZddlZddlZddlZddlm	Z	ddl
Zddlm
Z
ddlmZddlmZddlmZmZmZmZd�Zejd	��Zejd
��ZGd�dejj��Zd
�Zd�Z d�Z!d�Z"d)d�Z#d�Z$d�Z%d�Z&d�Z'iZ(ej)dkrp	ddl*Z*de(d<de(d<de(d<e+e*dd��Z,e,�0ej-de,���.��\Z/Z0e,e(e/e0z<[/[0[,n#e1$re	j2d ��YnwxYwd!�Z3d*d#�Z4d$�Z5d%�Z6d&�Z7d'�Z8d(�Z9dS)+a
Support code for building Python extensions on Windows.

    # NT stuff
    # 1. Make sure libpython<version>.a exists for gcc.  If not, build it.
    # 2. Force windows to use gcc (we're struggling with MSVC and g77 support)
    # 3. Force windows to use g77

�N)�log)�
UnixCCompiler)�get_build_version)�UnknownFileError)�msvc_runtime_library�msvc_runtime_version�msvc_runtime_major�get_build_architecturec�,�t��}|�gn|gS)zBReplacement for outdated version of get_msvcr from cygwinccompiler)r)�msvcrs �s/builddir/build/BUILD/cloudlinux-venv-1.0.6/venv/lib64/python3.11/site-packages/numpy/distutils/mingw32ccompiler.py�get_msvcr_replacementr"s�� �"�"�E���2�2�U�G�+�z\[Ordinal/Name Pointer\] Tablez$^\s+\[([\s*[0-9]*)\] ([a-zA-Z0-9_]*)c�D�eZdZdZdZ			d	d�Z						d
d�Z		dd�ZdS)�Mingw32CCompilerzH A modified MingW32 compiler compatible with an MSVC built Python.

    �mingw32rc���tjj�||||��t	��t��}td���}|s|r|�d��t��}|r|�dd|z��t��dkr|�	ddd	d
���n|�	dd
dd���dg|_
dS)NT)�debug�NPY_MINGW_USE_CUSTOM_MSVCR�__MSVCRT_VERSION__z0x%04i�AMD64z#gcc -g -DDEBUG -DMS_WIN64 -O0 -Wallz7gcc -g -DDEBUG -DMS_WIN64 -O0 -Wall -Wstrict-prototypeszgcc -gzgcc -g -shared)�compiler�compiler_so�
linker_exe�	linker_soz
gcc -O2 -Wallz!gcc -O2 -Wall -Wstrict-prototypeszg++ zg++ -sharedzg++)�	distutils�cygwinccompiler�CygwinCCompiler�__init__�build_import_library�build_msvcr_library�define_macrorr
�set_executables�compiler_cxx)�self�verbose�dry_run�force�
msvcr_success�msvcr_dbg_success�
msvcr_versions       r
rzMingw32CCompiler.__init__4s2��
	�!�1�:�:�D�'�<C�U�	L�	L�	L�	����,�-�-�
�/�d�;�;�;���	<�-�	<����:�;�;�;�-�.�.�
��	N����2�H�}�4L�M�M�M�"�#�#�w�.�.�� � �>�2�#�*�
!�
,�
,�
,�
,�
� � �(�?�!�'�	
!�
)�
)�
)�#�G���	�rNc��t��}|r|sg}|�|��||||||||d|	|
|||
f}tj}||d|jj��dS)N)r�appendr�link�__code__�co_argcount)r%�target_desc�objects�output_filename�
output_dir�	libraries�library_dirs�runtime_library_dirs�export_symbolsr�
extra_preargs�extra_postargs�
build_temp�target_lang�runtime_library�args�funcs                 r
r.zMingw32CCompiler.linkls��� /�0�0���	.��
��	����_�-�-�-��������$�������
���!����d�-�D�M�-�-�.�/�/��r�c��|�d}g}|D�]<}tj�tj�|����\}}tj�|��\}}|r
|dd�}||jddgzvrt
d|�d|�d����|rtj�|��}|dks|dkr@|�tj�	|||z|j
z������|�tj�	|||j
z������>|S)Nr@��.rcz.reszunknown file type 'z	' (from 'z'))�os�path�splitext�normcase�
splitdrive�src_extensionsr�basenamer-�join�
obj_extension)	r%�source_filenames�	strip_dirr4�	obj_names�src_name�base�ext�drvs	         r
�object_filenamesz!Mingw32CCompiler.object_filenames�s{����B�z��	�(�	L�	L�H��'�*�*�B�G�,<�,<�X�,F�,F�G�G�K�T�3�
��*�*�4�0�0�I�C���
 ��A�B�B�x���4�.�%���@�A�A�&�&��s�s�H�H�H�&�'�'�'��
/��w�'�'��.�.���f�}�}��u���� � �"�'�,�,�
�04�s�
�T�=O�0O�#Q�#Q�R�R�R�R�� � �"�'�,�,�
�04�t�7I�0I�#K�#K�L�L�L�L��r)rrr)NrNNNN)rr@)�__name__�
__module__�__qualname__�__doc__�
compiler_typerr.rT�rr
rr-s����������M����4�4�4�4�@#��� ���%�%�%�%�R%&�%'������rrc�D�tjg}tjtjkr|�tj��gd�}g}|D]:}|D]5}|�tj�||�����6�;dtjvrC|�tj�tjdd����ttj	dd���\}}tj
j}|dkr	d|�|�d�}n|dkr
d	|�d
|�d�}nd|��}td
|z��|D]E}tj�||��}	tj�
|	��r|	cS�Ft|�d|�����)N)r@�lib�bin�
SYSTEMROOT�System32��cpython�python�.dll�pypy�libpypy�.z-c.dllzUnknown platform zLooking for %sz not found in )�sys�prefix�base_prefixr-rDrErK�environ�tuple�version_info�implementation�name�print�exists�
ValueError)
�stems�sub_dirs�lib_dirs�stem�folder�
major_version�
minor_versionrm�dllname�dlls
          r
�find_python_dllr{�s����Z�L�E�
��#�*�$�$�
���S�_�%�%�%�!�!�!�H��H��8�8���	8�	8�F��O�O�B�G�L�L��v�6�6�7�7�7�7�	8��r�z�!�!��������R�Z��%=�z�J�J�K�K�K�$)��)9�"�1�"�)=�#>�#>� �M�=��'�,�N���"�"�=�=�=�-�=�=�=���	�6�	!�	!�A�M�A�A�M�A�A�A���6�n�6�6��	�
�W�
$�%�%�%������g�l�l�6�7�+�+��
�7�>�>�#���	��J�J�J�	��W�W�W�h�h�?�
@�
@�@rc�Z�tjdd|g��}|�d��S)Nzobjdump.exez-p�
)�
subprocess�check_output�split)rz�sts  r
�
dump_tabler��s)��	�	 �-��s�!;�	<�	<�B�
�8�8�E�?�?�rc�*�t|��}tt|����D]6}t�||�����rn�7t
d���g}t|dzt|����D]�}t�||�����}|r]|�t|�
d�������|�
d��f����t|��dkrtj
d|z��t|d��5}|�dt j�|��z��|�d��|�d	��|�d
��|D] }|�d|dz���!	ddd��dS#1swxYwYdS)
z�Given a dll file location,  get all its exported symbols and dump them
    into the given def file.

    The .def file will be overwrittenzSymbol table not foundrBr`rzNo symbols found in %s�wzLIBRARY        %s
z,;CODE          PRELOAD MOVEABLE DISCARDABLE
z;DATA          PRELOAD SINGLE
z	
EXPORTS
z%s
N)r��range�len�_START�match�decoderq�_TABLEr-�int�group�stripr�warn�open�writerDrErJ)	rz�dfile�dump�i�syms�j�m�d�ss	         r
�generate_defr��s$��
�c�?�?�D�
�3�t�9�9�
�
�3�3���<�<��Q����(�(�)�)�	��E�	��1�2�2�2�
�D�
�1�Q�3��D�	�	�
"�
"�����L�L��a����)�)�*�*���	��K�K��Q�W�W�Q�Z�Z�-�-�/�/�0�0�!�'�'�!�*�*�=�>�>�>�>��
�4�y�y�A�~�~���)�C�/�0�0�0�	
�e�S�	�	�#�Q�	���%���(8�(8��(=�(=�=�>�>�>�	���?�@�@�@�	���1�2�2�2�	���
�����	#�	#�A�
�G�G�F�Q�q�T�M�"�"�"�"�	#�#�#�#�#�#�#�#�#�#�#�#�#����#�#�#�#�#�#s�"BH�H�Hc�n��ddd�t����fd�}d�}||��p
||��S)N�amd64�x86)r�Intelc�P��tj�tj�dd��d��}tj�|��sdStj|��D]0\}}}||vr&�|vr"tj�||��cS�1dS)N�WINDIRz
C:\WINDOWS�winsxs)rDrErKrj�getrp�walk)�dll_name�winsxs_path�root�dirs�files�archs     �r
�_find_dll_in_winsxsz%find_dll.<locals>._find_dll_in_winsxss�����g�l�l�2�:�>�>�(�M�#J�#J�#+�-�-���w�~�~�k�*�*�	��4�!#���!5�!5�	4�	4��D�$���5� � �T�T�\�\��w�|�|�D�(�3�3�3�3�3���trc�2�tjgtjd�d��zD]b}tj�||��}tj�|��r!tj�|��cS�cdS)N�PATH�;)	rgrhrDrjr�rErKrp�abspath)r�rE�filepaths   r
�_find_dll_in_pathz#find_dll.<locals>._find_dll_in_paths����Z�L�2�:�f�#5�#;�#;�C�#@�#@�@�	1�	1�D��w�|�|�D�(�3�3�H��w�~�~�h�'�'�
1��w���x�0�0�0�0�0�
1�	1�	1r)r
)r�r�r�r�s   @r
�find_dllr�so�������3�5�5�7�D�	�	�	�	�	�1�1�1���x�(�(�G�,=�,=�h�,G�,G�GrFc��tjdkrdSt��}|�tjd��dS|dkrtjd��dSt��}|r|dz
}d|z}tj�tj	d|��}tj�
|��rtjd	|�d
���dS|dz}t|��}|stjd
|z��dSd|z}tj�tj	d|��}tj
d|�d|�d���t||��dd|d|g}	tj|	��}
tj|��|
S)N�ntFz?Skip building import library: Runtime is not compiled with MSVC�Pz=Skip building msvcr library: custom functionality not presentr�zlib%s.a�libszSkip building msvcr library: "z" existsTrcz*Cannot build msvcr library: "%s" not foundz	lib%s.defzBuilding msvcr library: "�" (from �)�dlltool�-d�-l)rDrnr	rrrrErKrgrh�isfiler�r��infor�r~�call�remove)r�	msvcr_ver�
msvcr_name�out_name�out_file�msvcr_dll_name�dll_file�def_name�def_file�cmd�retcodes           r
r!r!s���	�w�$����u�#�$�$�I����	�6�	7�	7�	7��u��2�~�~��	�6�	7�	7�	7��u�%�'�'�J����c��
��:�%�H��w�|�|�C�J���9�9�H�	�w�~�~�h�����	�	��8�8��	�	�	��t� �&�(�N���'�'�H�����=�� �	!�	!�	!��u��Z�'�H��w�|�|�C�J���9�9�H��H�H����(�(�(�$�%�%�%���8�$�$�$��d�H�d�H�
5�C��o�c�"�"�G��I�h�����K�rc��tjdkrdSt��}|dkrt��S|dkrt	��Std|z���)Nr�rr�zUnhandled arch %s)rDrnr
�_build_import_library_amd64�_build_import_library_x86rq)r�s r
r r Us[��	�w�$�����!�#�#�D��w���*�,�,�,�	
����(�*�*�*��,�t�3�4�4�4rc
��ttjdd���\}}gd�}tjg}t	td��r:tjtjkr |�tj��nNt	td��r9tjtjkr|�tj��ddg}g}|D]G}|||fz}|D];}|D]6}	|�tj	�
||	|�����7�<�H|D]'}
tj	�|
��rd|
fcS�(d	|d
fS)zACheck if an import library for the Python runtime already exists.Nr`)zlibpython%d%d.azlibpython%d%d.dll.azlibpython%d.%d.dll.ari�real_prefixr�r\TFr)rkrgrlrh�hasattrrir-r�rDrErKr�)rwrx�patternsrrrs�
candidates�pat�filename�stem_dirrv�fullnames           r
�_check_for_import_libr�as~��#(��)9�"�1�"�)=�#>�#>� �M�=�(�(�(�H�
�Z�L�E��s�M�"�"�&�s��#�*�'D�'D�
���S�_�%�%�%�%�	��m�	$�	$�&���C�J�)F�)F�
���S�_�%�%�%����H��J��L�L���-��7�7���	L�	L�H�"�
L�
L���!�!�"�'�,�,�x���"J�"J�K�K�K�K�
L�	L�
�$�$��
�7�>�>�(�#�#�	$��(�#�#�#�#�	$�

�:�a�=�!�!rc��t��\}}|rtjd|��dSt��}tjd|�d|�d���dttjdd���z}tj	�
tjd|��}t||��dd	|d
|g}tj|��dS)N�)Skip building import library: "%s" existsz'Building import library (arch=AMD64): "r�r��python%d%d.defr`r�r�r�r�)r�rrr{r�rkrgrlrDrErKrhr�r~�
check_call)�
out_existsr�r�r�r�r�s      r
r�r��s���0�2�2��J�����	�=�x�H�H�H���� � �H��H�H��h�h����"�#�#�#� �%��(8��!��(<�"=�"=�=�H��w�|�|�C�J���9�9�H���8�$�$�$��d�H�d�H�
5�C���#�����rc��t��\}}|rtjd|��dSdttjdd���z}tj�tj	d|��}tj�
|��s�ttd��r,tj�tjd|��}nCttd��r,tj�tj
d|��}nd}tj�
|��r|}ntjd	|��dStjd
|��ddlm}d
ttjdd���z}tj�tj	d|��}|�|j|gzd���}|�|��\}	}
t+|d��5}|�|	|
|j|��ddd��n#1swxYwYt1��}dd|d|d|g}
t3j|
��}|rtjd��dS)z; Build the import libraries for Mingw32-gcc on Windows
    r�Nzpython%d%d.libr`r�rir�r@z+Cannot build import library: "%s" not foundz(Building import library (ARCH=x86): "%s"r)�lib2defr�F)�shellr�r�z	--dllnamez--defz--output-libz:Failed to build import library for gcc. Linking will fail.)r�rrrkrgrlrDrErKrhr�r�rir�r�r��numpy.distutilsr��getnm�
DEFAULT_NM�parse_nmr��
output_def�
DEF_HEADERr{r~r)r�r��lib_name�lib_file�base_libr�r�r��	nm_output�dlist�flist�fidr�r��statuss               r
r�r��s���1�2�2��J�����	�=�x�H�H�H����%��(8��!��(<�"=�"=�=�H��w�|�|�C�J���9�9�H�
�7�>�>�(�#�#���3�
�&�&�	��w�|�|�C�O�V�X�F�F�H�H�
�S�-�
(�
(�	��w�|�|�C�O�V�X�F�F�H�H��H�
�7�>�>�(�#�#�	��H�H��H�B�H�M�M�M��F��H�
7��B�B�B�'�'�'�'�'�'��%��(8��!��(<�"=�"=�=�H��w�|�|�C�J���9�9�H��
�
���(��+�5��:�:�I��#�#�I�.�.�L�E�5�	
�h��	�	�B�����5�%��);�S�A�A�A�B�B�B�B�B�B�B�B�B�B�B����B�B�B�B��!�!�H�����H��8�%�C��
$�S�
)�
)�F�
�O���M�N�N�N�
�Fs�H2�2H6�9H6�win32z8.0.50727.42�80z9.0.21022.8�90z10.0.30319.460�100�CRT_ASSEMBLY_VERSIONz(\d+)\.(\d)z9Cannot import msvcrt: using manifest will not be possiblec���	tt|dz|z��}n##t$rtd||fz��d�wxYwt	jd��}||||d�zS)zUGiven a major and minor version of the MSVCR, returns the
    corresponding XML file.�
z)Version %d,%d of MSVCRT not supported yetNa�        <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
          <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
            <security>
              <requestedPrivileges>
                <requestedExecutionLevel level="asInvoker" uiAccess="false"></requestedExecutionLevel>
              </requestedPrivileges>
            </security>
          </trustInfo>
          <dependency>
            <dependentAssembly>
              <assemblyIdentity type="win32" name="Microsoft.VC%(maj)d%(min)d.CRT" version="%(fullver)s" processorArchitecture="*" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity>
            </dependentAssembly>
          </dependency>
        </assembly>)�fullver�maj�min)�_MSVCRVER_TO_FULLVER�str�KeyErrorrq�textwrap�dedent)r�r�r��templates    r
�msvc_manifest_xmlr��s���/�&�s�3��8�c�>�':�':�;�����/�/�/��D��s��$�%�%�*.�	/�/������ ���H� �'�#�c�B�B�B�Bs	� #� Arzc�X�|dkrd}n|dkrd}ntd|z���d||fzS)aWReturn the rc file used to generate the res file which will be embedded
    as manifest for given manifest file name, of given type ('dll' or
    'exe').

    Parameters
    ----------
    name : str
            name of the manifest file to embed
    type : str {'dll', 'exe'}
            type of the binary which will embed the manifest

    rzr`�exerBzType %s not supportedz&#include "winuser.h"
%d RT_MANIFEST %s)rq)rn�type�rctypes   r
�manifest_rcrsN���u�}�}����	
��������0�4�7�8�8�8����~�&�&rc��t��}|r4|t|��ks#tdt|��|fz���dSdS)z6msver is the ms runtime version used for the MANIFEST.zKDiscrepancy between linked msvcr (%d) and the one about to be embedded (%d)N)r	r�rq)�msverr�s  r
�!check_embedded_msvcr_match_linkedr*sb���
�
�C�
�.��c�%�j�j� � �����J�J��,�-�.�.�
.�.�.� � rc��tj�|�dgd����}tj�|��dS)N�yo�cr)rDrErJ�_gen_temp_sourcefilerF)�configrQs  r
�configtest_namer	6sD��
�7���F�7�7��b�#�F�F�G�G�D�
�7���D�!�!�!�$�$rc�H�t|��}|jj}||zdzS)Nz	.manifest)r	r�
exe_extension)rr��exexts   r
�
manifest_namer
:s(���6�"�"�D��O�)�E��%�<�+�%�%rc�*�t|��}|dzS)NrC)r	)rr�s  r
�rc_namer@s���6�"�"�D��%�<�rc���t��}|��|dkr�t|��t|���d��\}}t	t|��t|����}t
t|��d��5}|j�	t|����|�
|��ddd��dS#1swxYwYdSdSdS)N�rfr�)�get_build_msvc_versionrr�r�r�r�r�r
�
temp_filesr-r�)rr�ma_str�mi_str�manxml�mans      r
�generate_manifestrEs��"�$�$�E����A�:�:�-�e�4�4�4� ��Z�Z�-�-�c�2�2�N�F�F�&�s�6�{�{�C��K�K�@�@�F��m�F�+�+�S�1�1�
"�S��!�(�(��v�)>�)>�?�?�?��	�	�&�!�!�!�
"�
"�
"�
"�
"�
"�
"�
"�
"�
"�
"�
"����
"�
"�
"�
"�
"�
"�
���:s�=C�C �#C )F)rz):rXrDrgr~�rer��numpy.distutils.ccompiler�numpyr�r�distutils.cygwinccompilerr�distutils.unixccompilerr�distutils.msvccompilerrr�distutils.errorsr�numpy.distutils.misc_utilrrr	r
r�compiler�r�rrrr{r�r�r�r!r r�r�r�r��platform�msvcrt�getattr�crt_verr��groupsr�r��ImportErrorr�r�rrr	r
rrrZrr
�<module>r(s;����
�	�	�	�
�
�
�
�����	�	�	�	�����!� � � �������!� � � �1�1�1�1�1�1�N�N�N�N�N�N�-�-�-�-�-�-�?�?�?�?�?�?�?�?�?�?�?�?�
,�,�,�
���5�	6�	6��	���;�	<�	<��D�D�D�D�D�y�0�@�D�D�D�R$A�$A�$A�L���#�#�#�@H�H�H�49�9�9�9�v
5�
5�
5�""�""�""�H���(/�/�/�D���<�7���N��
�
�
�&4��T�"�%2��T�"�'7��U�#��'�&�"8�$�?�?�����r�x���8�8�?�?�A�A�H�C��.5� ��s��+��S��G���N�N�N�	���L�M�M�M�M�M�	N����C�C�C�@&�&�&�&�0
.�
.�
.�%�%�%�&�&�&����

"�
"�
"�
"�
"s�(AC<�<D�D

Hacked By AnonymousFox1.0, Coded By AnonymousFox