File: //lib64/python3.9/distutils/__pycache__/sysconfig.cpython-39.opt-1.pyc
a
    ���h�P  �                   @   s�  d Z ddlZddlZddlZddlZddlmZ ej�ej	�Z
ej�ej�Zej�ej
�Zej�ej�Zdejv r�ej�ejd �Zn&ejr�ej�ej�ej��Zne�� Zdd� Zeedd�Zejd	kr�d
d� Zee�Zee�Zdd
� Ze� ZdZze�sejZW n e �y   Y n0 dd� Z!d,dd�Z"d-dd�Z#dd� Z$dd� Z%dd� Z&d.dd�Z'e�(d�Z)e�(d�Z*e�(d�Z+d/d d!�Z,d"d#� Z-da.d$d%� Z/d&d'� Z0d(d)� Z1d*d+� Z2dS )0a�  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�   )�DistutilsPlatformErrorZ_PYTHON_PROJECT_BASEc                 C   s,   dD ]"}t j�t j�| d|��r dS qdS )N)ZSetupzSetup.localZModulesTF)�os�path�isfile�join)�d�fn� r
   �+/usr/lib64/python3.9/distutils/sysconfig.py�_is_python_source_dir*   s    r   �_home�ntc                 C   s0   | r,t j�| ��t j�t j�td���r,tS | S )NZPCbuild)r   r   �normcase�
startswithr   �PREFIX)r   r
   r
   r   �_fix_pcbuild3   s
    �r   c                   C   s   t rtt �S tt�S )N)�	_sys_homer   �project_baser
   r
   r
   r   �
_python_build;   s    r   � c                   C   s   dt jdd�  S )z�Return a string containing the major and minor Python version,
    leaving off the patchlevel.  Sample return values could be '1.5'
    or '2.2'.
    z%d.%dN�   )�sys�version_infor
   r
   r
   r   �get_python_versionO   s    r   c                 C   s�   |du r| rt pt}tjdkrjtrL| r.tp,tS tj�t	d�d�}tj�
|�S dt�  t }tj�|d|�S tjdkr�tr�tj�|d�tjj
 tj�|d� S tj�|d�S td	tj ��dS )
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�srcdirZInclude�pythonZincluder   �PCzFI don't know where Python installs its C header files on platform '%s')�BASE_EXEC_PREFIX�BASE_PREFIXr   �name�python_buildr   r   r   r   �get_config_var�normpathr   �build_flags�pathsepr   )�
plat_specific�prefixZincdirZ
python_dirr
   r
   r   �get_python_incW   s*    
���r)   c                 C   s�   |du r&|r| rt pt}n| r"tp$t}tjdkrr| s8|r@tj}nd}tj�	||dt
�  �}|rb|S tj�	|d�S n<tjdkr�|r�tj�	|d�S tj�	|dd�S ntdtj ��dS )	aS  Return 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   ZLibz?I don't know where Python installs its library on platform '%s')r   r    �EXEC_PREFIXr   r   r!   r   �
platlibdirr   r   r   r   )r'