]\@sddlZddlZddlmZmZmZmZmZddlm Z m Z m Z ddl m Z dZy@ddlZdZeZejZejZejZejZWnek r4yLddlZddlZdZeZejZejZejZejZWnek r/e jdYnXYnXerYejejejej fZ!dd Z"d d Z#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)rrrdrnamevaluetyperrr read_valuesHs    r c CsGt|dd}|dk rCy|d}Wntk rBYnX|S)Ndecodembcs)getattr UnicodeError)sZdecrrrr]s  rc@s@eZdZddZddZddZddZd S) MacroExpandercCsi|_|j|dS)N)macros load_macros)selfversionrrr__init__gs zMacroExpander.__init__cCs@x9tD]1}t||}|r|||jd| sX(                   -