v]c@`s dZddlmZmZmZddlZddlZddlZddlZddl Z ddl Z ddl m Z ddl m Z ejddkrddlmZddlmZn ddlmZddlmZdd lmZdd lmZddlZdd lmZdd lmZdd lmZmZmZddl m!Z!m"Z"m#Z#ddl$m%Z&ddl'm(Z(ddl)m*Z*ddl)m+Z+ddl,Zddl-Z-ddl.Z.ddl/Z/idd6dd6Z0e0e/j1dZ2dZ3dZ4ej/dkrdej5j6ej7j8dga9gZ:ga;dgZ<gZ=gZ>ddgZ?dgZ@ge?D]ZAeAjBd ejC^q{Z?ge@D]ZAeAjBd ejC^qZ@d!ZDejddfkre.jEd"ZFeFrej5jGeFZHe/j1dkr$d#ZInd$ZIej5j6eHd%ZJxDej5j6eJeId&ej5j6eJeId'gD]ZKeDeKqrWne.jEd(ZLeLrej5jGeLZMeDej5j6eMd)d*eDej5j6eMd*nnne4d+d,d-d.d/ge2a9gZ:d0d1d2d3d4d5d6ga;dd7d8d9gZ<e4d:d;d-ge2Z=d<d=d2gZ>ej5jNd>re d?ZOeOrej5jPeOddZQe=jReQd>ge>jRd@dAgnneSZTzy:eUejVdBZTe jWdCdDgdEe jXdFeTZYWneZefk r,nmXe[eYj\dj]j^Z_eYj`dkre=ej5j6dGe_g7Z=t9ej5j6dGe_g7a9nWdeTeSk reTjanXej5j6ejbdt9kr8t9jcdej5j6ejbdt;jdej5j6ejbde<jdej5j6ejbdHngt9D]Zeej5jfeer]ee^q?a9ge:D]Zeej5jfeeree^qjZ:gt;D]Zeej5jfeeree^qa;ge<D]Zeej5jfeeree^qZ<e#ZgdIZhddJZidKefdLYZjdMejfdNYZkdOejfdPYZldQelfdRYZmdSejfdTYZndUenfdVYZodWejfdXYZpdYejfdZYZqd[ejfd\YZrd]ejfd^YZsd_ejfd`YZtdaeufdbYZvdcevfddYZwdeevfdfYZxdgexfdhYZydiexfdjYZzdkexfdlYZ{dmexfdnYZ|doexfdpYZ}dqexfdrYZ~dsexfdtYZduevfdvYZdwevfdxYZdyefdzYZd{efd|YZd}evfd~YZdefdYZdefdYZdefdYZdefdYZdefdYZdefdYZdefdYZdefdYZdefdYZdefdYZdefdYZdevfdYZdevfdYZdZiZdZdevfdYZdevfdYZdevfdYZdefdYZdefdYZdefdYZdefdYZdevfdYZdevfdYZdevfdYZdevfdYZdefdYZdefdYZdefdYZdevfdYZdevfdYZdevfdYZdevfdYZdevfdYZdefdYZdefdYZdefdYZdefdYZdefdYZdefdYZdefdYZdefdYZdefdYZdefdYZdevfdYZdevfdYZdZidd6dd6dd6dd6Zidd6dd6dd6dd6ZdZeSfdZeSdZedkr endS(sk This file defines a set of system_info classes for getting information about various resources (libraries, library directories, include directories, etc.) in the system. Currently, the following classes are available: atlas_info atlas_threads_info atlas_blas_info atlas_blas_threads_info lapack_atlas_info lapack_atlas_threads_info atlas_3_10_info atlas_3_10_threads_info atlas_3_10_blas_info, atlas_3_10_blas_threads_info, lapack_atlas_3_10_info lapack_atlas_3_10_threads_info blas_info lapack_info openblas_info blis_info blas_opt_info # usage recommended lapack_opt_info # usage recommended fftw_info,dfftw_info,sfftw_info fftw_threads_info,dfftw_threads_info,sfftw_threads_info djbfft_info x11_info lapack_src_info blas_src_info numpy_info numarray_info numpy_info boost_python_info agg2_info wx_info gdk_pixbuf_xlib_2_info gdk_pixbuf_2_info gdk_x11_2_info gtkp_x11_2_info gtkp_2_info xft_info freetype2_info umfpack_info Usage: info_dict = get_info() where is a string 'atlas','x11','fftw','lapack','blas', 'lapack_src', 'blas_src', etc. For a complete list of allowed names, see the definition of get_info() function below. Returned info_dict is a dictionary which is compatible with distutils.setup keyword arguments. If info_dict == {}, then the asked resource is not available (system_info could not find it). Several *_info classes specify an environment variable to specify the locations of software. When setting the corresponding environment variable to 'None' then the software will be ignored, even when it is available in system. Global parameters: system_info.search_static_first - search static libraries (.a) in precedence to shared ones (.so, .sl) if enabled. system_info.verbosity - output the results to stdout if enabled. The file 'site.cfg' is looked for in 1) Directory of main setup.py file being run. 2) Home directory of user running the setup.py file as ~/.numpy-site.cfg 3) System wide directory (location of this file...) The first one found is used to get system configuration options The format is that used by ConfigParser (i.e., Windows .INI style). The section ALL has options that are the default for each section. The available sections are fftw, atlas, and x11. Appropriate defaults are used if nothing is specified. The order of finding the locations of resources is the following: 1. environment variable 2. section in site.cfg 3. ALL section in site.cfg Only the first complete match is returned. Example: ---------- [ALL] library_dirs = /usr/lib:/usr/local/lib:/opt/lib include_dirs = /usr/include:/usr/local/include:/opt/include src_dirs = /usr/local/src:/opt/src # search static libraries (.a) in preference to shared ones (.so) search_static_first = 0 [fftw] fftw_libs = rfftw, fftw fftw_opt_libs = rfftw_threaded, fftw_threaded # if the above aren't found, look for {s,d}fftw_libs and {s,d}fftw_opt_libs [atlas] library_dirs = /usr/lib/3dnow:/usr/lib/3dnow/atlas # for overriding the names of the atlas libraries atlas_libs = lapack, f77blas, cblas, atlas [x11] library_dirs = /usr/X11R6/lib include_dirs = /usr/X11R6/include ---------- Authors: Pearu Peterson , February 2002 David M. Cooke , April 2002 Copyright 2002 Pearu Peterson all rights reserved, Pearu Peterson Permission to use, modify, and distribute this software is given under the terms of the NumPy (BSD style) license. See LICENSE.txt that came with this distribution for specifics. NO WARRANTY IS EXPRESSED OR IMPLIED. USE AT YOUR OWN RISK. i(tdivisiontabsolute_importtprint_functionN(tglob(treducei(t NoOptionError(tRawConfigParser(tDistutilsError(t Distribution(tlog(t get_platform(tfind_executabletfilepath_from_subprocess_outputt get_pythonexe(t is_sequencet is_stringtget_shared_lib_extension(tconfig(t get_exception(tcustomized_ccompiler(t _shell_utilsi t32biti@t64bitcC`sC|jdd}|jdd}|jdd}dj|S(sS Convert a python string into a literal suitable for inclusion into C code s\s\\t"s\"s s\ns"{}"(treplacetformat(ts((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyt_c_string_literalscC`s]|dkrtdn|dkr+|Sg}x%|D]}|j|d|gq8W|S(sReturn a list of library paths valid on 32 or 64 bit systems. Inputs: paths : sequence A sequence of strings (typically paths) bits : int An integer, the only valid values are 32 or 64. A ValueError exception is raised otherwise. Examples: Consider a list of directories >>> paths = ['/usr/X11R6/lib','/usr/X11/lib','/usr/lib'] For a 32-bit platform, this is already valid: >>> np.distutils.system_info.libpaths(paths,32) ['/usr/X11R6/lib', '/usr/X11/lib', '/usr/lib'] On 64 bits, we prepend the '64' postfix >>> np.distutils.system_info.libpaths(paths,64) ['/usr/X11R6/lib64', '/usr/X11R6/lib', '/usr/X11/lib64', '/usr/X11/lib', '/usr/lib64', '/usr/lib'] i i@s+Invalid bit size in libpaths: 32 or 64 onlyt64(i i@(t ValueErrortextend(tpathstbitstouttp((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pytlibpathss   twin32sC:\tlibst.tincludesinclude/suitesparsetlibt/c`sPtjjtjfdtDtjfdtDdS(s5Add a package manager root to the include directoriesc3`s$|]}tjj|VqdS(N(tostpathtjoin(t.0td(t library_root(sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pys sc3`s$|]}tjj|VqdS(N(R*R+R,(R-R.(R/(sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pys sN(R*R+tnormpathtdefault_lib_dirsRt _lib_dirstdefault_include_dirst _include_dirs(R/((R/sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pytadd_system_roots tvcpkgtx86tx64t installeds-windowss-windows-statictcondas..tLibrarys/usr/local/libs/opt/libs/usr/libs/opt/local/libs/sw/libs/usr/local/includes /opt/includes /usr/includes/opt/local/include/ufsparses/opt/local/includes /sw/includes/usr/include/suitesparses/usr/local/srcs/opt/srcs/sw/srcs/usr/X11R6/libs /usr/X11/libs/usr/X11R6/includes/usr/X11/includes /usr/lib/X11s/usr/lib/*/libX11.sos/usr/lib/X11/includes/usr/include/X11twtgccs-print-multiarchtstdouttstderrs /usr/lib/tsrccC`sg}y t}Wntk r0tjd}nTXtjjtjjtjj|d|}tjj |r|j |nytjj d}Wnt k rn8Xtjj||}tjj |r|j |ntjj |r|j tjj|n|S(sReturns a list of files named 'fname' from 1) System-wide directory (directory-location of this module) 2) Users HOME directory (os.environ['HOME']) 3) Local directory it~( t__file__t NameErrortsystargvR*R+R,tsplittabspathtisfiletappendt expandusertKeyError(tfnamet filenamestftsysfilet user_file((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pytget_standard_fileQs&  (  cC`si?td6td6td6td6td6td6td6td6td 6t d 6t d 6t d 6t d 6t d6td6td6td6td6td6td6td6td6td6td6td6td6td6td6td6td6td6td 6t d!6t!d"6t"d#6t#d$6t$d%6t%d&6t%d'6t&d(6t'd)6t(d*6t)d+6t*d,6t+d-6t,d.6t-d/6t-d06t.d16t.d26t/d36t0d46t0d56t1d66t1d76t2d86t2d96t3d:6t3d;6t4d<6t5d=6t6d>6t7d?6j8|j9t:}|j;|S(@sg notfound_action: 0 - do nothing 1 - display warning message 2 - raise error tatlast atlas_threadst atlas_blastatlas_blas_threadst lapack_atlastlapack_atlas_threadst atlas_3_10tatlas_3_10_threadstatlas_3_10_blastatlas_3_10_blas_threadstlapack_atlas_3_10tlapack_atlas_3_10_threadstmkltopenblastopenblas_lapacktopenblas_clapacktblist lapack_mkltblas_mklt acceleratetx11tfft_opttfftwtfftw2tfftw3tdfftwtsfftwt fftw_threadst dfftw_threadst sfftw_threadstdjbffttblastlapackt lapack_srctblas_srctnumpytf2pytNumerictnumerictnumarraytnumerixt lapack_opttblas_optt boost_pythontagg2twxtgdk_pixbuf_xlib_2sgdk-pixbuf-xlib-2.0t gdk_pixbuf_2sgdk-pixbuf-2.0tgdktgdk_2sgdk-2.0t gdk_x11_2s gdk-x11-2.0t gtkp_x11_2s gtk+-x11-2.0tgtkp_2sgtk+-2.0txftt freetype2tumfpacktamd(<t atlas_infotatlas_threads_infotatlas_blas_infotatlas_blas_threads_infotlapack_atlas_infotlapack_atlas_threads_infotatlas_3_10_infotatlas_3_10_threads_infotatlas_3_10_blas_infotatlas_3_10_blas_threads_infotlapack_atlas_3_10_infotlapack_atlas_3_10_threads_infotmkl_infot openblas_infotopenblas_lapack_infotopenblas_clapack_infot blis_infotlapack_mkl_infot blas_mkl_infotaccelerate_infotx11_infot fft_opt_infot fftw_infot fftw2_infot fftw3_infot dfftw_infot sfftw_infotfftw_threads_infotdfftw_threads_infotsfftw_threads_infot djbfft_infot blas_infot lapack_infotlapack_src_infot blas_src_infot numpy_infot f2py_infot Numeric_infot numarray_infot numerix_infotlapack_opt_infot blas_opt_infotboost_python_infot agg2_infotwx_infotgdk_pixbuf_xlib_2_infotgdk_pixbuf_2_infotgdk_infot gdk_2_infotgdk_x11_2_infotgtkp_x11_2_infot gtkp_2_infotxft_infotfreetype2_infot umfpack_infotamd_infotgettlowert system_infotget_info(tnametnotfound_actiontcl((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRus  t NotFoundErrorcB`seZdZRS(s1Some third-party program or library is not found.(t__name__t __module__t__doc__(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRstAtlasNotFoundErrorcB`seZdZRS(s Atlas (http://math-atlas.sourceforge.net/) libraries not found. Directories to search for the libraries can be specified in the numpy/distutils/site.cfg file (section [atlas]) or by setting the ATLAS environment variable.(RRR(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRstLapackNotFoundErrorcB`seZdZRS(s Lapack (http://www.netlib.org/lapack/) libraries not found. Directories to search for the libraries can be specified in the numpy/distutils/site.cfg file (section [lapack]) or by setting the LAPACK environment variable.(RRR(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRstLapackSrcNotFoundErrorcB`seZdZRS(s Lapack (http://www.netlib.org/lapack/) sources not found. Directories to search for the sources can be specified in the numpy/distutils/site.cfg file (section [lapack_src]) or by setting the LAPACK_SRC environment variable.(RRR(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRstBlasNotFoundErrorcB`seZdZRS(s Blas (http://www.netlib.org/blas/) libraries not found. Directories to search for the libraries can be specified in the numpy/distutils/site.cfg file (section [blas]) or by setting the BLAS environment variable.(RRR(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRstBlasSrcNotFoundErrorcB`seZdZRS(s Blas (http://www.netlib.org/blas/) sources not found. Directories to search for the sources can be specified in the numpy/distutils/site.cfg file (section [blas_src]) or by setting the BLAS_SRC environment variable.(RRR(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRstFFTWNotFoundErrorcB`seZdZRS(s FFTW (http://www.fftw.org/) libraries not found. Directories to search for the libraries can be specified in the numpy/distutils/site.cfg file (section [fftw]) or by setting the FFTW environment variable.(RRR(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRstDJBFFTNotFoundErrorcB`seZdZRS(s DJBFFT (https://cr.yp.to/djbfft.html) libraries not found. Directories to search for the libraries can be specified in the numpy/distutils/site.cfg file (section [djbfft]) or by setting the DJBFFT environment variable.(RRR(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRstNumericNotFoundErrorcB`seZdZRS(sw Numeric (https://www.numpy.org/) module not found. Get it from above location, install it, and retry setup.py.(RRR(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRstX11NotFoundErrorcB`seZdZRS(sX11 libraries not found.(RRR(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRstUmfpackNotFoundErrorcB`seZdZRS(s UMFPACK sparse solver (https://www.cise.ufl.edu/research/sparse/umfpack/) not found. Directories to search for the libraries can be specified in the numpy/distutils/site.cfg file (section [umfpack]) or by setting the UMFPACK environment variable.(RRR(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRsRcB`seZdZdZdZdZdZiZe Z e e ddZ dZdZdZdZd Zdd Zd Zd d ZddZddZddZdZddZdZgdZgdZdZdZdZ dZ!RS(s= get_info() is the only public method. Don't use others. tALLiicC`s#i|j_g|_itjj|d6tjj|d6tjjtd6dd6tjjtd6t|j d6dd6dd 6}t ||_ g|_ |j j td |j j td |j|jdk r|j j|jd|_ nt|j tstdS( Nt library_dirst include_dirstruntime_library_dirsttrpathtsrc_dirstsearch_static_firsttextra_compile_argstextra_link_argss.numpy-site.cfgssite.cfg(t __class__tinfotlocal_prefixesR*tpathsepR,tdefault_runtime_dirstdefault_src_dirststrRt ConfigParsertcptfilesRRQtparse_config_filestsectiontNonet getbooleant isinstancetinttAssertionError(tselfR1R3t verbositytdefaults((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyt__init__s$     cC`sT|jj|j|jj|jsP|jdk rP|jj|jqPndS(N(RtreadRt has_sectionRRt add_section(R((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyR5scC`s|j}|j}|j}|j|jddi}x|D]}|j||g}|dk rt||ntjd||rJ|j||g}|dk r|d=|j d|d4000k) Follow the instructions in the KNOWN PROBLEMS section of the file numpy/INSTALL.txt. ********************************************************************* tf77(RN(RNi>(RR;R t _lib_atlast _lib_lapackRRJRKR RRR5R*R+R#RR RRRDR@RIRER,texistststattget_atlas_version(RRGRRRRRRrtatlas_1R.RVt lib_dirs2Rthtmessaget lapack_dirt lapack_namet lapack_libRNR+ROtfntszt atlas_versiontatlas_extra_info((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRks                          ( RRRR!R RDR@RRRRR4R(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRVs      RcB`seZddgZdZRS(RRc C`s |j}i}|jd|j|j}|j||g}|dkrSdS|j}|j||dp{dg}|d}|rtj j |}t |d|gnd|d  !       (0044+(RRRR!RRR4R(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyR<s  s /* This file is generated from numpy/distutils/system_info.py */ void ATL_buildinfo(void); int main(void) { ATL_buildinfo(); return 0; } c K`s|jdg}|jdg}t|t|f}|tkrPt|Stt}d}i}y|jtd|d|dtj dk\}}|r+t j d|t j r+|jtd|dgd|dtj dk\}}|s+t jddd t|d d d dgq+nWntk rxH|D]@}t j d|} | rs| jd}n|dk rCPqCqCW|dkrtjjdd}n|rt|d dt|fgnt|d dg|pd|fSX|s*t j d|} | r*| jd}q*n|dkrzt j d|t j rWd}qztjd|tjd|n|dkrt|d dgnt|d dt|fg||f} t|<| S(NRRtuse_teeis!undefined reference to `_gfortrantgfortrans3 ***************************************************** Linkage with ATLAS requires gfortran. Use python setup.py config_fc --fcompiler=gnu95 ... when building extension libraries that use ATLAS. Make sure that -lgfortran is used for C++ extensions. ***************************************************** RiRtf90R_tATLAS_REQUIRES_GFORTRANs#ATLAS_(?P\d+[.]\d+[.]\d+)_tversiont ATLAS_VERSIONt ATLAS_INFOt NO_ATLAS_INFOis?.?.?s*ATLAS version (?P\d+[.]\d+[.]\d+)sundefined symbol: ATL_buildinfos3.2.1_pre3.3.6s Status: %ds Output: %si(RN(Ri(Ri(Rttuplet_cached_atlas_versiont cmd_configRRt get_outputtatlas_version_c_textRRtretsearchtMRRRt ExceptiontgroupR*R"RR R( RRRRRBRRRtoRtresult((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRsf               RcB`seZeZdZRS(c C`std}|r#|j|dStd}|rF|j|dStd}|ri|j|dStd}|std}n|std}n|std}ntd}|r| r|j|dSd }d }i}|r2|jd g}d|ks d|kr)d }n|}n5tjtjddd }d }t|d dg|rtd} | rt|| qtjt jddtd} | stjt jdddSt|dd| fgn|rstd} | rt|| qstjt jddtd} | sWtjt jdddSt|dd| fgn|j|dS(NRcR`RaRYRXRSRRReiR_RRiRiRRrRsRt flapack_srcRqRtt fblas_src(RN(RN(Ri( RR RRRRRRRRRRR( RRRRRt need_lapackt need_blasRR,RRRR((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyR st                   (RRRRR(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRsRcB`seZeZdZRS(c C`std}|r#|j|dStd}|rF|j|dStd}|ri|j|dStd}|std}n|std}n|std}ntd}|r| r|j|dSd }i}|r|}n/tjtjd d d }t|d dg|rtd}|rPt||qtjtjd d td} | stjtjd d dSt|dd| fgn|j|dS(NRdRbR_R[RZRURTReiRiiR_RRqRtRR(Ri( RR RRRRRRR( RRRRRRRRRR((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRXsT              (RRRRR(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRTsRcB`s5eZdZdZdgZeZdZdZRS(RqtBLAScC`s|j}|jd|j}|j||g}|dkrFdS|j|d int main(int argc, const char *argv[]) { double a[4] = {1,2,3,4}; double b[4] = {5,6,7,8}; return cblas_ddot(4, a, 1, b, 1) > 10; }ssource.ctwtt output_dirRsa.outRRRtextra_postargsRRq(RLRttempfiletmkdtempR*R+R,RztwritetcompileR5tlink_executableRt distutilst ccompilert LinkErrort CompileErrorRtshutiltrmtree( RRRRBttmpdirRR@RNtobj((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRs6       ( RRRR!R RRRR(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRs   RcB`s>eZdZdZdgZeZdZdZdZ RS(R_tOPENBLAScC`stS(N(R`(RR((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pytcheck_embedded_lapacksc C`sLt}|j}|jd|j}||jkrQ|jd|j}n|j||g}|jdkr|dkrddlm}|d|}|r|jdkr|j ||}t }qn|rt }d|d t_PYTHON_HOST_PLATFORMiti386tinteltx86_64iis0/System/Library/Frameworks/Accelerate.framework/s-msse3s -faltivecs5-I/System/Library/Frameworks/vecLib.framework/Headerss-Wl,-frameworks-Wl,Accelerates,/System/Library/Frameworks/vecLib.framework/s -Wl,vecLibRRR_RiR(Ri(RN(R*R"RR;R8RRDR@tgetenvRR R+RRR (RRR(RWt link_argsR((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRlsH %"     (RRRRRR(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRhsRcB`s,eZdZdZeZdZdZRS(RttBLAS_SRCcC`sxtj|||}g}x1|D])}|j|g|j|dgq"Wg|D]}tjj|rV|^qVS(NRq(RR4RRKR*R+R'(RRRRqRR.((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyR4s  'c C`s|j}d}x9|D]1}tjjtjj|dr|}PqqW|sXdSd}d}d}g|||jD]}tjj||d^q}g|D]}tjj|r|^q}i|d6dd 6} |j| dS( NRsdaxpy.fso caxpy csscal dnrm2 dzasum saxpy srotg zdotc ccopy cswap drot dznrm2 scasum srotm zdotu cdotc dasum drotg icamax scnrm2 srotmg zdrot cdotu daxpy drotm idamax scopy sscal zdscal crotg dcabs1 drotmg isamax sdot sswap zrotg cscal dcopy dscal izamax snrm2 zaxpy zscal csrot ddot dswap sasum srot zcopy zswap scabs1 s cgbmv chpmv ctrsv dsymv dtrsv sspr2 strmv zhemv ztpmv cgemv chpr dgbmv dsyr lsame ssymv strsv zher ztpsv cgerc chpr2 dgemv dsyr2 sgbmv ssyr xerbla zher2 ztrmv cgeru ctbmv dger dtbmv sgemv ssyr2 zgbmv zhpmv ztrsv chbmv ctbsv dsbmv dtbsv sger stbmv zgemv zhpr chemv ctpmv dspmv dtpmv ssbmv stbsv zgerc zhpr2 cher ctpsv dspr dtpsv sspmv stpmv zgeru ztbmv cher2 ctrmv dspr2 dtrmv sspr stpsv zhbmv ztbsv s cgemm csymm ctrsm dsyrk sgemm strmm zhemm zsyr2k chemm csyr2k dgemm dtrmm ssymm strsm zher2k zsyrk cher2k csyrk dsymm dtrsm ssyr2k zherk ztrmm cherk ctrmm dsyr2k ssyrk zgemm zsymm ztrsm s.fRRR(R6R*R+RHR,RFR ( RRRR.tblas1tblas2tblas3RNRR((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRs   ! 7+(RRRR!RRR4R(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRs  RcB`s&eZdZeZdZdZRS(RfcC`stj|dtdtdS(NR1R3(RRtdefault_x11_lib_dirstdefault_x11_include_dirs(R((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRs cC`stjdkrdS|j}|j}|jddg}|j||g}|dkredSd}x*|D]"}|j|drr|}PqrqrW|dk rt|d|gn|j |dS(NR$tx11_libstX11sX11/X.hR(R$( RDR@RR5R;RRRKRR (RRGRRRtinc_dirR.((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRs      (RRRRRRR(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRs t _numpy_infocB`s,eZdZdZeZdZdZRS(RwcC`sg}yt|j}g}x:|jjtjD]#}|dkrJPn|j|q4Wy|jt|dWntk rnX|jt j j dtjj |Wnt k rnXt j j }|j|t j j dt}||kr|j|nxKtD]C}tjj |tjj|}||kr|j|qqWtj|dgd|dS(NR(t get_includeROt plat_specificR1R3(t __import__t modulenameRBRFR*R{RIR$tAttributeErrorRt sysconfigtget_python_incR,t ImportErrorR`R3R+R%RR(RRtmoduleRORt py_incl_dirt py_pincl_dirR.((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRs8      !  c C`sAyt|j}Wntk r'dSXi}g}xmddgD]_}t||d}|dkrkqAn|jjdt|f|jjdfg}PqAWt|d||j}d}x<|D]4}|j |t j j |jdr|}PqqW|dk r't|d|gn|r=|j |ndS(Nt __version__Rt_VERSIONR_s arrayobject.hR(R!R"R&R$RtupperRRR5RKR*R+R,R ( RR'RR[RtvrsRRR.((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRs8        (RRRR"RRRR(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRs  "RcB`seZdZdZRS(Ry(RRRR"(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyR3sRcB`seZdZdZRS(Rw(RRRR"(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyR8sRcB`seZdZdZRS(Ru(RRRR"(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyR=sRcB`seZdZdZRS(RzcC`sd }tjdr-tjddf}n|ddkrd }yddl}d }Wqtk rtt}yddl}d }Wqtk rtt}yddl}d}Wqtk r tt}t j |t j |t j |qXqXqXn|dj j |df}|ddkrit d |d|dfn|dtjd<|jt|ddS(NtNUMERIXsenvironment variRut defaultedRxRyisonumerix selector must be either 'Numeric' or 'numarray' or 'numpy' but the value obtained from the %s was '%s'.(NN(RuR/(RuR/(RxR/(RyR/(RxRyRu(RR*RRuR&RRRwRyR RR8RRR"R R(RtwhichRutmsg1Rwtmsg2Rytmsg3((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyREs:            (RRRR(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRBsRcB`seZdZRS(cC`s{yddlj}Wntk r'dSXtjjtjj|jd}|jdtjj|dgd|gdS(NiR@Rsfortranobject.cR( t numpy.f2pyRvR&R*R+R,R#RBR (RRvtf2py_dir((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRhs $! (RRR(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRgsRcB`s&eZdZdZdZdZRS(R}tBOOSTcC`sxtj|||}g}x1|D])}|j|g|j|dgq"Wg|D]}tjj|rV|^qVS(Nsboost*(RR4RRKR*R+R'(RRRRqRR.((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyR4ws  'c C`sK|j}d}xB|D]:}tjjtjj|ddddr|}PqqW|sadStjjg}tjjdt}||kr|j |ntjj|ddd}t tjj|d}|t tjj|dd7}id i|g|d 6|d 6fgd 6|gd 6}|rG|j |ndS( NRR%tpythonR@s module.cppR s*.cppRytboost_python_srcRRR( R6R*R+RHR,RR$R%R`RIRR ( RRRR.t py_incl_dirsR)tsrcs_dirtbpl_srcsR((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyR~s.    " (RRRR!R4R(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRss RcB`s&eZdZdZdZdZRS(R~tAGG2cC`sxtj|||}g}x1|D])}|j|g|j|dgq"Wg|D]}tjj|rV|^qVS(Nsagg2*(RR4RRKR*R+R'(RRRRqRR.((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyR4s  'cC`s=|j}d}x<|D]4}tjjtjj|ddr|}PqqW|s[dStjdkrttjj|dddd}nCttjj|dd}|tjj|dddd g7}id i|d 6tjj|d gd 6fgd6tjj|d gd 6}|r9|j|ndS(NRR@sagg_affine_matrix.cppR$R@sagg_win32_bmp.cpps*.cppRsagg_platform_support.cpptagg2_srcRR'RR( R6R*R+RHR,RDR@RR (RRRR.t agg2_srcsR((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRs.  $  #(RRRR!R4R(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRs t_pkg_config_infocB`sSeZdZdZdZdZdZdZdZ dZ dZ dZ dZ RS( t PKG_CONFIGs pkg-configRs --modversions--cflagscC`s'|jtjkr tj|jS|jS(N(tconfig_env_varR*R"tdefault_config_exe(R((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pytget_config_exescC`s]|d|jd|}ytj|}Wnttjfk rHnXt|}|SdS(Nt (tappend_config_exet subprocesst check_outputtOSErrortCalledProcessErrorR (Rt config_exetoptiontcmdR((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pytget_config_outputs cC`s9t|j}|s6tjd||jfdSi}g}g}g}g}g}g}|j||j} | r|j|jj j ddj t | f|j r|j|j d| jdddfqn|jr7|j|d} | r7|j|jd| jdddfq7n|j|d} | rxl| j D][} | d d kr|j| dq\| d d kr|j| dq\|j| q\Wn|j||j} | rx| j D]} | d d kr|j| dq| d d krud | kr[| dj d \} }|j| |fq|j| ddfq|j| qWn|rt|d|n|rt|d|n|rt|d|n|rt|d|n|rt|d|n|rt|d|n|r5|j|ndS(Ns-File not found: %s. Cannot determine %s info.R&is_%st_s --releases--libsis-ls-Ls-Is-Dt=R_RRRRR(R RCR RRRMt version_flagRIRRRFR,Rtversion_macro_nameRRtrelease_macro_namet cflags_flagRR (RRJRR[RRRRRRtreleasetoptsR tnR((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRst " ! ! N(RRRRRARBRERQRRRPRSRCRMR(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyR?s  RcB`s8eZdZdZdZdZdZdZdZdZ RS(Rt WX_CONFIGs wx-configRt WX_VERSIONt WX_RELEASEs --versions --cxxflags( RRRRARBRERQRRRPRS(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyR sRcB`seZdZdZdZRS(Rsgdk-pixbuf-xlib-2.0tGDK_PIXBUF_XLIB_VERSION(RRRRERQ(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyR( sRcB`seZdZdZdZRS(Rsgdk-pixbuf-2.0tGDK_PIXBUF_VERSION(RRRRERQ(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyR. sRcB`seZdZdZdZRS(Rs gdk-x11-2.0tGDK_X11_VERSION(RRRRERQ(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyR4 sRcB`seZdZdZdZRS(Rsgdk-2.0t GDK_VERSION(RRRRERQ(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyR: sRcB`seZdZdZdZRS(RR](RRRRERQ(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyR@ sRcB`seZdZdZdZRS(Rs gtk+-x11-2.0tGTK_X11_VERSION(RRRRERQ(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRF sRcB`seZdZdZdZRS(Rsgtk+-2.0t GTK_VERSION(RRRRERQ(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRL sRcB`seZdZdZdZRS(Rt XFT_VERSION(RRRRERQ(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRR sRcB`seZdZdZdZRS(RtFREETYPE2_VERSION(RRRRERQ(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRX sRcB`s&eZdZdZdgZdZRS(RtAMDc C`s|j}|jd|j}|j||g}|dkrFdS|j}d}x@|D]8}|j|d}|r_tjj |d}Pq_q_W|dk rt |d|gdd gdd|gn|j |dS( Ntamd_libssamd.hiRR_t SCIPY_AMD_Ht swig_optss-I(RdN( RR;R RRR5RKR*R+R#RR (RRGRcRRRR.R"((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRc s$       (RRRR!R R(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyR^ s RcB`s,eZdZdZeZdgZdZRS(RtUMFPACKc C`s|j}|jd|j}|j||g}|dkrFdS|j}d}xI|D]A}|j|ddgd}|r_tjj |d}Pq_q_W|dk rt |d|gdd gd d |gnt |t d |j |dS( Nt umfpack_libsRRs umfpack.hiRR_tSCIPY_UMFPACK_HRes-IR(RhN( RR;R RRR5RKR*R+R#RRR (RRGRgRRRR.R"((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyR s&       (RRRR!RRR R(((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyR| s  cO`s8g}x?|D]7}|sq nt|r7|g}n|j|q W|}|sXgSt|dkrtdtt|dg}nt|dkrg}xq|dD]=}x4|dD](}|jttjj ||qWqWn%t t |d|d|d}t j ddj ||S(sc Return a list of existing paths composed by all combinations of items from arguments. icS`s||S(N((R:R-((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyt Riis (paths: %s)R7( RRIRRtmapRRR*R+R,RKR R((RWtkwsRxR:Rta0ta1((sk/home/ec2-user/environment/lambda-staging/venv/lib64/python2.7/dist-packages/numpy/distutils/system_info.pyRK s(   %-%RBisc++iRRcK`sg}x|jD]\}}|dkr>|j|qn||kr|d krg|D])}|||kr]||j|^q]q||j|q|||ys            '    ((   "       "# ""++++  $ LW.       $Do{ IO;IL)54F% '*Y ! ""