
    жvg                         d dl Z d dlZd dlmZmZ dee         fdZdee         fdZdee         fdZdeeef         fdZ	dS )    N)OptionalTuplereturnc                  :    t                      pt                      S )z9Returns glibc version string, or None if not using glibc.)glibc_version_string_confstrglibc_version_string_ctypes     V/var/www/pixelcanvas.ch/venv/lib/python3.11/site-packages/pip/_internal/utils/glibc.pyglibc_version_stringr      s    '))J-H-J-JJr
   c                      t           j        dk    rdS 	 t          j        d          } | dS |                                 \  }}n# t
          t          t          f$ r Y dS w xY w|S )z@Primary implementation of glibc_version_string using os.confstr.win32NCS_GNU_LIBC_VERSION)sysplatformosconfstrsplitAttributeErrorOSError
ValueError)gnu_libc_version_versions      r   r   r      s~     |wt:&;<<#4%++--
77GZ0   tt Ns   A A AAc                  8   	 ddl } n# t          $ r Y dS w xY w	 |                     d          }n# t          $ r Y dS w xY w	 |j        }n# t
          $ r Y dS w xY w| j        |_         |            }t          |t                    s|
                    d          }|S )z=Fallback implementation of glibc_version_string using ctypes.r   Nascii)ctypesImportErrorCDLLr   gnu_get_libc_versionr   c_char_prestype
isinstancestrdecode)r   process_namespacer    version_strs       r   r   r      s       tt "KK--   tt0E    tt $*? ++--Kk3'' 2!((11s*    
/ 
==A	 	
AAc                  .    t                      } | dS d| fS )zTry to determine the glibc version

    Returns a tuple of strings (lib, version) which default to empty strings
    in case the lookup fails.
    N) r)   glibc)r   )glibc_versions    r   libc_verr,   [   s%     )**Mx''r
   )
r   r   typingr   r   r$   r   r   r   r,   r	   r
   r   <module>r.      s    				 



 " " " " " " " "Khsm K K K K
hsm    ((Xc] ( ( ( (x
(%S/ 
( 
( 
( 
( 
( 
(r
   