Your IP : 18.119.135.67


Current Path : /opt/alt/python311/lib64/python3.11/distutils/__pycache__/
Upload File :
Current File : //opt/alt/python311/lib64/python3.11/distutils/__pycache__/sysconfig.cpython-311.pyc

�

c��f�0��x�dZddlZddlZddlZddlZddlZddlmZddlm	Z	ddl
mZm
ZmZmZmZmZmZmZmZmZmZmZmZm Z m!Z!m"Z"m#Z#m$Z$m%Z%e#��Z&ej'de(d�	��dd
�Zee d���Z)eee&��Zeee&��Z*dd
�Z+dZ,	esej-Z,n#e.$rYnwxYwd�Z/dd�Z0dd�Z1dS)a�Provide access to Python's configuration information.  The specific
configuration variables available depend heavily on the platform and
configuration.  The values may be retrieved using
get_config_var(name), and the list of variables is available via
get_config_vars().keys().  Additional convenience functions are also
available.

Written by:   Fred L. Drake, Jr.
Email:        <fdrake@acm.org>
�N)�partial�)�DistutilsPlatformError)�_PREFIX�_BASE_PREFIX�_EXEC_PREFIX�_BASE_EXEC_PREFIX�
_PROJECT_BASE�
_PYTHON_BUILD�_init_posix�parse_config_h�_init_non_posix�_variable_rx�_findvar1_rx�_findvar2_rx�expand_makefile_vars�is_python_build�get_config_h_filename�get_config_var�get_config_vars�get_makefile_filename�get_python_versionzCThe distutils.sysconfig module is deprecated, use sysconfig instead�)�
stacklevelc�$�t||���S)N)�vars)�sysconfig_parse_config_h)�fp�gs  �:/opt/alt/python311/lib64/python3.11/distutils/sysconfig.pyr
r
=s��#�B�Q�/�/�/�/�T)�
check_homec�4�ddlm}||dddd���}|�i}i}i}	|���}|�n�tjt
|��}|r�|�dd��\}}	|	���}	|	�d	d
��}
d|
vr|	||<n?	t|	��}	|	||<n)#t$r|	�d	d��||<YnwxYw��d}|�r�t|��D�]�}||}
tjt|
��ptjt|
��}|�rk|�d��}d}||vrt||��}nz||vrd
}ns|t jvrt j|}nR||vrG|�d��r|dd�|vrd
}n*d|z|vrd
}n t|d|z��}nd
x||<}|r�|
|���d�}|
d|����|z|z}
d|vr|
||<��8t|
��}
|
||<n'#t$r|
���||<YnwxYw||=|�d��r|dd�|vr|dd�}||vr|
||<���||=���|���|���|���D]1\}}	t/|	t��r|	���||<�2|�|��|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.
    r)�TextFiler�surrogateescape)�strip_comments�skip_blanks�
join_lines�errorsNTrz$$��$)�CFLAGS�LDFLAGS�CPPFLAGSF�PY_�)�distutils.text_filer$�readline�re�matchr�group�strip�replace�int�
ValueError�list�searchrr�str�os�environ�
startswith�end�start�close�items�
isinstance�update)�fnrr$r�done�notdone�line�m�n�v�tmpv�renamed_variables�name�value�found�item�after�ks                  r �parse_makefilerUHs���-�,�,�,�,�,�	��"�Q�A�!�L]�	^�	^�	^�B��y���
�D��G� ��{�{�}�}���<���H�\�4�(�(���	 ��7�7�1�a�=�=�D�A�q����	�	�A��9�9�T�2�&�&�D��d�{�{����
�
� ��A���A�
 �D��G�G��	"�3�3�3��i�i��c�2�2�D��G�G�G�3����! �4:���0"���M�M�/	"�/	"�D��D�M�E��	�,��.�.�P�"�)�L�%�2P�2P�A��,
"��G�G�A�J�J������9�9��t�A�w�<�<�D�D��'�\�\�!�E�E��"�*�_�_��:�a�=�D�D��+�+�+����u�-�-�4�$�q�r�r�(�>O�2O�2O�!������g�-�-� %��� #�4���	�?�3�3���%'�'�D��G�d��3�!�!�%�%�'�'�(�(�O�E�!�*�1�7�7�9�9�*�-��4�u�<�E��e�|�|�(-���
�
�%(��Z�Z�U�*/�D��J�J�� *�7�7�7�).�����D��J�J�J�7����$�D�M��?�?�5�1�1�3� $�Q�R�R��,=� =� =�#'����8�D�#�4�/�/�-2��T�
���D�M�M�a�0"�d�H�H�J�J�J��
�
��� � ���1��a����	 ��g�g�i�i�D��G���H�H�T�N�N�N��Hs$�!B6�6#C�C�,I�!I%�$I%r*c
�"�|jdk�r�tjdkrBt�d��s(ddl}|�t��dtd<tddd	d
ddd
d��\}}}}}}}}	dtj	vratj	d}
tjdkr=dtj	vr/|�
|��r|
|t|��d�z}|
}dtj	vrtj	d}dtj	vrtj	d}dtj	vrtj	d}n|dz}dtj	vr|dztj	dz}d	tj	vr0|dztj	d	z}|dztj	d	z}dtj	vrH|dztj	dz}|dztj	dz}|dztj	dz}d
tj	vrtj	d
}dtj	vr|dztj	dz}n|dz|	z}|dz|z}
|�||
|
dz|z||||���||_
dSdS)z�Do any platform-specific customization of a CCompiler instance.

    Mainly needed on Unix, so we can plug in the information that
    varies across Unices and is stored in Python's Makefile.
    �unix�darwin�CUSTOMIZED_OSX_COMPILERrN�True�CC�CXXr,�CCSHARED�LDSHARED�SHLIB_SUFFIX�AR�ARFLAGS�CPPz -Er-� r.)�preprocessor�compiler�compiler_so�compiler_cxx�	linker_so�
