MINI MINI MANI MO

Path : /lib64/python3.6/distutils/__pycache__/
File Upload :
Current File : //lib64/python3.6/distutils/__pycache__/_msvccompiler.cpython-36.opt-2.pyc

3


 \KT@sddlZddlZddlZddlZddlZddlmZmZmZm	Z	m
Z
ddlmZm
Z
ddlmZddlmZddlmZddZd	d
ZddZd
dZdddZdddZedgZGdddeZdS)N)DistutilsExecErrorDistutilsPlatformErrorCompileErrorLibError	LinkError)	CCompilergen_lib_options)log)get_platform)countc$CsytjtjdtjtjBd}Wntk
r<tjddSXd}d}|xtD]}ytj	||\}}}Wntk
rPYnX|rT|tj
krTtjj
|rTytt|}Wnttfk
rwTYnX|dkrT||krT||}}qTWWdQRX||fS)Nz'Software\Microsoft\VisualStudio\SxS\VC7)accesszVisual C++ is not registeredr)NN)winregZ	OpenKeyExHKEY_LOCAL_MACHINEZKEY_READZKEY_WOW64_32KEYOSErrorr	debugrZ	EnumValueZREG_SZospathisdirintfloat
ValueError	TypeError)keybest_versionbest_dirivvc_dirZvtversionr //usr/lib64/python3.6/distutils/_msvccompiler.py_find_vc2015s0
r"c
sddlddl}d}d}gfdd}|j|d}|j|jxD]~\}}}}d|krLtjj|ddd}	tjj|	sqLytd	d
|j	dD}
Wnt
tfk
rwLYnX|
|krL|
|	}}qLWy|d}Wntk
rd}YnX||fS)
NrcsjjdS)N)extendfindallr )_distutils_findvsall_packagesr r!_getallDsz_find_vc2017.<locals>._getall)targetz1Microsoft.VisualStudio.Component.VC.Tools.x86.x64ZVCZ	AuxiliaryZBuildcss|]}t|VqdS)N)r).0rr r r!	<genexpr>Psz_find_vc2017.<locals>.<genexpr>.)r)
r%	threadingZThreadstartjoinrrrtuplesplitrr
IndexError)r,rrr'tnameZversion_strrZpackagesrrr )r%r&r!_find_vc2017:s2
r4cCs
t\}}d}d|krdnd}|rztjj|ddddddd	}yd
dl}|j|ddd}Wntttfk
rxd}YnX|st\}}|rtjj|d|dd	}|st	j
ddStjj|d}tjj|st	j
d|dS|ptjj|rt	j
d|d}||fS)Namd64Zx64x86z..ZredistZMSVCz**zMicrosoft.VC141.CRTzvcruntime140.dllrT)	recursivezMicrosoft.VC140.CRTz$No suitable Visual C++ version foundz
vcvarsall.batz%s cannot be found)NN)NN)r4rrr.globImportErrorrLookupErrorr"r	risfile)	plat_specrr	vcruntimeZvcruntime_platZvcredistr:	vcvarsallr r r!_find_vcvarsall[s6



