%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /lib/python3/dist-packages/setuptools/_distutils/__pycache__/
Upload File :
Create Path :
Current File : //lib/python3/dist-packages/setuptools/_distutils/__pycache__/bcppcompiler.cpython-312.pyc

�


_�d�9���dZddlZddlZddlmZmZmZmZmZddl	m
Z
mZddlm
Z
ddlmZddlmZej$d	e�Gd
�de
�Zy)z�distutils.bcppcompiler

Contains BorlandCCompiler, an implementation of the abstract CCompiler class
for the Borland C++ compiler.
�N�)�DistutilsExecError�CompileError�LibError�	LinkError�UnknownFileError)�	CCompiler�gen_preprocess_options)�
write_file)�newer)�logz�bcppcompiler is deprecated and slated to be removed in the future. Please discontinue use or file an issue with pypa/distutils describing your use case.c���eZdZdZdZiZdgZgd�ZeezZdZ	dZ
dZdxZZ
d	Zd�fd
�	Z							dd�Z	dd�Z										dd
�Zdd�Zdd�Z					dd�Z�xZS)�BCPPCompilerzConcrete class that implements an interface to the Borland C/C++
    compiler, as defined by the CCompiler abstract class.
    �bcppz.c)z.ccz.cppz.cxxz.objz.libz.dllz%s%sz.exec����t�|�|||�d|_d|_d|_d|_gd�|_gd�|_gd�|_gd�|_	g|_
gd�|_gd�|_y)	Nz	bcc32.exezilink32.exeztlib.exe)�/tWMz/O2�/q�/g0)rz/Odrr)z/Tpd�/Gnr�/x)rrr)rrrz/r)
�super�__init__�cc�linker�lib�preprocess_options�compile_options�compile_options_debug�ldflags_shared�ldflags_shared_debug�ldflags_static�ldflags_exe�ldflags_exe_debug)�self�verbose�dry_run�force�	__class__s    ��D/usr/lib/python3/dist-packages/setuptools/_distutils/bcppcompiler.pyrzBCPPCompiler.__init__Bsk���
����'�5�1����#������"&���;���%A��"�9���$?��!� ���.���!:���c	�Z�|j||||||�\}}	}}
}|xsg}|jd�|r|j|j�n|j|j�|	D]�}
	||
