ó
Àfc @@ s d Z d d l m Z d d l Z d d l Z d d l Z d d l Z d d l Z d d l Z d d l
m Z d d l m
Z
e j d ƒ Z d „ Z d „ Z d
„ Z d „ Z d „ Z e e d
„ Z d „ Z d „ Z d „ Z d „ Z d „ Z d e d d d d „ Z e ƒ Z d S( s2 Generate and work with PEP 425 Compatibility Tags.i ( t absolute_importN( t OrderedDicti ( t glibcs (.+)_(\d+)_(\d+)_(.+)c C@ sE y t j | ƒ SWn- t k
r@ } t j d j | ƒ t ƒ d SXd S( Ns {}( t sysconfigt get_config_vart IOErrort warningst warnt formatt RuntimeWarningt None( t vart e( ( s9 /usr/lib/python2.7/site-packages/setuptools/pep425tags.pyR s
c C@ sU t t d ƒ r d } n9 t j j d ƒ r3 d } n t j d k rK d } n d } | S( s' Return abbreviated implementation name.t pypy_version_infot ppt javat jyt clit ipt cp( t hasattrt syst platformt
startswith( t pyimpl( ( s9 /usr/lib/python2.7/site-packages/setuptools/pep425tags.pyt
get_abbr_impl s c C@ sD t d ƒ } | s" t ƒ d k r@ d j t t t ƒ ƒ ƒ } n | S( s Return implementation version.t py_version_nodotR t ( R R t joint mapt strt get_impl_version_info( t impl_ver( ( s9 /usr/lib/python2.7/site-packages/setuptools/pep425tags.pyt get_impl_ver( s c C@ sK t ƒ d k r/ t j d t j j t j j f St j d t j d f Sd S( sQ Return sys.version_info-like tuple for use in decrementing the minor
version.R i i N( R R t version_infoR
t majort minor( ( ( s9 /usr/lib/python2.7/site-packages/setuptools/pep425tags.pyR 0 s
c C@ s d j t ƒ t ƒ ƒ S( s;
Returns the Tag for this specific implementation.
s {}{}( R R R! ( ( ( s9 /usr/lib/python2.7/site-packages/setuptools/pep425tags.pyt get_impl_tag; s c C@ sN t | ƒ } | d k rD | r= t j d j | ƒ t d ƒ n | ƒ S| | k S( sg Use a fallback method for determining SOABI flags if the needed config
var is unset or unavailable.s? Config variable '{0}' is unset, Python ABI tag may be incorrecti N( R R
R R R R ( R t fallbackt expectedR t val( ( s9 /usr/lib/python2.7/site-packages/setuptools/pep425tags.pyt get_flagB s c @ sm t d ƒ } t ƒ ‰ | r
ˆ d d h k r
t t d ƒ r
d } d } d } t d d „ d ˆ d k ƒrv d } n t d
‡ f d † d ˆ d k ƒr£ d } n t d
d „ d d d ˆ d k oÐ t j d k ƒrî t j d k rî d } n d ˆ t ƒ | | | f } n\ | r<| j d ƒ r<d | j d ƒ d } n- | rc| j d d ƒ j d d ƒ } n d } | S( sX Return the ABI tag based on SOABI (if available) or emulate SOABI
(CPython 2, PyPy).t SOABIR R t
maxunicodeR t Py_DEBUGc S@ s
t t d ƒ S( Nt gettotalrefcount( R R ( ( ( s9 /usr/lib/python2.7/site-packages/setuptools/pep425tags.pyt