ó
ØÆ÷Xc           @` s›  d  d l  m Z m Z m Z d  d l Z d  d l Td e j k r˜ e Z d  d l	 m
 Z d  d l m Z y d  d l m Z Wq® e k
 r” e Z q® Xn d  d l m
 Z e Z d  d l Z d  d l Z d  d l Z d  d l m Z d  d	 l m Z d  d
 l m Z m Z m Z m Z m Z m Z m Z m  Z  m! Z! m" Z" m# Z# m$ Z$ m% Z% m& Z& d  d l' m( Z( m) Z) m* Z* i e j d 6e j d 6e  j  d 6e j+ d 6e j, d 6e j d 6e j d 6e j d 6e j d 6e! j! d 6e" j" d 6e# j# d 6e& j& d 6e$ j$ d 6e% j% d 6Z- e r[d  d l m. Z. m/ Z/ e j e- d <e. j. e- d <e j e- d <e/ j/ e- d <n  d  „  Z0 g  d! „ Z1 e d" „ Z2 d# „  Z
 d$ „  Z3 d% „  Z4 d S(&   i    (   t   divisiont   absolute_importt   print_functionN(   t   *t
   setuptools(   t   setup(   t   easy_install(   t	   bdist_egg(   t	   Extension(   t   NumpyDistribution(   t   configt   config_compilert   buildt   build_pyt	   build_extt
   build_clibt	   build_srct   build_scriptst   sdistt   install_datat   install_headerst   installt	   bdist_rpmt   install_clib(   t   get_data_filest   is_sequencet	   is_stringR   R   R   t	   config_cct	   config_fcR
   R   R   R   R   R   R   R   R   R   (   t   developt   egg_infoR   R   R   R   c         K` sç   xà | j  ƒ  D]Ò \ } } | |  k r5 | |  | <q n  |  | } t | t ƒ re | t | ƒ |  | <q t | t ƒ r‹ | t | ƒ |  | <q t | t ƒ rª t | |  q t | ƒ rÇ | | |  | <q t t t	 | ƒ ƒ ƒ ‚ q Wd  S(   N(
   t   itemst
   isinstancet   tuplet   listt   dictt   _dict_appendR   t	   TypeErrort   reprt   type(   t   dt   kwst   kt   vt   dv(    (    s3   /tmp/pip-build-X4mzal/numpy/numpy/distutils/core.pyR$   9   s    

c         C` sÀ   |  r |  d St  } g  t j D] } d | ^ q } x3 t j D]( } | d r> | j d | d ƒ q> q> WxB t j D]7 } | j d ƒ s¡ | d k s¡ | | k rt t } Pqt qt W|  j | ƒ | S(   sT    Return True if command line does not contain any
    help or display requests.
    i    s   --i   t   -s   --helps   -h(	   t   Truet   Distributiont   display_option_namest   display_optionst   appendt   syst   argvt
   startswitht   False(   t   _cachet   okt   nt   display_optst   ot   arg(    (    s3   /tmp/pip-build-X4mzal/numpy/numpy/distutils/core.pyt   _command_line_okJ   s     
'c         C` sU   t  j j } | d  k	 r3 d t | ƒ k r3 d  } n  |  rQ | d  k rQ t ƒ  } n  | S(   Nt   DistributionWithoutHelpCommands(   t	   distutilst   coret   _setup_distributiont   NoneR&   R	   (   t   alwayst   dist(    (    s3   /tmp/pip-build-X4mzal/numpy/numpy/distutils/core.pyt   get_distribution\   s    	c          K` s=  t  j ƒ  } |  j ƒ  } d | k r8 | j | d ƒ n  | | d <d | k r| j d ƒ } t j j } t j j } d  t j _ d t j _ z t	 |   } Wd  | t j _ | t j _ X| j
 sÌ t ƒ  rÐ | S| ƒ  } t | d ƒ r÷ | j ƒ  } n  t | |  n  g  } x¤ | j d g  ƒ D] }	 g  }
 xx |	 j D]m } t | ƒ rt| \ } } t | | | ƒ |
 j | ƒ q6t | ƒ r|
 j | ƒ q6t d | f ƒ ‚ q6W|
 |	 _ q W| rød | k rÓg  | d <n  x" | D] } t | d | ƒ qÚWn  d | k sd | k r)d | k r)g  | d <n  t | d	 <t |   S(
   Nt   cmdclasst   configurationt   commandlinet   todictt   ext_moduless2   invalid description of extension module library %rt	   librariest   headerst	   distclass(   t   numpy_cmdclasst   copyt   updatet   popR?   R@   RA   t   _setup_stop_afterRB   R   t   helpR=   t   hasattrRI   R$   t   getRK   R   t   _check_append_ext_libraryR2   R   R%   t   _check_append_libraryR	   t	   old_setup(   t   attrRF   t   new_attrRG   t   old_distt   old_stopRD   R
   RK   t   extt   new_librariest   itemt   lib_namet
   build_info(    (    s3   /tmp/pip-build-X4mzal/numpy/numpy/distutils/core.pyR   k   sX    
	
c         C` s  xý |  D]õ } t  | ƒ r« t  | ƒ rv | d | d k r¨ | d | d k rQ d  St j d | d f d d ƒPq¨ qü | | d k rü t j d | d f d d ƒPqü q t  | ƒ rì | d | k rü t j d | d f d d ƒPqü q | | k r d  Sq W|  j | ƒ d  S(   Ni    i   s8   [0] libraries list contains %r with different build_infot
   stackleveli   s1   [1] libraries list contains %r with no build_infos1   [2] libraries list contains %r with no build_info(   R   t   warningst   warnR2   (   RK   R_   t   libitem(    (    s3   /tmp/pip-build-X4mzal/numpy/numpy/distutils/core.pyRW   «   s0    			c         C` s£   x‰ |  D] } t  | ƒ r^ | d | k rˆ | d | k r= d  St j d | f d d ƒPqˆ q | | k r t j d | f d d ƒPq q W|  j | | f ƒ d  S(   Ni    i   s8   [3] libraries list contains %r with different build_infoRb   i   s1   [4] libraries list contains %r with no build_info(   R   Rc   Rd   R2   (   RK   R`   Ra   R_   (    (    s3   /tmp/pip-build-X4mzal/numpy/numpy/distutils/core.pyRV   È   s    	
	
(5   t
   __future__R    R   R   R3   t   distutils.coret   modulesR.   t   have_setuptoolsR   R   RX   t   setuptools.commandR   R   t   ImportErrorR6   Rc   R?   t   distutils.distt   numpy.distutils.extensionR   t"   numpy.distutils.numpy_distributionR	   t   numpy.distutils.commandR
   R   R   R   R   R   R   R   R   R   R   R   R   R   t   numpy.distutils.misc_utilR   R   R   R   R   RN   R   R   R$   R=   RE   RW   RV   (    (    (    s3   /tmp/pip-build-X4mzal/numpy/numpy/distutils/core.pyt   <module>   s\   
^












		@	