linker_exe�archiver)�
compiler_type�sys�platform�_config_vars�get�_osx_support�customize_compilerrr=r>r?�len�set_executables�shared_lib_extension)rerp�cc�cxx�cflags�ccshared�ldshared�shlib_suffix�ar�ar_flags�newcc�cpprj�cc_cmds              r rqrq�s������'�'��<�8�#�#� �#�#�$=�>�>�
A�#�#�#�#��/�/��=�=�=�:@��6�7�
�D�%��&�
�N�D�)�
U�
U�	J��S�&�(�H�l�B���2�:����J�t�$�E����(�(�"�"�*�4�4� �+�+�B�/�/�5�!�8�C��G�G�H�H�#5�5���B��B�J����*�U�#�C����#�#��z�*�-�H��B�J����*�U�#�C�C��u�*�C���
�"�"��#�~��
�9�(=�=�H��r�z�!�!��c�\�B�J�x�$8�8�F��#�~��
�8�(<�<�H����#�#���)�b�j��4�4�C��c�\�B�J�z�$:�:�F��#�~��
�:�(>�>�H��2�:�����D�!�B���
�"�"��C�x�"�*�Y�"7�7�H�H��C�x�(�*�H��c��F�"��� � ������x�/�����	!�	�	�	�)5��%�%�%�}(�'r!c��|�|rtpt}tjdkr�trU|rt
Stj�td��d��}tj�	|��Sdt��ztz}tj�|d|��StjdkrztrStj�|d��tjjztj�|d��zStj�|d��Std	tjz���)
a�Return the directory containing installed Python header files.

    If 'plat_specific' is false (the default), this is the path to the
    non-platform-specific header files, i.e. Python.h and so on;
    otherwise, this is the path to platform-specific header files
    (namely pyconfig.h).

    If 'prefix' is supplied, use it instead of sys.base_prefix or
    sys.base_exec_prefix -- i.e., ignore 'plat_specific'.
    N�posix�srcdir�Include�python�include�nt�PCzFI don't know where Python installs its C header files on platform '%s')�BASE_EXEC_PREFIX�BASE_PREFIXr=rO�python_build�project_base�path�joinr�normpathr�build_flags�pathsepr)�
plat_specific�prefix�incdir�
python_dirs    r �get_python_incr�s$���~��3�#3�B�{��	�w�'����
	0��
0�#�#�����n�X�&>�&>�	�J�J���w�'�'��/�/�/�� 2� 4� 4�4�{�B�
��w�|�|�F�I�z�:�:�:�	��D����	0��G�L�L���3�3�b�g�o�E��G�L�L���.�.�/�
0��w�|�|�F�I�.�.�.�$�
�!#��
)�*�*�	*r!c��|�#|r|rtpt}n|rtpt}tjdkrg|s|r
tj}nd}tj�	||dt��z��}|r|Stj�	|d��StjdkrC|r tj�	|d��Stj�	|dd��Stdtjz���)	aSReturn the directory containing the Python library (standard or
    site additions).

    If 'plat_specific' is true, return the directory containing
    platform-specific modules, i.e. any module from a non-pure-Python
    module distribution; otherwise, return the platform-shared library
    directory.  If 'standard_lib' is true, return the directory
    containing standard Python library modules; otherwise, return the
    directory for site-specific modules.

    If 'prefix' is supplied, use it instead of sys.base_prefix or
    sys.base_exec_prefix -- i.e., ignore 'plat_specific'.
    Nr��libr�z
site-packagesr��Libz?I don't know where Python installs its library on platform '%s')r�r��EXEC_PREFIX�PREFIXr=rOrl�
platlibdirr�r�rr)r��standard_libr��libdir�	libpythons     r �get_python_libr�0s���~��	=�"�7�'7�F�;�F�F�"�2�{�<�f�F�	�w�'����	�L�	��^�F�F��F��G�L�L���!)�,>�,@�,@�!@�B�B�	��	<����7�<�<�	�?�;�;�;�	��D����	@��7�<�<���.�.�.��7�<�<����?�?�?�$�
�!#��
)�*�*�	*r!)N)rN)rrN)2�__doc__�_impr=r3rl�warnings�	functoolsrr)r�	sysconfigrr�rr�rr�r	r�r
r�rr�r�sysconfig_init_posixr
rrrrrrrrrrrrrn�warn�DeprecationWarning�
_python_build�_init_ntrUr��abiflags�AttributeErrorrqr�r��r!r �<module>r�sQ��	�	�����	�	�	�	�	�	�	�	�
�
�
�
�����������*�*�*�*�*�*�������������������������������������������:�� � ��
��
�I�������0�0�0�0����D�9�9�9�
��g�*�L�9�9���7�?�L�1�1��
f
�f
�f
�f
�^��	��#��l�����	�	�	�	�D�	����D5�D5�D5�N%*�%*�%*�%*�P**�**�**�**�**�**s�	B$�$B,�+B,

?>