ó 2ÄÈ[c@ sËddlmZmZddlZddlZddlZddlZddlZddlZddl Z ddl m Z ddl m Z ddlmZddlmZddlmZmZddlmZdd lTejjd d ƒd kZejjd d ƒd kZeoeZdefd„ƒYZd„Zd„Zd„Z d„Z!d„Z"d„Z#d„Z$d„Z%d„Z&d„Z'de(d„Z)e*dkrÇddl+m,Z,e,de)ƒndS(iÿÿÿÿ(tdivisiontprint_functionN(tjoin(tlog(tnewer(tget_config_var(tuses_accelerate_frameworkt get_sgemv_fix(tnpy_load_module(t*tNPY_RELAXED_STRIDES_CHECKINGt1t0tNPY_RELAXED_STRIDES_DEBUGt CallOnceOnlycB s,eZd„Zd„Zd„Zd„ZRS(cC sd|_d|_d|_dS(N(tNonet _check_typest_check_ieee_macrost_check_complex(tself((s//tmp/pip-build-fiC0ax/numpy/numpy/core/setup.pyt__init__)s  cO sR|jdkr3t||Ž}tj|ƒ|_ntjtj|jƒƒ}|S(N(RRt check_typestpickletdumpstcopytdeepcopytloads(Rtatkwtout((s//tmp/pip-build-fiC0ax/numpy/numpy/core/setup.pyR.s cO sR|jdkr3t||Ž}tj|ƒ|_ntjtj|jƒƒ}|S(N(RRtcheck_ieee_macrosRRRRR(RRRR((s//tmp/pip-build-fiC0ax/numpy/numpy/core/setup.pyR6s cO sR|jdkr3t||Ž}tj|ƒ|_ntjtj|jƒƒ}|S(N(RRt check_complexRRRRR(RRRR((s//tmp/pip-build-fiC0ax/numpy/numpy/core/setup.pyR>s (t__name__t __module__RRRR(((s//tmp/pip-build-fiC0ax/numpy/numpy/core/setup.pyR(s   cC s3tjdkr%tjjtjdƒStdƒSdS(s return path where libpython* is.twin32tlibstLIBDIRN(tsystplatformtostpathRtprefixR(((s//tmp/pip-build-fiC0ax/numpy/numpy/core/setup.pyt pythonlib_dirFscC s tjdkS(sTReturn True if the NPY_NO_SIGNAL symbol must be defined in configuration header.R"(R%R&(((s//tmp/pip-build-fiC0ax/numpy/numpy/core/setup.pytis_npy_no_signalMscC s dtjkS(sxReturn True if the NPY_NO_SMP symbol must be defined in public header (when SMP support cannot be reliably enabled).t NPY_NOSMP(R'tenviron(((s//tmp/pip-build-fiC0ax/numpy/numpy/core/setup.pyt is_npy_no_smpRs cC s~ddlm}|ƒ}td|tjtjfƒ|dkrR|jdƒn|dksj|dkrz|jdƒndS(Niÿÿÿÿ(tget_build_architectures3BUILD_ARCHITECTURE: %r, os.name=%r, sys.platform=%rtAMD64tDISTUTILS_USE_SDKtInteltFORCE_NO_LONG_DOUBLE_FORMATTING(tnumpy.distutils.misc_utilR/tprintR'tnameR%R&tappend(tdeflistR/R((s//tmp/pip-build-fiC0ax/numpy/numpy/core/setup.pyt win32_checks]s  c  sÓ‡‡fd†‰‡‡‡fd†‰‡‡‡fd†}ˆtƒsatdttƒƒ‚nx?tD]7}ˆjt|ƒdddgƒrhtj|ƒqhqhW|tƒxZtD]R}ˆj dd t d t d|gƒr´ˆj t|ƒj d d ƒd fƒq´q´Wxt D]}d}t|ƒdkrX|d|d t|dƒ}}} nƒt|ƒdkr¤|d|d |dgt|dƒf\}}}} n7|d|d |dgt|dƒf\}}}} ˆj |d t d td|d|ƒrˆj | d fƒqqWxBtD]:\} } ˆj| | ƒr#ˆj t| ƒd fƒq#q#WxWtD]O} ˆj| ƒrh| j dd ƒj dd ƒ} ˆj t| ƒd fƒqhqhW|tƒ|tƒdS(Nc sˆj|dˆdtdtƒS(Nt librariestdecltcall(t check_functTrue(t func_name(tconfigtmathlibs(s//tmp/pip-build-fiC0ax/numpy/numpy/core/setup.pyR=nsc stg|D]}|tf^q ƒ}ˆj|dˆd|d|ƒ}|r{ˆjg|D]}t|ƒdf^qYƒn|S(NR:R;R<i(tdictR>tcheck_funcs_oncetextendt fname2def(t funcs_nametfR;tst(R@RAtmoredefs(s//tmp/pip-build-fiC0ax/numpy/numpy/core/setup.pyRCrs %/c sQˆ|ƒsIx6|D].}ˆ|ƒrˆjt|ƒdfƒqqWdSdSdS(Nii(R7RE(RFRG(R=RCRI(s//tmp/pip-build-fiC0ax/numpy/numpy/core/setup.pyt check_funcszs     sNOne of the required function to build numpy is not available (the list is %s).theaderssPython.hsmath.htR;R<t.t_iiiit call_argst(t)(tMANDATORY_FUNCSt SystemErrortstrtOPTIONAL_STDFUNCS_MAYBEt check_declREtOPTIONAL_STDFUNCStremovetOPTIONAL_HEADERSR=tFalseR7treplacetOPTIONAL_INTRINSICSRtlenR>tOPTIONAL_FUNCTION_ATTRIBUTEStcheck_gcc_function_attributetOPTIONAL_VARIABLE_ATTRIBUTEStcheck_gcc_variable_attributetC99_FUNCS_SINGLEtC99_FUNCS_EXTENDED( R@RIRARJRGthttupRKtargstmtdectfn((R=RCR@RARIs//tmp/pip-build-fiC0ax/numpy/numpy/core/setup.pytcheck_math_capabilitiesmsB    $, ):7     c sg‰g}y7tjƒddkrBtjdddƒˆ|fSWntk rVnXˆjdƒ}|r ˆjdƒ|jdƒxLtD]D}ˆj|d dgƒ}|r|jd t |ƒdfƒqqW‡‡‡fd †}|d ƒ|dƒ|dƒnˆ|fS(NitInterixs+Disabling broken complex support. See #1365t stacklevelis complex.htHAVE_COMPLEX_HitNPY_USE_C99_COMPLEXRKs NPY_HAVE_%sc  sägtD]}||^q}tg|D]}|tf^q'ƒ}ˆj|d|d|dˆƒs´xz|D]C}ˆj|dtdtdˆƒrjˆjt|ƒdfƒqjqjWn,ˆjg|D]}t|ƒdf^qÁƒdS(NR<R;R:i(tC99_COMPLEX_FUNCSRBR>RCR=R7RERD(tprecRGtflistR;(R@RAtpriv(s//tmp/pip-build-fiC0ax/numpy/numpy/core/setup.pyt check_precÎs%   #RLRGtl(Rmi(Rni( R'tunametwarningstwarnt Exceptiont check_headerR7tC99_COMPLEX_TYPESt check_typettype2def(R@RAtpubRHttRs((R@RARrs//tmp/pip-build-fiC0ax/numpy/numpy/core/setup.pyR·s*    $   c s g‰g‰g}‡‡fd†}ddddg}xˆ|D]€}td|ƒ}|j|ddd gƒ}|r°|j|ddd gƒr½ˆjd td|ƒƒq½q=|j|ƒq=Wx<|D]4}|j|ddd gƒ}|rÈ||ƒqÈqÈWˆˆfS( Nc s6ˆjtd|ƒƒˆjdtd|ƒƒdS(Nsdecl_%ssNPY_%s(R7RE(RG(RrR}(s//tmp/pip-build-fiC0ax/numpy/numpy/core/setup.pyt _add_declæstisnantisinftsignbittisfinitesdecl_%sRKsPython.hsmath.hsNPY_%s(RERVtcheck_macro_trueR7(R@tmacrosRt_macrosRGt py_symboltalready_declaredRH((RrR}s//tmp/pip-build-fiC0ax/numpy/numpy/core/setup.pyRàs&   ! c C sg}g}i dgd6dgd6ddgd6dgd6dgd6d d dgd 6ddgd 6dgd 6dgd6ddgd6}|jdƒ}|sÐd}dtjkr¸d}ntdj|ƒƒ‚n|jdƒ}|r|jd(ƒ|jd)ƒn|jdƒ}|r4|jd*ƒ|jd+ƒnx¹d,D]±} |jdt| ƒddgƒ}|r“|jdt| ƒdt| ƒfƒq;|j| d|| ƒ}|d krÜ|jdt| ƒd!|fƒq;td"| ƒ‚q;WxAd-D]9} |jdt| ƒddgƒ} |j| d|| ƒ}|d kr |jdt| ƒd!|fƒ| r°| d k r°|jdt| ƒd!|fƒq°ntd"| ƒ‚d#| | f} |j| dg|| D]} d| ^q׃}|d kr |jd$t| ƒd!|fƒq÷td"| ƒ‚q÷Wxd.D]•} |j| ddgd%t ƒgd|| ƒ}|d krÀ|jdt| ƒd!|fƒ|jdt| ƒd!|fƒq;td"| ƒ‚q;W|jd ddgƒr×|jd ddgd%t ƒgd|d ƒ}|d krk|jdtd ƒd!|fƒ|jdtd ƒd!|fƒntd"d ƒ‚|jdd|dƒ}|d krÄ|jdtdƒd!|fƒq×td"dƒ‚n|jd&ddgƒsþt d'ƒ‚n||fS(/Nitshortitintitlongtfloattdoubleii s long doublet Py_intptr_tt PY_LONG_LONGs long longtoff_tsPython.htpythont__pypy__tpypysICannot compile 'Python.h'. Perhaps you need to install {0}-dev|{0}-devel.sendian.ht HAVE_ENDIAN_HitNPY_HAVE_ENDIAN_Hs sys/endian.htHAVE_SYS_ENDIAN_HtNPY_HAVE_SYS_ENDIAN_Hs SIZEOF_%sRKs NPY_SIZEOF_%stexpectedis%dsChecking sizeof (%s) failed !sstruct {%s __x; %s __y;}sNPY_SIZEOF_COMPLEX_%st library_dirstCHAR_BITsCConfig wo CHAR_BIT is not supported, please contact the maintainers(R”i(R•i(R–i(R—i(R‰RŠR‹(RŒRs long double(RŽR( RyR%tbuiltin_module_namesRStformatR7RVtsym2deftcheck_type_sizeR*t RuntimeError( t config_cmdtextt build_dirtprivate_definestpublic_definesR˜tresultR‘tresttypeRˆt complex_deftx((s//tmp/pip-build-fiC0ax/numpy/numpy/core/setup.pyRsŒ$$!    "* $   !' $ $    !$   !$   $ c C s›g}gdgdgg}tjjdƒ}|rO|jd|jdƒƒnxE|D]1}|jdd|dtd tƒrV|}PqVqVWtd ƒ‚|S( NRgtcpmltMATHLIBit,texpR:R;R<sKmath library missing; rerun setup.py after setting the MATHLIB env variable(R'R-tgettinserttsplitR=R>tEnvironmentError(R RAtmathlibs_choicestmathlibR#((s//tmp/pip-build-fiC0ax/numpy/numpy/core/setup.pyt check_mathlibjs ! cC s|jƒrdSdSdS(sSReturn the define value to use for NPY_VISIBILITY_HIDDEN (may be empty string).s%__attribute__((visibility("hidden")))RLN(tcheck_compiler_gcc4(R@((s//tmp/pip-build-fiC0ax/numpy/numpy/core/setup.pytvisibility_define{s RLc; s¯ddlm}m}ddlm}|d||ƒ‰ˆj}t|dƒ‰tˆƒrotj dt ƒnt t ˆƒtˆdƒ‰|ˆj dƒ}td j|jd ƒƒˆd d d fƒ‰d‰tƒ‰‡‡‡fd†}‡‡‡fd†}‡‡‡fd†} | dƒ} | dƒ} ˆjt|ddƒƒˆjt|dƒƒˆjt|ƒƒˆjdƒˆjtddƒƒˆjtddƒƒˆjtddƒƒˆjtddƒƒˆjddfgƒˆjddfgƒtjd dkr/ˆjd tfgƒnBˆjd!d"fgƒˆjd#dfgƒˆjd$dfgƒˆjjˆjd%ƒƒtddd&ƒtd%d'd(ƒtˆd)ƒg} ˆjd*d+tdd,ƒ||| gƒtd-tjjfd.d/fgƒ‰‡‡fd0†} tddd1ƒtddd2ƒtddd3ƒtddd4ƒtddd5ƒg}tjƒd6k}ˆj dd+|| gd7d8d9igd:6|r³d;gngd<6ƒˆj!d=d>ˆƒˆj!d?d>ˆƒtddd@ƒtdddAƒtdddBƒtdddCƒtdddDƒtdddEƒtdddFƒg}ˆj"dd+|d:gƒtdddGƒtdddHƒtdddIƒtdddJƒtdddKƒtdddLƒtdddMƒtdddNƒtdddOƒtdddPƒtdddQƒtdddRƒtdddSƒtdddTƒtdddUƒtdddVƒtdddWƒtdddXƒtdddYƒtdddZƒtddd[ƒtddd\ƒtddd]ƒtddd^ƒtddd_ƒtddd`ƒtdddaƒtdddbƒtdddcƒtddddƒtdddeƒtdddfƒtdddgƒtdddhƒtdddiƒtdddjƒtdddkƒtdddlƒtdddmƒtd%d'dGƒtd%d'dnƒtd%d'doƒtd%d'dpƒtd%d'dqƒtd%d'drƒtd%d'dsƒtd%d'dtƒtd%d'duƒtd%d'dvƒtd%d'dwƒtd%d'dxƒtd%d'dyƒtd%d'dzƒtd%d'd{ƒtd%d'd|ƒtd%d'd}ƒg8||}tddd~ƒtdddƒtddd€ƒtdddƒtddd‚ƒtdddƒƒtddd„ƒtddd…ƒtddd†ƒtddd‡ƒtdddˆƒtddd‰ƒtdddŠƒtddd‹ƒtdddŒƒtdddƒtdddŽƒtdddƒtdddƒtddd‘ƒtddd’ƒtddd“ƒtddd”ƒtddd•ƒtddd–ƒtddd—ƒtddd˜ƒtddd™ƒtdddšƒtddd›ƒtdddœƒtdddƒtdddžƒtdddŸƒtddd ƒtddd¡ƒtddd¢ƒtddd£ƒtddd¤ƒtddd¥ƒtddd¦ƒtddd§ƒtddd¨ƒtddd©ƒtdddªƒtddd«ƒtddd¬ƒtddd­ƒtdddgƒtddd®ƒtddd¯ƒtddd°ƒg4}|d±d²ƒ}|o d³tf|j#d´gƒkrZ |}|jtdddµƒtddd¶ƒgƒt$|ƒrW |jt%ƒƒnni}ˆjdd+|||| tˆd·ƒtd¸ƒgd¹| |dºddgd»|ƒ‡‡‡fd¼†}tddd½ƒtddd¾ƒtddd¿ƒtdddÀƒtdddÁƒtdddƒtdddÃtdddătdddŃtdddƃtdddǃtdddȃtddd®ƒtddd¯ƒtddd°ƒg}ˆtd%d'dtƒtd%d'duƒtdddMƒtdddgƒtdddÀƒtdddɃtˆdʃtdddhƒtdddiƒtdddjƒtdddkƒtdddlƒg |}ˆjdd+||||| gd¹| |dºdgƒˆjdËd+tddd̃gƒˆjdÍd+tddd΃gƒˆjdÏd+tdddЃgƒˆjdÑd+tdddÒƒtddd®ƒgd¹tdddiƒtdddmƒgdºdgƒˆjdÓd+tdddÔƒgƒˆj&dÕƒˆj&dÖƒˆj'ƒˆS(×Niÿÿÿÿ(t Configurationtdot_join(tget_infotcoretcode_generatorsterrorsgenerate_umath.pytgenerate_umathRNRMs.pytUis include/numpyc sªt|ˆdƒ}tjj|ƒ}tjj|ƒsFtj|ƒntt|ƒrÖˆjƒ}t j d|ƒˆj |||ƒ\}}t |ƒ}|j ddj|ƒfƒt|||ƒ|jˆj|ƒdƒ|jˆj||ƒdƒtƒr|j dƒntjdks2tjdkr?t|ƒn|j d |jƒfƒ|jƒ}trz|j dƒntr|j dƒnt|ƒ} |j d | d fƒtjddkrÖ|j dƒnt|dƒ} xP|D]H}t|tƒr| j d|ƒqì| j d|d|d fƒqìW| j dƒ|dkra| j dƒn| j d|ƒ| j dƒ| j dƒ| j!ƒt"d|ƒt|ƒ} t"| j#ƒƒ| j!ƒt"dƒnzg}t|ƒ} x[| D]S} d} | j$| ƒrï| t%| ƒj&ƒ} | rB|j| j'dƒƒqBqïqïW| j!ƒt(|dƒrr|j)j|ƒntjj|ƒ}|ˆj*kr¦ˆj*j |ƒn|S( Nsconfig.hs Generating %sR«R¬it__NPY_PRIVATE_NO_SIGNALR"tntt NPY_RESTRICTR iR sHAVE_LDOUBLE_%sitNPY_PY3Ktws #define %s s#define %s %s s#ifndef __cplusplus tinlines/* #undef inline */ s#define inline %s s#endif ss #ifndef _NPY_NPY_CONFIG_H_ #error config.h should never be included directly, include npy_config.h instead #endif sFile:tEOFs#define MATHLIBR:(R i(R i(RÂi(+RR'R(tdirnametexiststmakedirsRt__file__tget_config_cmdRtinfoRR´R7RjRDRRR+R%R&R6R9tcheck_restrictt check_inlineR R t check_long_double_representationt version_infotopent isinstanceRTtwritetcloseR5treadt startswithR]tstripR°thasattrR:tnumpy_include_dirs(R¡R¢ttargettdR RItignoredRARÄtrepttarget_ftlinetstvaluetincl_dir(tcocacheR@t header_dir(s//tmp/pip-build-fiC0ax/numpy/numpy/core/setup.pytgenerate_config_h›sx       #            c  s²ˆjt|ddƒƒˆjt|ddƒƒt|ˆdƒ}tjj|ƒ}tjj|ƒsxtj|ƒntt|ƒr›ˆj ƒ}t j d|ƒˆj |||ƒ\}}t ƒr×|jdƒntƒrð|jdƒn |jdƒt|ƒ}|jˆj|ƒdƒ|jˆj||ƒdƒtrV|jdƒntrl|jdƒn|jd d dgƒr”|jdƒnt|ƒ}|jd|fƒ|jddtfƒ|jddtfƒt|dƒ} xP|D]H}t|tƒr | jd|ƒq÷| jd|d |dfƒq÷W| jdƒ| jƒtd|ƒt|ƒ} t| j ƒƒ| jƒtdƒnˆj!ˆ|fƒ|S( s@Depends on config.h: generate_config_h has to be called before !tsrctprivatetnpymaths_numpyconfig.hs Generating %st NPY_NO_SIGNALit NPY_NO_SMPiR R tPRIdPTRRKs inttypes.htNPY_USE_C99_FORMATStNPY_VISIBILITY_HIDDENtNPY_ABI_VERSIONs0x%.8XtNPY_API_VERSIONRÃs #define %s s#define %s %s sD #ifndef __STDC_FORMAT_MACROS #define __STDC_FORMAT_MACROS 1 #endif sFile: %sRÅ(Rèi(Réi(Réi(R i(R i(Rëi("tadd_include_dirsRR'R(RÆRÇRÈRRÉRÊRRËRR+R7R.R´RDRRR R RVR¶t C_ABI_VERSIONt C_API_VERSIONRÐRÑRTRÒRÓR5RÔtadd_data_files( R¡R¢RÙRÚR RÛRIRAthidden_visibilityRÝ(RâR@Rã(s//tmp/pip-build-fiC0ax/numpy/numpy/core/setup.pytgenerate_numpyconfig_hsV       #    c s‡‡‡‡fd†}|S(Nc sžtˆˆdƒ}tjjdˆƒzGtˆƒ}tjd|ƒ|jtjj|ˆƒƒ\}}}Wdtjd=Xˆj ˆ|fˆ|fƒ|fS(Ns.pyis executing %s( RR%R(R¯t __import__RRËt generate_apiR'Rò(R¡R¢tscriptRgth_filetc_filetdoc_file(t codegen_dirR@Rãt module_name(s//tmp/pip-build-fiC0ax/numpy/numpy/core/setup.pyRöMs +  ((RüRö(RûR@Rã(Rüs//tmp/pip-build-fiC0ax/numpy/numpy/core/setup.pytgenerate_api_funcLs tgenerate_numpy_apitgenerate_ufunc_apiRåRæsinclude/numpy/*.hRçt multiarraytumathtnpysorttNPY_INTERNAL_BUILDR tHAVE_NPY_CONFIG_Hitaixt _LARGE_FILESt_FILE_OFFSET_BITSt64t_LARGEFILE_SOURCEt_LARGEFILE64_SOURCEtincludes _signbit.ctnumpys *object.hs genapi.pyt_dummytsourcess dummymodule.ctseptpkgnames numpy.corec s ˆjƒ}|jdƒ}|s0tdƒ‚nt|ƒ}djg|D]}d|^qIƒ}djg|D]}d|^qoƒ}|ˆd<|ˆdsD             J ) % e  ÿÿ@