rAcCstjdrddtjjDSt|\}}|s6tdy&tjdj||tj	dj
ddd	}Wn@tjk
r}z"tj
|jtd
j|jWYdd}~XnXdddd
|jDD}|r||d<|S)NZDISTUTILS_USE_SDKcSsi|]\}}||jqSr )lower)r)rvaluer r r!
<dictcomp>sz_get_vc_env.<locals>.<dictcomp>zUnable to find vcvarsall.batzcmd /u /c "{}" {} && set)stderrzutf-16lereplace)errorszError executing {}cSs$i|]\}}}|r|r||jqSr )rB)r)r_rCr r r!rDscss|]}|jdVqdS)=N)	partition)r)liner r r!r*sz_get_vc_env.<locals>.<genexpr>py_vcruntime_redist)rgetenvenvironitemsrAr
subprocessZcheck_outputformatZSTDOUTdecodeZCalledProcessErrorr	erroroutputcmd
splitlines)r>r@r?outexcenvr r r!_get_vc_env}s(


rZcCsN|stjdjtj}x2|D]*}tjjtjj||}tjj|r|SqW|S)Nr)rrMr0pathseprr.abspathr=)Zexepathspfnr r r!	_find_exes	
r`r6Z	x86_amd64)Zwin32z	win-amd64zvcruntime140.dllc
seZdZdZiZdgZdddgZdgZdgZeeeeZ	dZ
d	Zd
ZdZ
dZZd
Zd)ddZd*ddZd+ddZd,ddZd-ddZd.ddZddZfdd Zd!d"Zd#d$Zd%d&Zd/d'd(ZZS)0MSVCCompilerZmsvcz.cz.ccz.cppz.cxxz.rcz.mcz.resz.objz.libz.dllz%s%sz.exercCs tj||||d|_d|_dS)NF)r__init__	plat_nameinitialized)selfverboseZdry_runZforcer r r!rbszMSVCCompiler.__init__NcCs>|dkrt}|tkr(tdjttt|}t|}|sDtd|jdd|_|jjt	j
}td||_td||_
td||_td||_td	||_td
||_|jdd|_x2|jddjt	j
D]}|r|j|jt	jqWx6|jd
djt	j
D]}|r|j|jt	jqWd|_dddddg|_|jj|jrJdndddddddg|_dddg}|js~|jd$ddddg}|d%|_|d&|_|d'|_|d(|_||_ ||_!t"j#df|jt"j#d"f|jt"j#d#f|jt"j$df|jt"j$d"f|jt"j$d#f|jt"j%df|j t"j%d"f|j t"j%d#f|j!i	|_&d#|_'dS))Nz--plat-name must be one of {}z7Unable to find a compatible Visual Studio installation.rzcl.exezlink.exezlib.exezrc.exezmc.exezmt.exerLincludelibz/nologoz/Oxz/W3z/GLz/DNDEBUGz/MDz/MTz/Odz/MDdz/Ziz/D_DEBUGz/INCREMENTAL:NOz/LTCG/nodefaultlib:libucrt.libucrt.libz/DEBUG:FULL/MANIFEST:EMBED,ID=1/DLL/MANIFEST:EMBED,ID=2/MANIFESTUAC:NOFT)rjrk)rl)rl)rmrnro)rmrnro)(r
PLAT_TO_VCVARSrrQr/rZget_pathsr0rr[r`cclinkerrircmcZmt_vcruntime_redistZadd_include_dirrstripsepZadd_library_dirZpreprocess_optionscompile_optionsappendcompile_options_debugr#Zldflags_exeZldflags_exe_debugZldflags_sharedZldflags_shared_debugZldflags_staticZldflags_static_debugrZ
EXECUTABLEZ
SHARED_OBJECTZSHARED_LIBRARY_ldflagsrd)rercr>Zvc_envr]dirldflagsZ
ldflags_debugr r r!
initializes`





zMSVCCompiler.initializergcsTfddjDfddjjDp4dfdd}tt||S)Ncsi|]}j|qSr )
obj_extension)r)ext)rer r!rD8sz1MSVCCompiler.object_filenames.<locals>.<dictcomp>csi|]}j|qSr )
res_extension)r)r)rer r!rD9srgcstjj|\}}r"tjj|}n2tjj|\}}|jtjjtjjfrT|dd}ytjj||St	k
rt
dj|YnXdS)Nr8zDon't know how to compile {})rrsplitextbasename
splitdrive
startswithryaltsepr.r<rrQ)r^baserrH)ext_map
output_dir	strip_dirr r!
make_out_path>sz4MSVCCompiler.object_filenames.<locals>.make_out_path)src_extensions_rc_extensions_mc_extensionslistmap)reZsource_filenamesrrrr )rrrerr!object_filenames3s
zMSVCCompiler.object_filenamesc	Cs|js|j|j||||||}	|	\}}
}}}|p6g}
|
jd|rT|
j|jn|
j|jd}x|
D]}y||\}}Wntk
rwlYnX|rtj	j
|}||jkrd|}nD||jkrd|}d}n*||j
krB|}d|}y|j|jg|||gWqltk
r<}zt|WYdd}~XqlXqln||jkrtj	j|}tj	j|}y\|j|jd|d||gtj	jtj	j|\}}tj	j||d	}|j|jd||gWqltk
r}zt|WYdd}~XqlXqlntd
j|||jg|
|}|r$|jd|j||jd||j|y|j|Wqltk
r}zt|WYdd}~XqlXqlW|
S)
Nz/cFz/Tcz/TpTz/foz-hz-rz.rcz"Don't know how to compile {} to {}z/EHscz/Fo)rdrZ_setup_compiler{r#r|rzKeyErrorrrr\
_c_extensions_cpp_extensionsrspawnrurrrdirnamervrrr.rQrs)reZsourcesrZmacrosZinclude_dirsr
extra_preargsextra_postargsZdependsZcompile_infoobjectsZpp_optsZbuildZcompile_optsZadd_cpp_optsobjsrcrZ	input_optZ
output_optmsgZh_dirZrc_dirrrHZrc_fileargsr r r!compileTsn








zMSVCCompiler.compilec	Cs|js|j|j||\}}|j||d}|j||r|d|g}|rJy,tjd|jdj||j	|jg|Wqt
k
r}zt|WYdd}~XqXntjd|dS)N)rz/OUT:zExecuting "%s" %s zskipping %s (up-to-date))rdr_fix_object_argslibrary_filename
_need_linkr	rrir.rrr)	rerZoutput_libnamerrtarget_langoutput_filenameZlib_argsrr r r!create_static_libszMSVCCompiler.create_static_libcCs|js|j|j||\}}|j|||}|\}}}|rL|jdt|t||||}|dk	rptjj	||}|j
||r|j||	f}dd|pgD}||||d|g}tjj|d}|dk	rtjj
tjj|\}}tjj	||j|}|jd||
r|
|dd<|r.|j|tjjtjj|}|j|y6tjd|jdj	||j|jg||j|Wn,tk
r}zt|WYdd}~XnXntjd	|dS)
Nz5I don't know what to do with 'runtime_library_dirs': cSsg|]}d|qS)z/EXPORT:r )r)Zsymr r r!
<listcomp>sz%MSVCCompiler.link.<locals>.<listcomp>z/OUT:rz/IMPLIB:zExecuting "%s" %srzskipping %s (up-to-date))rdrrZ
_fix_lib_argswarnstrrrrr.rr}rrrrr{r#r\Zmkpathr	rrtr_copy_vcruntimerr)reZtarget_descrrrZ	librariesZlibrary_dirsZruntime_library_dirsZexport_symbolsrrrZ
build_temprZ
fixed_argsZlib_optsrZexport_optsZld_argsZdll_nameZdll_extZimplib_filerr r r!linksN



zMSVCCompiler.linkcCs`|j}|stjj|rdStjj|jtkr6dStjd|t	j
||}tj|tj
dS)NzCopying "%s")rwrrr=rrB
_BUNDLED_DLLSr	rshutilcopychmodstatS_IWRITE)rerr?r r r!rszMSVCCompiler._copy_vcruntimecs4tjd}z|jtjd<tj|S|tjd<XdS)Nr)rrMrrrNsuperr)rerUZold_path)	__class__r r!rs

