Ńň
ĹŘĘKc           @   sÂ   d  d k  Z  d  d k Z d  d k Z d  d k l Z l Z d  d k l Z d  d k l Z d Z	 d Z
 d   Z d Z d d d	  Z e d
 j o- d  d k l Z e e d d  i     n d S(   i˙˙˙˙N(   t   newer_groupt   newer(   t   glob(   t   joini    c         C   s   t  i d  } t  i d  } t } yI |  d } x8 | D]0 } | i |  p | i |  o
 t } q8 q8 WWn t j
 o n X| S(   sJ   Returns true if needs c wrapper around cblas for calling from
    fortran.t
   Acceleratet   vecLibt   extra_link_args(   t   ret   compilet   Falset   searcht   Truet   KeyError(   t   infot   r_accelt   r_vect   rest   tmpstrt   i(    (    s   scipy\lib\blas\setup.pyt   needs_cblas_wrapper   s    
  sĘ   
python module cblas
  usercode void empty_module(void) {}
  interface
    subroutine empty_module()
      intent(c) empty_module
    end subroutine empty_module
  end interface
end python module cblas
t    c            s(  d d k  l } d d k l } | d |  |  } | d d d } g  } | i d g   D]+ \ } } | d	 j o | | d
 d !q[ q[ ~ d  g d   o d G GHn d   h g  d 6g  d 6}	 t oM d   |	 d i d i    |	 d i |	 d  |	 d i d i    n t	 o* t
   d    |	 d i d i    n t d d d d g }
 t |  o d d g f } n d d g } | i d d | d |
 d d g |	 d d g d |    f d   } | i d d | g d d  d! g d d g |	 d d g d | | i d"  | S(#   Ni˙˙˙˙(   t   Configuration(   t   get_infot   blast   blas_optt   notfound_actioni   t   define_macrost
   ATLAS_INFOi   iý˙˙˙i    s   ATLAS versionR   t   cblast   fblast   dbls   saxpy caxpysˇ   srotg crotg srotmg srot csrot srotm sswap cswap sscal cscal csscal scopy ccopy sdot cdotu cdotc snrm2 scnrm2 sasum scasum isamax icamax sgemv cgemv chemv ssymv strmv ctrmv sgemm cgemms   drotmg srotmg drotm srotms   fblas_l?.pyf.srcs   fblas.pyf.srcs   fblaswrap.f.srcs   fblaswrap_veclib_c.c.srct   sourcest   dependst   f2py_optionss   skip:t   :t
   extra_infoc            sĚ   |  i  i d  d } | d j p t |   d  j o` t |   d  } d d k l } | t |  o* t | d  } | i	 t
  | i   qČ n. |  i d } t i i |  d j p t  | S(	   Nt   .i˙˙˙˙R   s	   cblas.pyf(   R   t   wi    s   cblas.pyf.src(   t   namet   splitt   AssertionErrort   NoneR   t   distutils.dep_utilR   t   __file__t   opent   writet   tmpl_empty_cblas_pyft   closeR    t   ost   patht   basename(   t   extt	   build_dirR&   t   targetR   t   f(   t
   target_dirt   atlas_version(    s   scipy\lib\blas\setup.pyt   get_cblas_source^   s     s   cblas.pyf.srcs   cblas_l?.pyf.srct   tests(   t   numpy.distutils.misc_utilR   t   numpy.distutils.system_infoR   t   getR)   t   skip_single_routinest   extendR'   t   using_lapack_blasR   R+   R   t   add_extensiont   add_data_dir(   t   parent_packaget   top_pathR   R   t   configR   t   _[1]t   kt   vt
   skip_namesR    R   R9   (    (   R7   R8   s   scipy\lib\blas\setup.pyt   configuration2   sL    #3

		t   __main__(   t   setupRD   (   R0   t   sysR   R*   R    R   R   t   os.pathR   R>   R@   R   R.   R)   RJ   t   __name__t   numpy.distutils.coreRL   t   todict(    (    (    s   scipy\lib\blas\setup.pyt   <module>   s   	F