ó p®¸Qc @sÏddlmZyddlmZWnek r=eZnXddlZddlZddlm Z ddl m Z ddl m Z ddlmZmZedƒddlmZdd lmZdd lTeZeZd Zejd krúeZnFejd kr@y ddlmZeZeZWq@ek r<q@Xnd„Zdefd„ƒYZestejd kržddddddddddd„ Z n-dZddddddddddd„ Z dS(iÿÿÿÿ(t build_extN(t copy_file(tLibrary(t new_compiler(tcustomize_compilertget_config_vartLDSHARED(t _config_vars(tlog(t*tsharedtdarwintnt(tRTLD_NOWcCstr |SdS(Nt(t have_rtld(ts((s:/sys/lib/python2.7/distutils/tests/setuptools_build_ext.pytif_dl"sRcBs–eZd„Zd„Zeek r@eedƒ r@d„Znd„Zd„Z d„Z d„Z d„Z d „Z d „Zd „Zed „ZRS( cCs@|jd}|_tj|ƒ||_|r<|jƒndS(s;Build extensions in build directory, then copy if --inplaceiN(tinplacet _build_exttruntcopy_extensions_to_source(tselft old_inplace((s:/sys/lib/python2.7/distutils/tests/setuptools_build_ext.pyR-s   c Csù|jdƒ}xã|jD]Ø}|j|jƒ}|j|ƒ}|jdƒ}dj|d ƒ}|j|ƒ}tj j|tj j |ƒƒ}tj j|j |ƒ} t | |d|j d|jƒ|jr|j|pätj|tƒqqWdS(Ntbuild_pyt.iÿÿÿÿtverbosetdry_run(tget_finalized_commandt extensionstget_ext_fullnametnametget_ext_filenametsplittjointget_package_dirtostpathtbasenamet build_libRRRt _needs_stubt write_stubtcurdirtTrue( RRtexttfullnametfilenametmodpathtpackaget package_dirt dest_filenamet src_filename((s:/sys/lib/python2.7/distutils/tests/setuptools_build_ext.pyR5s!  t pyrex_sourcescGs+tj||ƒp|}tj|||ŒS(N(Rt swig_sourcest _du_build_ext(Rtsourcest otherargs((s:/sys/lib/python2.7/distutils/tests/setuptools_build_ext.pyR5MscCsŸtj||ƒ}|j|}t|tƒrYtjj|ƒ\}}|jj |t ƒSt r—|j r—tjj |ƒ\}}tjj|d|ƒS|SdS(Nsdl-(RR text_mapt isinstanceRR$R%tsplitexttshlib_compilertlibrary_filenametlibtypet use_stubst_links_to_dynamicR!R"(RR-R.R,tfntd((s:/sys/lib/python2.7/distutils/tests/setuptools_build_ext.pyR Us cCs,tj|ƒd|_g|_i|_dS(N(Rtinitialize_optionstNoneR<tshlibsR9(R((s:/sys/lib/python2.7/distutils/tests/setuptools_build_ext.pyRCas   c Cs¤tj|ƒ|jpg|_|j|jƒg|jD]}t|tƒr9|^q9|_|jrs|jƒnx&|jD]}|j|j ƒ|_ q}Wx|jD]ö}|j }||j |<|jrÚ|j |ƒpÝt }|_|otot|tƒ |_|j|ƒ}|_tjjtjj|j|ƒƒ}|rh||jkrh|jj|ƒn|r¦tr¦tj|jkr¦|jjtjƒq¦q¦WdS(N(Rtfinalize_optionsRtcheck_extensions_listR:RREtsetup_shlib_compilerRRt _full_nameR9tlinks_to_dynamictFalseR@R?R(R t _file_nameR$R%tdirnameR"R't library_dirstappendR*truntime_library_dirs(RR,R-tltdR.tlibdir((s:/sys/lib/python2.7/distutils/tests/setuptools_build_ext.pyRFgs(     %$cCsÉtd|jd|jd|jƒ}|_tjdkrtjƒ}z,dtdRXR+RtdlR RRDRi(((s:/sys/lib/python2.7/distutils/tests/setuptools_build_ext.pytsJ        Í