zMSVCCompiler.spawncCsd|S)Nz	/LIBPATH:r )rer~r r r!library_dir_option&szMSVCCompiler.library_dir_optioncCstddS)Nz:don't know how to set runtime library search path for MSVC)r)rer~r r r!runtime_library_dir_option)sz'MSVCCompiler.runtime_library_dir_optioncCs
|j|S)N)r)rerir r r!library_option-szMSVCCompiler.library_optioncCs`|r|d|g}n|g}xB|D]6}x0|D](}tjj||j|}tjj|r(|Sq(WqWdSdS)NZ_d)rrr.rr=)redirsrirZ	try_namesr~r3Zlibfiler r r!find_library_file0s

zMSVCCompiler.find_library_file)rrr)N)rrg)NNNrNNN)NrN)
NNNNNrNNNN)r)__name__
__module____qualname__Z
compiler_typeZexecutablesrrrrrrrZstatic_lib_extensionZshared_lib_extensionZstatic_lib_formatZshared_lib_formatZ
exe_extensionrbrrrrrrrrrrr
__classcell__r r )rr!rasL


T

[

9ra)N)rrrrPrZdistutils.errorsrrrrrZdistutils.ccompilerrrZ	distutilsr	Zdistutils.utilr
	itertoolsrr"r4rArZr`rp	frozensetrrar r r r!<module>s$!" 



OHA YOOOO