ó
˛ĘSc           @   sz   d  d l  Z  d  d l m Z m Z m Z y d  d l m Z Wn! e k
 r_ d  d l m Z n Xd e f d     YZ	 d S(   i˙˙˙˙N(   t   CCompilerErrort   DistutilsExecErrort   DistutilsPlatformError(   t	   build_extt   optional_build_extc           B   s)   e  Z d  Z d   Z d   Z d   Z RS(   s\   This class subclasses build_ext and allows
       the building of C extensions to fail.
    c         C   s8   y t  j |   Wn  t k
 r3 } |  j |  n Xd  S(   N(   R   t   runR   t   _unavailable(   t   selft   e(    (    s   build_ext_2.pyR      s    c         C   sA   y t  j |  |  Wn& t t f k
 r< } |  j |  n Xd  S(   N(   R   t   build_extensionR    R   R   (   R   t   extR   (    (    s   build_ext_2.pyR	      s    c         C   sG   t  j d d IJt  j d IJt  j Jt  j | IJt  j d d IJd  S(   Nt   *iP   s   WARNING:

        An optional code optimization (C extension) could not be compiled.

        Optimizations for this package will not be available!(   t   syst   stderr(   R   R   (    (    s   build_ext_2.pyR      s    (   t   __name__t
   __module__t   __doc__R   R	   R   (    (    (    s   build_ext_2.pyR   
   s   		(
   R   t   distutils.errorsR    R   R   t   setuptools.command.build_extR   t   ImportErrort   distutils.command.build_extR   (    (    (    s   build_ext_2.pyt   <module>   s   