Your IP : 216.73.216.213
��Yf� � @ s� d Z d d l m Z d d l Z d d l Z d d l Z d d � Z d d � Z d d � Z e d
k r~ e
e d � d � d S)
z�
patchlevel.py
~~~~~~~~~~~~~
Extract version info from Include/patchlevel.h.
Adapted from Doc/tools/getversioninfo.
:copyright: 2007-2008 by Georg Brandl.
:license: Python license.
� )�print_functionNc C s6 t j j | d d d � } t j d � } i } t | � } zR xK | D]C } | j | � } | d k rF | j d d � \ } } | | | <qF WWd | j � Xd | d | d f } }
t | d
� } | d t
| � 7} | d } d
d d d d d i }
| d k r,| |
| t
t | d � � 7} |
| f S)Nz..ZIncludezpatchlevel.hz6\s*#define\s+([a-zA-Z][a-zA-Z_0-9]*)\s+([a-zA-Z_0-9]+)� � z%s.%sZPY_MAJOR_VERSIONZPY_MINOR_VERSIONZPY_MICRO_VERSION�.ZPY_RELEASE_LEVELZPY_RELEASE_LEVEL_ALPHA�aZPY_RELEASE_LEVEL_BETA�bZPY_RELEASE_LEVEL_GAMMA�rcZPY_RELEASE_LEVEL_FINALZPY_RELEASE_SERIAL)�os�path�join�re�compile�open�match�group�close�int�str)�srcdirZpatchlevel_hZrx�d�f�line�m�name�value�release�version�micro�level�suffixes� r �D/opt/alt/python35/lib64/python3.5/Doc/tools/extensions/patchlevel.py�get_header_version_info s*
"r"