\}}tjj|�}tjj|
�}
|jtjj|
��|dk(r�~|dk(r	|jdd|
|g���||jvrd}n||jvrd}nd}d|
z}	|j|j g|z|
z||gz|z|gz���|	S#t
$rY��wxYw#t$r}t|��d}~wwxYw#t$r}t|��d}~wwxYw)	Nz-c�.res�.rc�brcc32z-fo�z-P�-o)�_setup_compile�append�extendrr�KeyError�os�path�normpath�mkpath�dirname�spawnrr�
_c_extensions�_cpp_extensionsr)r$�sources�
output_dir�macros�include_dirs�debug�
extra_preargs�extra_postargs�depends�objects�pp_opts�build�compile_opts�obj�src�ext�msg�	input_opt�
output_opts                   r)�compilezBCPPCompiler.compileYs���;?�:M�:M����g�w��;
�7�����%�%�*������D�!������ :� :�;����� 4� 4�5��1	(�C�
� ��:���S��'�'�"�"�3�'�C��'�'�"�"�3�'�C�
�K�K�������,�-��f�}���e�|�,��J�J��%��c�:�;���d�(�(�(��	���,�,�,� �	�
�	����J�


(��
�
��W�W�I�"�#���!�*�-�.�%�	%�
�e���Q1	(�f���a�
��
�� *�,�&�s�+�+��,��:&�
(�"�3�'�'��
(�sB�3E%�3E5�3.F�%	E2�1E2�5	F�>F	�	F�	F*�F%�%F*c�2�|j||�\}}|j||��}|j||�r+|dg|z}|r		|j|jg|z�ytjd|�y#t
$r}t
|��d}~wwxYw)N)r>z/u�skipping %s (up-to-date))	�_fix_object_args�library_filename�
_need_linkr:rrrr
rA)	r$rE�output_libnamer>rA�target_lang�output_filename�lib_argsrLs	         r)�create_static_libzBCPPCompiler.create_static_lib�s���!%� 5� 5�g�z� J���*��/�/��:�/�V���?�?�7�O�4�'��.��8�H���
$��
�
�D�H�H�:��0�1�
�I�I�0�/�B��&�
$��s�m�#��
$�s�A=�=	B�B�Bc���|j||�\}}|j|||�\}}}|rtjdt	|��|� t
jj||�}|j||��r6|tjk(r$d}|	r|jdd}n3|jdd}n#d}|	r|jdd}n|jdd}|�d}n�t
jj|�\}}t
jj!|�\}}t
jj#|d�}t
jj|d|z�}dg}|xsgD]#}|j%dj'||���%|j)t*||fd	|z�t-t
jj.|�}|g}g}|D]i}t
jj!t
jj1|��\}}|d
k(r|j%|��Y|j%|��k|D]3}|j%dt
jj/|�z��5|j%d�|j3|�|j3d
|g�|j%d�|D]:}|j5|||	�}|�|j%|��*|j%|��<|j3d�|j3d
|g�|j%d
�|j3|�|
r|
|dd|r|j3|�|j7t
jj#|��	|j9|j:g|z�ytj@d|�y#t<$r}t?|��d}~wwxYw)Nz7I don't know what to do with 'runtime_library_dirs': %s�c0w32�c0d32r/rz%s.def�EXPORTSz  {}=_{}z
writing %sr,z/L%sz/L.�,z,,)�import32�cw32mtrQ)!rR�
_fix_lib_argsr
�warning�strr5r6�joinrTr	�
EXECUTABLEr#r"r r�split�splitextr9r2�format�executer�mapr7�normcaser3�find_library_filer8r:rrrrA) r$�target_descrErWr>�	libraries�library_dirs�runtime_library_dirs�export_symbolsrArBrC�
build_temprV�startup_obj�ld_args�def_file�head�tail�modnamerK�temp_dir�contents�sym�objects2�	resources�file�base�ellr�libfilerLs                                 r)�linkzBCPPCompiler.link�s}��&!%� 5� 5�g�z� J���*�:>�:L�:L��|�%9�;
�7��L�"6� ��K�K�I��(�)�
�
�!� �g�g�l�l�:��G�O��?�?�7�O�4��i�2�2�2�%���"�4�4�Q�7�G�"�.�.�q�1�G�%���"�7�7��:�G�"�1�1�!�4�G��%����W�W�]�]�?�;�
��d�!�w�w�/�/��5�����7�7�?�?�7�1�:�6���7�7�<�<��(�W�2D�E��%�;��)�/�R�A�C��O�O�J�$5�$5�c�3�$?�@�A����Z�(�H�)=�|�h�?V�W��2�7�7�+�+�W�5�H�#�m�G��I� �
)�� �g�g�.�.�r�w�w�/?�/?��/E�F���s��&�=��$�$�T�*��N�N�4�(�
)�$�
?�����v����(8�(8��(=�=�>�
?��N�N�5�!�
�N�N�7�#�
�N�N�C��1�2��N�N�4� � �	
,���0�0��s�E�J���?��N�N�3�'��N�N�7�+�	
,�
�N�N�1�2�
�N�N�C��?�+��N�N�3���N�N�9�%��+���������~�.��K�K�������8�9�
%��
�
�D�K�K�=�7�2�3�

�I�I�0�/�B��	&�
%���n�$��
%�s�O�	O)�O$�$O)c��|r|dz}|dz|dz||f}n|dz|f}|D]]}|D]V}tjj||j|��}tjj	|�s�R|ccS�_y)N�_d�_bcpp)r5r6rdrS�exists)	r$�dirsrrA�dlib�	try_names�dir�namer�s	         r)rlzBCPPCompiler.find_library_file>s������:�D�����w���c�B�I��w���,�I��	�C�!�
#���'�'�,�,�s�D�,A�,A�$�,G�H���7�7�>�>�'�*�"�N�
#�	�r*c��|�d}g}|D�]>}tjjtjj|��\}}||jddgzvrtdj
||���|rtjj|�}|dk(r3|jtjj|||z����|dk(r4|jtjj||dz����|jtjj|||jz����A|S)Nr/r-r,z"unknown file type '{}' (from '{}'))r5r6rgrk�src_extensionsrrh�basenamer2rd�
obj_extension)r$�source_filenames�	strip_dirr>�	obj_names�src_namerrKs        r)�object_filenameszBCPPCompiler.object_filenamesXs�����J��	�(�	V�H��'�'�*�*�2�7�7�+;�+;�H�+E�F�K�T�3��4�.�.�%���@�A�&�8�?�?��X�N�����w�w�'�'��-���f�}�� � ������j�$��*�!E�F����� � ������j�$��-�!H�I�� � ������j�$��AS�AS�:S�!T�U�!	V�"�r*c���|jd||�\}}}t||�}dg|z}	|�|	jd|z�|r||	dd|r|	j|�|	j|�|js|�t||�rC|r.|j
tjj|��	|j|	�yy#t$r}
t|
�t|
��d}
~
wwxYw)Nz	cpp32.exer0r)�_fix_compile_argsr
r2r3r'rr8r5r6r9r:r�printr)r$�source�output_filer?r@rBrC�_rF�pp_argsrLs           r)�
preprocesszBCPPCompiler.preprocessqs���%)�$:�$:�4���$V�!��F�L�(���>���-�'�)���"��N�N�4�+�-�.��'�G�B�Q�K���N�N�>�*����v��
�:�:��,��f�k�0J�����B�G�G�O�O�K�8�9�
(��
�
�7�#�	1K��
&�
(��c�
�"�3�'�'��
(�s�6C	�		C-�C(�(C-)rrr)NNNrNNN)NrN)
NNNNNrNNNN)r)rr/)NNNNN)�__name__�
__module__�__qualname__�__doc__�
compiler_type�executablesr;r<r�r��static_lib_extension�shared_lib_extension�static_lib_format�shared_lib_format�
exe_extensionrrOrYr�rlr�r��
__classcell__)r(s@r)rr's������M��K��F�M�-�O�#�_�4�N��M�!��!��,2�2��)��M�;�4�������H�ZNR�C�0���!�������@C�L�4�8�����(r*r)r�r5�warnings�errorsrrrrr�	ccompilerr	r
�	file_utilr�dep_utilr�_logr
�warn�DeprecationWarningr�r*r)�<module>r�sR���
����9�!�����
�
�4��	�h(�9�h(r*

Zerion Mini Shell 1.0