Viewing File: /opt/alt/python35/lib64/python3.5/distutils/__pycache__/msvccompiler.cpython-35.opt-2.pyc



]\@sddlZddlZddlmZmZmZmZmZddlm	Z	m
Z
mZddlm
Z
dZy@ddlZdZeZejZejZejZejZWnek
r4yLddlZddlZdZeZejZejZejZejZWnek
r/e
jdYnXYnXerYejejejej fZ!dd	Z"d
dZ#dd
Z$GdddZ%ddZ&ddZ'ddZ(Gddde	Z)e&dkre
j*de)Z+ddl,m)Z)ddl,m%Z%dS)N)DistutilsExecErrorDistutilsPlatformErrorCompileErrorLibError	LinkError)	CCompilergen_preprocess_optionsgen_lib_options)logFTzWarning: Can't read registry to find the necessary compiler setting
Make sure that Python modules winreg, win32api or win32con are installed.cCsyt||}Wntk
r+dSYnXg}d}xDyt||}Wntk
rcPYnX|j||d7}q;W|S)Nr)RegOpenKeyExRegError
RegEnumKeyappend)basekeyhandleLikr1/opt/alt/python35/lib64/python3.5/msvccompiler.py	read_keys7s
	

rcCsyt||}Wntk
r+dSYnXi}d}xbyt||\}}}Wntk
rlPYnX|j}t||t|<|d7}q;W|S)Nrr)rr
RegEnumValuelowerconvert_mbcs)rrrdrnamevaluetyperrrread_valuesHs
	
r cCsGt|dd}|dk	rCy|d}Wntk
rBYnX|S)Ndecodembcs)getattrUnicodeError)sZdecrrrr]s
rc@s@eZdZddZddZddZddZd	S)

MacroExpandercCsi|_|j|dS)N)macrosload_macros)selfversionrrr__init__gs	zMacroExpander.__init__cCs@x9tD]1}t||}|r|||jd|<PqWdS)Nz$(%s))HKEYSr r')r)Zmacropathrrrrrr	set_macroks

