�
���c�u � �� � d Z ddlZddlZddlZddlZddlZddlmZmZm Z m
Z
mZ ddlm
Z
mZ ddlmZ ddlmZ ddlZ ej de� � ej Zej Zej Zej Zej ej ej ej! fZ"ej# d k o
ej$ d
k Z%e%rdZ&dZ'd
Z(ndZ&dZ'dZ(ddd�Z) G d� d� � Z* G d� d� � Z+d� Z,d� Z-d� Z.d� Z/dd�Z0 e,� � Z1 G d� de
� � Z2dS ) a distutils.msvc9compiler
Contains MSVCCompiler, an implementation of the abstract CCompiler class
for the Microsoft Visual Studio 2008.
The module is compatible with VS 2005 and VS 2008. You can find legacy support
for older versions of VS in distutils.msvccompiler.
� N� )�DistutilsExecError�DistutilsPlatformError�CompileError�LibError� LinkError)� CCompiler�gen_lib_options)�log)�get_platformz�msvc9compiler is deprecated and slated to be removed in the future. Please discontinue use or file an issue with pypa/distutils describing your use case.�win32l z1Software\Wow6432Node\Microsoft\VisualStudio\%0.1fz5Software\Wow6432Node\Microsoft\Microsoft SDKs\Windowsz,Software\Wow6432Node\Microsoft\.NETFrameworkz%Software\Microsoft\VisualStudio\%0.1fz)Software\Microsoft\Microsoft SDKs\Windowsz Software\Microsoft\.NETFramework�x86�amd64�r
z win-amd64c � � e Zd ZdZd� Z ee� � Zd� Z ee� � Zd� Z ee� � Zd� Z e e� � ZdS )�Regz-Helper class to read values from the registryc � � t D ](}| � ||� � }|r||v r
|| c S �)t |� � ��N)�HKEYS�read_values�KeyError)�cls�path�key�base�ds �E/usr/lib/python3/dist-packages/setuptools/_distutils/msvc9compiler.py� get_valuez
Reg.get_valueN sN � �� � �D�����d�+�+�A��
�S�A�X�X���v�
�
�
���s�m�m�� c �� � t ||� � }n# t $ r Y dS w xY wg }d} t ||� � }n# t $ r Y nw xY w|� |� � |dz
}�=|S )zReturn list of registry keys.Nr Tr )�RegOpenKeyEx�RegError�
RegEnumKey�append)r r r �handle�L�i�ks r � read_keysz
Reg.read_keysW s� � � �!�$��,�,�F�F��� � � ��4�4� ������
�� �
��v�q�)�)�����
�
�
���
����
�H�H�Q�K�K�K�
��F�A�
� �s � �
!�!�; �
A�Ac �, � t ||� � }n# t $ r Y dS w xY wi }d} t ||� � \ }}}n# t $ r Y nIw xY w|� � � }| � |� � || � |� � < |