zMacroExpander.set_macroc
Cs=d|}|jd|dd|jd|ddd}|jd|d	y9|d
krv|jd|dn|jd|d
Wn1tk
r}ztdWYdd}~XnXd}xrtD]j}yt||}Wntk
rwYnXt|d}t|d||f}	|	d|jd<qWdS)Nz%Software\Microsoft\VisualStudio\%0.1fZVCInstallDirz	\Setup\VCZ
productdirZVSInstallDirz	\Setup\VSz Software\Microsoft\.NETFrameworkZFrameworkDirZinstallrootg@ZFrameworkSDKDirzsdkinstallrootv1.1ZsdkinstallrootaPython was built with Visual Studio 2003;
extensions must be built with a compiler than can generate compatible binaries.
Visual Studio 2003 was not found on this system. If you have Cygwin installed,
you can try compiling with MingW32, by passing "-c mingw32" to setup.py.z.Software\Microsoft\NET Framework Setup\Productrz%s\%sr*z$(FrameworkVersion))	r.KeyErrorrr,rr
rr r')
r)r*ZvsbaseZnetexcprhrrrrrr(rs*


zMacroExpander.load_macroscCs6x/|jjD]\}}|j||}qW|S)N)r'itemsreplace)r)r%rvrrrsubszMacroExpander.subN)__name__
__module____qualname__r+r.r(r6rrrrr&fsr&cCsd}tjj|}|d
kr(dS|t|}tj|djdd\}}t|ddd}|dkr|d7}t|ddd}|dkrd	}|dkr||SdS)NzMSC v.r 
g$@r)sysr*findlensplitint)prefixrr%restZmajorVersionZminorVersionrrrget_build_versions%
rHcCsXd}tjj|}|dkr(dStjjd|}tj|t||S)Nz bit (rIntel)r?)rAr*rBrC)rFrjrrrget_build_architecturesrLcCsFg}x9|D]1}tjj|}||kr
|j|q
W|S)N)osr-normpathr)pathsZ
reduced_pathsr1Znprrrnormalize_and_reduce_pathss
rPc@smeZdZdZiZdgZdddgZdgZdgZeeeeZ	dZ
d	Zd
ZdZ
dZZd
ZdddddZddZddddZdddddddddZdddddZdddddddddddd
ZddZdd Zd!d"Zdd#d$Zd%d&Zd'd(d)Zd*d+ZdS),MSVCCompilerZmsvcz.cz.ccz.cppz.cxxz.rcz.mcz.resz.objz.libz.dllz%s%sz.exercCstj||||t|_t|_|jdkr|jdkrjd|_t|j|_n	d|_d|j|_	nd|jd|_	d|_
dS)	NrIzSoftware\Microsoft\VisualStudiozSoftware\Microsoft\DevstudiozVisual Studio version %szMicrosoft SDK compiler %sr:F)rr+rH_MSVCCompiler__versionrL_MSVCCompiler__arch_MSVCCompiler__rootr&_MSVCCompiler__macros_MSVCCompiler__productinitialized)r)verbosedry_runforcerrrr+s		zMSVCCompiler.__init__cCsg|_dtjkrfdtjkrf|jdrfd|_d|_d|_d|_d|_n|j	d|_t
|jd	krtd
|j|jd|_|jd|_|jd|_|jd|_|jd|_|j
d|j
dy5x.tjdjd
D]}|jj|q.WWntk
r]YnXt|j|_d
j|jtjd<d|_|jdkrddddddg|_dddddddg|_n9ddddddg|_dddddddg|_dddg|_|jdkrOddddg|_ndddddg|_dg|_d |_dS)!NZDISTUTILS_USE_SDKZMSSdkzcl.exezlink.exezlib.exezrc.exezmc.exer-rzxPython was built with %s, and extensions need to be built with the same version of the compiler, but it isn't installed.libinclude;rIz/nologoz/Oxz/MDz/W3z/GXz/DNDEBUGz/Odz/MDdz/Z7z/D_DEBUGz/GS-z/DLLz/INCREMENTAL:NOrRz/INCREMENTAL:noz/DEBUGz	/pdb:NoneT)_MSVCCompiler__pathsrMenvironfind_execclinkerr\rcmcget_msvc_pathsrCrrWset_path_env_varrDrr/rPjoinZpreprocess_optionsrTcompile_optionscompile_options_debugldflags_sharedrSldflags_shared_debugZldflags_staticrX)r)r1rrr
initializesR	-				



	zMSVCCompiler.initializecCs;|dkrd}g}x|D]}tjj|\}}tjj|d}|tjj|d}||jkrtd||rtjj|}||jkr|j	tjj
|||jq||jkr|j	tjj
|||jq|j	tjj
|||j
qW|S)NrnrzDon't know how to compile %s)rMr-splitext
splitdriveisabssrc_extensionsrbasename_rc_extensionsrrh
res_extension_mc_extensions
obj_extension)r)Zsource_filenamesZ	strip_dir
output_dirZ	obj_namesZsrc_namerextrrrobject_filenames8s(
zMSVCCompiler.object_filenamesNc	Cs|js|j|j||||||}	|	\}}
}}}|pOg}
|
jd|rx|
j|jn|
j|jx|
D]}y||\}}Wntk
rwYnX|rtj	j
|}||jkrd|}n||jkrd|}n||j
kr|}d|}y)|j|jg||g|gWqtk
r}zt|WYdd}~XqXqn||jkrtj	j|}tj	j|}y|j|jgd|d|g|gtj	jtj	j|\}}tj	j||d}|j|jgd|g|gWqtk
r}zt|WYdd}~XqXqntd||fd	|}y-|j|jg|
|||g|Wqtk
r}zt|WYdd}~XqXqW|
S)
Nz/cz/Tcz/Tpz/foz-hz-rz.rcz"Don't know how to compile %s to %sz/Fo)rXrmZ_setup_compilerextendrjrir/rMr-abspath
_c_extensions_cpp_extensionsrtspawnrdrrrvdirnamererorsrhrb)r)Zsourcesrxr'Zinclude_dirsdebug
extra_preargsextra_postargsZdependsZcompile_infoobjectsZpp_optsZbuildZcompile_optsobjsrcryZ	input_optZ
output_optmsgZh_dirZrc_dirr_Zrc_filerrrcompileWsj	






#$$#
#zMSVCCompiler.compilec	Cs|js|j|j||\}}|j|d|}|j||r|d|g}|riy|j|jg|Wqtk
r}zt|WYdd}~XqXnt	j
d|dS)Nrxz/OUT:zskipping %s (up-to-date))rXrm_fix_object_argslibrary_filename
_need_linkrr\rrr
r)	r)rZoutput_libnamerxrtarget_langoutput_filenameZlib_argsrrrrcreate_static_libs	
	"zMSVCCompiler.create_static_libcCsr|js|j|j||\}}|j|||}|\}}}|rl|jdt|t||||}|dk	rtjj	||}|j
||r^|tjkr|	r|j
dd}q|jdd}n|	r|j
}n	|j}g}x%|p"gD]}|jd|q#W||||d|g}|dk	rtjjtjj|\}}tjj	tjj|d|j|}|jd||
r|
|dd<|r|j||jtjj|y|j|jg|Wqntk
rZ}zt|WYdd}~XqnXntjd|dS)Nz5I don't know what to do with 'runtime_library_dirs': rz/EXPORT:z/OUT:rz/IMPLIB:zskipping %s (up-to-date))rXrmrZ
_fix_lib_argswarnstrr	rMr-rhrrZ
EXECUTABLErlrkrrorsrrr{Zmkpathrrcrrr
r)r)Ztarget_descrrrxZ	librariesZlibrary_dirsZruntime_library_dirsZexport_symbolsrrrZ
build_temprZ
fixed_argsZlib_optsZldflagsZexport_optsZsymZld_argsZdll_nameZdll_extZimplib_filerrrrlinksV	
						
"zMSVCCompiler.linkcCsd|S)Nz	/LIBPATH:r)r)dirrrrlibrary_dir_optionszMSVCCompiler.library_dir_optioncCstddS)Nz<don't know how to set runtime library search path for MSVC++)r)r)rrrrruntime_library_dir_optionsz'MSVCCompiler.runtime_library_dir_optioncCs
|j|S)N)r)r)r\rrrlibrary_optionszMSVCCompiler.library_optioncCs|r|d|g}n	|g}xW|D]K}xB|D]:}tjj||j|}tjj|r6|Sq6Wq)WdSdS)NZ_d)rMr-rhrexists)r)dirsr\rZ	try_namesrrZlibfilerrrfind_library_file#s	

zMSVCCompiler.find_library_filecCsxH|jD]=}tjjtjj||}tjj|r
|Sq
WxUtjdjdD]=}tjjtjj||}tjj|rb|SqbW|S)NZPathr^)r_rMr-rhr|isfiler`rD)r)Zexer1fnrrrra5s	!!zMSVCCompiler.find_exeZx86cCsts
gS|d}|jdkr<d|j|jf}nd|j|f}x`tD]X}t||}|rV|jdkr|jj||jdS||jdSqVW|jdkrx8tD]0}t|d|jdk	r|jdPqWgS)	Nz dirsrRz6%s\%0.1f\VC\VC_OBJECTS_PLATFORM_INFO\Win32\Directoriesz?%s\6.0\Build System\Components\Platforms\Win32 (%s)\Directoriesr^r:z%s\6.0zIt seems you have Visual Studio 6 installed, but the expected registry settings are not present.
You must at least run the Visual Studio GUI once so that these entries are created.)	
_can_read_regrSrUr,r rVr6rDr)r)r-platformrrrrrrrfKs(



zMSVCCompiler.get_msvc_pathscCsM|dkr|jd}n|j|}|rIdj|tj|<dS)Nr\Zlibraryr^)rfrhrMr`)r)rr1rrrrgos
zMSVCCompiler.set_path_env_var)r7r8r9Z
compiler_typeZexecutablesr}r~rtrvrrrurwZstatic_lib_extensionZshared_lib_extensionZstatic_lib_formatZshared_lib_formatZ
exe_extensionr+rmrzrrrrrrrrarfrgrrrrrQsN			
BVF$rQg @z3Importing new compiler from distutils.msvc9compiler)rQ)r&)-rArMZdistutils.errorsrrrrrZdistutils.ccompilerrrr	Z	distutilsr
rwinregZhkey_modZ	OpenKeyExrZEnumKeyrZ	EnumValuererrorr
ImportErrorZwin32apiZwin32coninfoZ
HKEY_USERSHKEY_CURRENT_USERHKEY_LOCAL_MACHINEZHKEY_CLASSES_ROOTr,rr rr&rHrLrPrQrZOldMSVCCompilerZdistutils.msvc9compilerrrrr<module>sX(			

			



	-


Back to Directory File Manager