Edit File: msvc9compiler.cpython-311.opt-2.pyc
� �����f�v���������������������������� �d�dl�Z�d�dlZd�dlZd�dlZd�dlmZmZmZmZm Z �d�dl mZmZ�d�dl mZ�d�dlmZ�d�dlZej��������Zej��������Zej��������Zej��������Zej��������ej��������ej��������ej��������fZej��������dk����o ej ��������dk����Z!e!rdZ"d Z#d Z$ndZ"dZ#d Z$ddd�Z%�G�d��d������������Z&�G�d��d������������Z'd��Z(d��Z)d��Z*d��Z+dd�Z,�e(��������������Z-e-dk�����r�ede-z����������������G�d��de������������Z.dS�)�����N)�DistutilsExecError�DistutilsPlatformError�CompileError�LibError� LinkError)� CCompiler�gen_lib_options)�log)�get_platform�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�Z �d��Z�ee������������Zd��Z�ee������������Zd��Z�ee������������Zd��Z�ee������������ZdS�)�Regc�����������������������t�����������D�](}|����������������������||������������}|r||v�r ||���������c�S��)t����������|��������������N)�HKEYS�read_values�KeyError)�cls�path�key�base�ds��� �>/opt/alt/python311/lib64/python3.11/distutils/msvc9compiler.py� get_valuez Reg.get_value?���sN�������� �� �D�����d�+�+�A��� �S�A�X�X���v� � � ���s�m�m������c������������������������ � �t����������||������������}n#�t����������$�r�Y�d�S�w�xY�wg�}d} � �t����������||������������}n#�t����������$�r�Y�nw�xY�w|���������������������|�������������|dz ��}�=|S��Nr���T����)�RegOpenKeyEx�RegError� RegEnumKey�append)r���r���r����handle�L�i�ks��� r���� read_keysz Reg.read_keysG���s�������+� �!�$��,�,�F�F���� �� �� ��4�4� ������ �� � ��v�q�)�)������ �� �� ��� ���� �H�H�Q�K�K�K� ��F�A� ���s������ "�"�<�� A �A c������������������.���� � �t����������||������������}n#�t����������$�r�Y�d�S�w�xY�wi�}d} � �t����������||������������\��}}}n#�t����������$�r�Y�nIw�xY�w|�����������������������������������}|����������������������|������������||����������������������|������������<���|dz ��}�k|S�r ���)r"���r#����RegEnumValue�lower�convert_mbcs) r���r���r���r&���r���r(����name�value�types ��� r���r���zReg.read_valuesY���s������� � �!�$��,�,�F�F���� �� �� ��4�4� ������ �� � �$0���$;�$;�!��e�T�T���� �� �� ��� �����:�:�<�<�D�(+�(8�(8��(?�(?�A�c���t�$�$�%� ��F�A� ���s������ "�"�A���� A �A c������������������f�����t����������|�dd�������������}|� ��|d������������}�n#�t����������$�r�Y�nw�xY�w|�S�)N�decode�mbcs)�getattr�UnicodeError)�s�decs��� r���r.���zReg.convert_mbcso���sQ�������a��4�(�(���?� ��C��K�K������ �� �� ��� �����s����!�� .�.N) �__name__� __module__�__qualname__r����classmethodr*���r���r.����staticmethod��r���r���r���r���;���s������������������������I�&�&�I������ ���I�&�&�I������(��+�k�*�*�K������� �<��-�-�L�L�Lr���r���c��������������������&�����e�Zd�Zd��Zd��Zd��Zd��ZdS�)� MacroExpanderc������������������\�����i�|�_���������t����������|z��|�_��������|����������������������|�������������d�S�r���)�macros�VS_BASE�vsbase�load_macros)�self�versions��� r����__init__zMacroExpander.__init__{���s/�����������'�������!�!�!�!�!r���c������������������R�����t��������������������������������||������������|�j��������d|z��<���d�S�)Nz$(%s))r���r���rB���)rF����macror���r���s��� r���� set_macrozMacroExpander.set_macro����s&������'*�}�}�T�3�'?�'?���G�e�O�$�$�$r���c����������������������|�����������������������d|�j��������dz���d�������������|�����������������������d|�j��������dz���d�������������|�����������������������dt����������d������������� �|dk����r|�����������������������d t����������d �������������nt����������d �������������n#�t����������$�r�t ����������d�������������w�xY�w|dk����r:|�����������������������d |�j��������d�������������|�����������������������dt ����������d�������������d�S�d}t����������D�]d} �t����������||������������}n#�t����������$�r�Y�� w�xY�wt����������|d������������}t�������������������������������||�d|��������������}|d���������|�j��������d<����ed�S�)N�VCInstallDirz \Setup\VC� productdir�VSInstallDirz \Setup\VS�FrameworkDir�installroot������� @�FrameworkSDKDirzsdkinstallrootv2.0a��Python was built with Visual Studio 2008; extensions must be built with a compiler than can generate compatible binaries. Visual Studio 2008 was not found on this system. If you have Cygwin installed, you can try compiling with MingW32, by passing "-c mingw32" to setup.py.g������"@�FrameworkVersionzclr version� WindowsSdkDir�currentinstallfolderz.Software\Microsoft\NET Framework Setup\Productr����\rG���z$(FrameworkVersion)) rK���rD����NET_BASEr���r����WINSDK_BASEr���r"���r#���r$���r���r���rB���)rF���rG����pr����hr���r���s��� r���rE���zMacroExpander.load_macros����s���������~�t�{�\�'A�<�P�P�P����~�t�{�\�'A�<�P�P�P����~�x��?�?�?� M��#�~�~����0�(�3�5��5��5��5���3�4�4�4�5����� M�� M�� M�(� L�M��M�� M� M������c�>�>��N�N�-�t�{�M�J�J�J��N�N�?�K�9O�P�P�P�P�P�A�A��� B�� B���$�T�1�-�-�A�A����������H����� ��A�&�&���M�M�$�A�A�A�s�s�(;�<�<��56�y�\���1�2�2� B�� Bs����2B��B)�8D � D�Dc������������������p�����|�j��������������������������������������������D�]\��}}|���������������������||������������}�|S�r���)rB����items�replace)rF���r7���r)����vs��� r����subzMacroExpander.sub����s;�������K�%�%�'�'�� �� �D�A�q�� � �!�Q���A�A��r���N)r9���r:���r;���rH���rK���rE���r`���r>���r���r���r@���r@���y���sV��������������"��"��"� @��@��@�B��B��B�>��������r���r@���c�������������������x���� �d}�t�����������j�����������������������������|�������������}|dk����rdS�|t����������|�������������z���}t�����������j��������|d��������������������������������dd������������\��}}t����������|d�d����������������������dz ��}|dk����r|dz ��}t����������|dd ����������������������d z��}|dk����rd}|dk����r||z���S�d�S�)NzMSC v.�������� r!������� �����������g������$@r���)�sysrG����find�len�split�int)�prefixr(���r7����rest�majorVersion�minorVersions��� r����get_build_versionrr�������s�������� ��F������ � �A��B�w�w��q� �C��K�K��A��k�!�"�"�o�#�#�C��+�+�G�A�t��q��"��v�;�;��?�L��r��������q��1��v�;�;��%�L��q������q����l�*�*��4r���c����������������������� �g�}|�D�]:}t�����������j�����������������������������|������������}||vr|���������������������|��������������;|S�r���)�osr����normpathr%���)�paths� reduced_pathsrZ����nps��� r����normalize_and_reduce_pathsry�������sX������� ��M� ��%��%�� �W� � �a� � �� �]�"�"�� � ��$�$�$���r���c������������������������ �|�����������������������t����������j��������������������}g�}|D�]}||vr|���������������������|��������������t����������j�����������������������������|������������}|S�r���)rl���rt����pathsepr%����join)�variable�oldList�newListr(����newVariables��� r����removeDuplicatesr��������se��������n�n�R�Z�(�(�G��G� �������G����N�N�1������*�/�/�'�*�*�K��r���c���������������������� �t�����������|�z��} �t�������������������������������d|z��d������������}n&#�t����������$�r�t ����������j��������d�������������d�}Y�nw�xY�w|rt����������j�����������������������������|������������s�d|�z��}t����������j ��������� ��������������������|d�������������}|r�t����������j�����������������������������|������������r�t����������j�����������������������������|t����������j��������t����������j��������d������������}t����������j��������� ��������������������|������������}t����������j�����������������������������|������������st ����������j��������d|z���������������d�S�nt ����������j��������d|z���������������|st ����������j��������d�������������d�S�t����������j�����������������������������|d ������������}t����������j�����������������������������|������������r|S�t ����������j��������d �������������d�S�)Nz%s\Setup\VCrN���z%Unable to find productdir in registryzVS%0.f0COMNTOOLS�VCz%s is not a valid directoryz Env var %s is not set or invalidzNo productdir foundz vcvarsall.bat�Unable to find vcvarsall.bat)rC���r���r���r���r ����debugrt���r����isdir�environ�getr|����pardir�abspath�isfile)rG���rD���rN����toolskey�toolsdir� vcvarsalls��� r����find_vcvarsallr��������s������� ��w� �F���]�]�>�F�#:�#/�1��1� � ���������� �9�:�:�:�� � � ��������E�R�W�]�]�:�6�6��E�%��/���:�>�>�(�D�1�1���� E��� � �h�/�/�� E�����h�� �2�9�d�K�K�J������4�4�J��7�=�=��,�,�� �� �7�*�D�E�E�E��t� �� �I�8�8�C�D�D�D����� �'�(�(�(��t�����Z��9�9�I� �w�~�~�i� � ������I�,�-�-�-��4s����,�� A�Ac���������������������� �t����������|�������������}h�d�}i�}|�t����������d�������������t����������j��������d||��������������t ����������j��������d|�d|�d�t����������j��������t����������j���������������������} �|�����������������������������������\��}}|�����������������������������������dk����r"t����������|� ��������������������d �������������������������|� ��������������������d ������������}|� ��������������������d ������������D�]�}t�������������������������������|������������}d|vr�!|� ����������������������������������}|� ��������������������dd������������\��} } | �����������������������������������} | |v�r;| ���������������������t ����������j��������������������r | d�d ����������} t%����������| ������������|| <����� �|j��������������������������������������������|j��������������������������������������������n7#�|j��������������������������������������������|j��������������������������������������������w�xY�wt-����������|������������t-����������|������������k����r;t/����������t1����������t3����������|������������������������������������������������������������������������|S�)N>����libr����include�libpathr����z'Calling 'vcvarsall.bat %s' (version=%s)�"z" z & set)�stdout�stderrr���r4���� �=r!���rb���)r����r���r ���r����� subprocess�Popen�PIPE�communicate�waitr3���rl���r���r.����stripr-����endswithrt���r{���r����r�����closer����rk���� ValueError�str�list�keys)rG����archr�����interesting�result�popenr����r�����liner���r0���s��� r����query_vcvarsallr��������s+�������w�'�'�I�7�7�7�K� �F���$�%C�D�D�D��I�7��w�G�G�G���� � � �4�4�4�@�$.�O�$.�O� 5�� 5�� 5�E���*�*�,�,�����:�:�<�<�1���(����v�)>�)>�?�?�?����v�&�&���L�L��&�&�� 6�� 6�D��#�#�D�)�)�D��$�����:�:�<�<�D����C��+�+�J�C���)�)�+�+�C��k�!�!��>�>�"�*�-�-��'�!�#�2�#�J�E�.�u�5�5��s��� 6�� ������� ���������� ������� ����������� �6�{�{�c�+�&�&�&�&���T�&�+�+�-�-�0�0�1�1�2�2�2��Ms ����1DG��4G6rR���z(VC %0.1f is not supported by this modulec��������������������������e�Zd�Z �dZi�ZdgZg�d�ZdgZdgZeez���ez���ez���Z dZ dZdZd Z d xZZdZdd �Zdd�Z � �dd�Z � �d d�Z � � �d!d�Z � � � � � � � � � �d"d�Zd��Zd��Zd��Zd��Zd��Zd��Zd#d�Zd��ZdS�)$�MSVCCompiler�msvcz.c)z.ccz.cppz.cxx�.rcz.mcz.resz.objz.libz.dllz%s%sz.exer���c�����������������������t����������j��������|�|||�������������t����������|�_��������d|�_��������g�|�_��������d�|�_��������d�|�_��������d|�_��������d�S�)NzSoftware\Microsoft\VisualStudioF) r���rH����VERSION�_MSVCCompiler__version�_MSVCCompiler__root�_MSVCCompiler__paths� plat_name�_MSVCCompiler__arch�initialized)rF����verbose�dry_run�forces��� r���rH���zMSVCCompiler.__init__H��sJ��������D�'�7�E�:�:�:� ���8������������ ����r���Nc�����������������������|�t������������������������}d}||vrt����������d|���������������dt����������j��������v�rHdt����������j��������v�r:|����������������������d������������r%d|�_��������d|�_��������d|�_��������d|�_��������d |�_ ���������nj|t������������������������k����s|d k����rt����������|���������}n*t����������t���������������������������������dz���t����������|���������z���}t����������t����������|������������}|d���������� ��������������������t����������j��������������������|�_��������|d ���������t����������j��������d <���|d���������t����������j��������d<���t!����������|�j��������������������dk����rt����������d|�j��������z���������������|����������������������d������������|�_��������|����������������������d������������|�_��������|����������������������d������������|�_��������|����������������������d������������|�_��������|����������������������d ������������|�_ �������� �t����������j��������d���������� ��������������������d������������D�]}|�j�����������������������������|��������������n#�t&����������$�r�Y�nw�xY�wt)����������|�j��������������������|�_��������d���������������������|�j��������������������t����������j��������d<���d�|�_��������|�j��������dk����rg�d�|�_��������g�d�|�_��������ng�d�|�_��������g�d�|�_��������g�d�|�_��������|�j��������dk����r g�d�|�_��������dg|�_��������d|�_��������d�S�)Nr���z--plat-name must be one of �DISTUTILS_USE_SDK�MSSdkzcl.exezlink.exezlib.exezrc.exezmc.exer����_r���r����r����r���zxPython was built with %s, and extensions need to be built with the same version of the compiler, but it isn't installed.�;r ���)�/nologo�/Ox�/MD�/W3�/DNDEBUG)r�����/Od�/MDdr�����/Z7�/D_DEBUG)r����r����r����r�����/GS-r����)r����r����r����r����r����r����r����)�/DLLr����z/INCREMENTAL:NO����)r����r����z/INCREMENTAL:noz/DEBUGr����T)r���r���rt���r�����find_exe�cc�linkerr�����rc�mc�PLAT_TO_VCVARSr����r����rl���r{���r����rk����_MSVCCompiler__productr%���r���ry���r|����preprocess_optionsr�����compile_options�compile_options_debug�ldflags_sharedr�����ldflags_shared_debug�ldflags_staticr����)rF���r�����ok_plats� plat_spec�vc_envrZ���s��� r���� initializezMSVCCompiler.initializeS��s��������$���I�'���H�$�$�(�(�*2�(�*5��6��6�� 6���"�*�,�,��B�J�1F�1F�4�=�=�Ya�Kb�Kb�1F���D�G�$�D�K� �D�H��D�G��D�G�G���L�N�N�*�*�i�7�.B�.B�*�9�5� � ��+�<�>�>�:�S�@�*�9�5�6� ��%�W�i�8�8�F�!�&�>�/�/�� �;�;�D�L� &�u� �B�J�u��$*�9�$5�B�J�y�!��4�<� � �A�%�%�,��.J����.(��)��)��)� ��m�m�H�-�-�D�G��-�-� �3�3�D�K��}�}�Y�/�/�D�H��m�m�H�-�-�D�G��m�m�H�-�-�D�G� ��Z��'�-�-�c�2�2�� '�� '����#�#�A�&�&�&�&� '���� �� �� ��D� ����1�$�,�?�?��� �X�X�d�l�3�3�� �6��"&����;�%���$1��$1��$1�D� �*=��*=��*=�D�&�&�$1��$1��$1�D� �*=��*=��*=�D�&��E�D�D����>�Q���)��)��)�D�%��!*�l�������s����*AH-��- H:�9H:��c�����������������������|�d}g�}|D��]s}t�����������j�����������������������������|������������\��}}t�����������j�����������������������������|������������d���������}|t�����������j�����������������������������|������������d�����������}||�j��������vrt ����������d|z���������������|rt�����������j�����������������������������|������������}||�j��������v�r<|� ��������������������t�����������j��������� ��������������������|||�j��������z������������������������������||�j��������v�r=|� ��������������������t�����������j��������� ��������������������|||�j��������z������������������������������8|� ��������������������t�����������j��������� ��������������������|||�j ��������z������������������������������u|S�)Nr����r!���zDon't know how to compile %s)rt���r����splitext� splitdrive�isabs�src_extensionsr����basename�_rc_extensionsr%���r|���� res_extension�_mc_extensions� obj_extension)rF����source_filenames� strip_dir� output_dir� obj_names�src_namer����exts��� r����object_filenameszMSVCCompiler.object_filenames���s���������B�z�� �(�� L�� L�H��'�*�*�H�5�5�K�T�3��7�%�%�d�+�+�A�.�D���� � �d�+�+�,�,�-�D��$�-�-�-��#�$B�X�$M�N�N�N��� /��w�'�'��.�.���d�)�)�)�� � �"�'�,�,� �04�t�7I�0I�#K��#K��L��L��L��L���+�+�+�� � �"�'�,�,� �04�t�7I�0I�#K��#K��L��L��L��L��� � �"�'�,�,� �04�t�7I�0I�#K��#K��L��L��L��L��r���c ����������������������|�j���������s|�������������������������������������|����������������������||||||������������} | \��}} }}}|pg�} | ���������������������d�������������|r| ���������������������|�j���������������������n| ���������������������|�j���������������������| D��];} �||���������\��}}n#�t����������$�r�Y��w�xY�w|rt����������j ��������� ��������������������|������������}||�j��������v�rd|z���}�n�||�j��������v�rd|z���}�n�||�j ��������v�rQ|}d|z���} �|����������������������|�j��������g|z���|gz���|gz����������������n!#�t ����������$�r}t#����������|�������������d�}~ww�xY�w��||�j��������v��rt����������j �����������������������������|������������}t����������j �����������������������������|������������} �|����������������������|�j��������gd|d|gz���|gz����������������t����������j �����������������������������t����������j �����������������������������|������������������������\��}}t����������j �����������������������������||dz���������������}|����������������������|�j��������gd|z���gz���|gz����������������n!#�t ����������$�r}t#����������|�������������d�}~ww�xY�w���t#����������d|�d |���������������d |z���} �|����������������������|�j��������g| z���|z���||gz���|z������������������#�t ����������$�r}t#����������|�������������d�}~ww�xY�w| S�)Nz/cz/Tcz/Tpz/foz-hz-rr����zDon't know how to compile z to z/Fo)r����r�����_setup_compiler%����extendr����r����r���rt���r���r����� _c_extensions�_cpp_extensionsr�����spawnr����r���r���r�����dirnamer����r����r����r|���r����)rF����sourcesr����rB����include_dirsr����� extra_preargs�extra_postargs�depends�compile_info�objects�pp_opts�build�compile_opts�obj�srcr����� input_opt� output_opt�msg�h_dir�rc_dirr���r�����rc_files��� r����compilezMSVCCompiler.compile���s���������� ��O�O�����*�*�:�v�|�+2�G�^�M��M��:F�7�����%�$�*������T�"�"�"��� 6����� :�;�;�;�;����� 4�5�5�5���? (��? (�C� � ��:���S�S���� �� �� ��� ������ +���g�o�o�c�*�*���d�(�(�(�!�C�K� � ���,�,�,�!�C�K� � ���+�+�+�� �"�S�[� �,��J�J���y�7�2� *�|� ,�/8�k� :��;��;��;��;��)��,��,��,�&�s�+�+�+�����,�������+�+�+�������,�,�������-�-��,��J�J���y� $�e�T�6�:� ;�>A�U� C��D��D��D� �g�.�.���0@�0@�#�0F�0F�G�G�G�D�!� �g�l�l�F�D�5�L�A�A�G��J�J���y� %���}� -�07�y� 9��:��:��:��:���*��,��,��,�&�s�+�+�+�����,������#�l�&)�c�c�3�3�$0��1��1��1�����J� (�� � �D�G�9�|�3�g�=�%�z�2�3�)�*��+��+��+��+���&�� (�� (�� (�"�3�'�'�'����� (������s[����B � B-�,B-�&D)�) E�3E�E�B.I� I!� I�I!�)J,�, K �6K�K c����������������������|�j���������s|�������������������������������������|����������������������||������������\��}}|����������������������||�������������}|����������������������||������������rN|d|z���gz���}|r � �|����������������������|�j��������g|z����������������d�S�#�t����������$�r}t����������|�������������d�}~ww�xY�wt����������j ��������d|�������������d�S�)N)r�����/OUT:�skipping %s (up-to-date))r����r�����_fix_object_args�library_filename� _need_linkr����r����r���r���r ���r����) rF���r�����output_libnamer����r�����target_lang�output_filename�lib_argsr��s ��� r����create_static_libzMSVCCompiler.create_static_lib��s����������� ��O�O���� $� 5� 5�g�z� J� J���*��/�/��;E��0��G��G����?�?�7�O�4�4�� C��'�O�";�!<�<�H��� �� $�� � �D�H�:��0�1�1�1�1�1��%�� $�� $�� $��s�m�m�#����� $����� �I�0�/�B�B�B�B�Bs����/B�� B-�B(�(B-c������������������"����|�j���������s|�������������������������������������|����������������������||������������\��}}|����������������������|||������������}|\��}}}|r%|����������������������dt����������|������������z����������������t ����������|�|||������������}|� t����������j��������� ��������������������||������������}|�� ��������������������||�������������r6|t����������j��������k����r"| r|�j ��������dd�����������}n!|�j��������dd�����������}n| r|�j ��������}n|�j��������}g�}|pg�D�]}|���������������������d|z�����������������||z���|z���|z���d|z���gz���}t����������j�����������������������������|d���������������������}|��t����������j�����������������������������t����������j�����������������������������|������������������������\��}}t����������j��������� ��������������������||����������������������|������������������������}|���������������������d|z����������������|����������������������|||�������������| r| |d�d�<���|r|���������������������|�������������|����������������������t����������j�����������������������������|������������������������� �|����������������������|�j��������g|z����������������n!#�t2����������$�r}t5����������|�������������d�}~ww�xY�w|����������������������||������������}|�K|\��}}d|�d|��} �|����������������������d d d||g�������������d�S�#�t2����������$�r}t5����������|�������������d�}~ww�xY�wd�S�t9����������j��������d|�������������d�S�) Nz5I don't know what to do with 'runtime_library_dirs': r!���z/EXPORT:r ��r���z/IMPLIB:z-outputresource:r����zmt.exez-nologoz -manifestr ��)r����r����r��� _fix_lib_args�warnr����r ���rt���r���r|���r ��r���� EXECUTABLEr����r����r%���r����r����r����r���manifest_setup_ldargsr�����mkpathr����r����r���r����manifest_get_embed_infor ���r����)rF����target_descr����r��r����� libraries�library_dirs�runtime_library_dirs�export_symbolsr����r����r����� build_tempr��� fixed_args�lib_opts�ldflags�export_opts�sym�ld_args�dll_name�dll_ext�implib_filer���mfinfo� mffilename�mfid�out_args��� r����linkzMSVCCompiler.link5��s���������� ��O�O���� $� 5� 5�g�z� J� J���*��'�'� �<�(<�>��>� �:D�7��L�"6��� 5��I�I�N��2�3�3�4�� 5�� 5�� 5��#�4�#/�1E�#,�.��.����!� �g�l�l�:��G�G�O��?�?�7�O�4�4��= C��i�2�2�2���6�"�7����;�G�G�"�1�!�"�"�5�G�G���2�"�7�G�G�"�1�G��K�&�,�"�� 5�� 5���"�"�:��#3�4�4�4�4���)�K�7���")�O�";�!<�=�G���������4�4�J��)�&(�g�&6�&6��G�$�$�_�5�5�'7��'7�#��7� �g�l�l���)�)�(�3�3�5��5������ �[� 8�9�9�9��&�&�� �G�L�L�L��� ,�+�������� /����~�.�.�.��K�K������8�8�9�9�9� %�� � �D�K�=�7�2�3�3�3�3��%�� %�� %�� %���n�n�$����� %������1�1�+�w�G�G�F��!�#)� � �D�D�5D�_�_�d�d�K��)��J�J��)�[� *�G� 5��6��6��6��6��6��)��)��)��)�#�C�.�.�(�����)���� �"�!�� �I�0�/�B�B�B�B�Bs0����I4��4 J�>J � J�;K�� K5�!K0�0K5c�����������������������t�����������j�����������������������������|t�����������j�����������������������������|������������dz���������������}|���������������������d|z����������������d�S�)Nz .manifest�/MANIFESTFILE:)rt���r���r|���r����r%���)rF���r��r��r%��� temp_manifests��� r���r��z"MSVCCompiler.manifest_setup_ldargs���sV�������������� � ��1�1�K�?�A��A� �� ���'�-�7�8�8�8�8�8r���c������������������������|D�]5}|����������������������d������������r|���������������������dd������������d���������}�n�6d�S�|t����������j��������k����rd}nd}|����������������������|������������}|�d�S�||fS�)Nr/���:r!���rg���)� startswithrl���r���r���_remove_visual_c_ref)rF���r��r%���argr0��r+��s��� r���r��z$MSVCCompiler.manifest_get_embed_info���s������� ��� �� �C��~�~�.�/�/�� � #� � �#�q� 1� 1�!� 4� ��� � ��4��)�.�.�.���D�D���D� �5�5�m�D�D�M�� ��4��d�"�"r���c������������������z���� �t����������|������������} �|�����������������������������������}|������������������������������������n#�|������������������������������������w�xY�wt����������j��������dt����������j��������������������}t����������j��������|d|������������}d}t����������j��������|d|������������}t����������j��������dt����������j��������������������}t����������j��������||�������������d�S�t����������|d������������} �|���������������������|�������������||������������������������������������S�#�|������������������������������������w�xY�w#�t����������$�r�Y�d�S�w�xY�w)NzU<assemblyIdentity.*?name=("|')Microsoft\.VC\d{2}\.CRT("|').*?(/>|</assemblyIdentity>)r����z*<dependentAssembly>\s*</dependentAssembly>zI<assemblyIdentity.*?name=(?:"|')(.+?)(?:"|').*?(?:/>|</assemblyIdentity>)�w) �open�readr�����rer���DOTALLr`����search�write�OSError)rF���� manifest_file� manifest_f�manifest_buf�patterns��� r���r4��z!MSVCCompiler._remove_visual_c_ref���sR�����$ ���m�,�,�J� #�)���0�0��� � �"�"�"�"�� � � �"�"�"�"�����j�D�� ����G���6�'�2�|�<�<�L�C�G��6�'�2�|�<�<�L���j�5�68�i�A��A�G���y��,�/�/�7��t��m�S�1�1�J� #�� � ��.�.�.�$�� � �"�"�"�"�� � � �"�"�"�"������� �� �� ��D�D� ���sD����D,��;��D,��A�BD,��D,��(D��>D,��D)�)D,��, D:�9D:c�����������������������d|z���S�)Nz /LIBPATH:r>����rF����dirs��� r����library_dir_optionzMSVCCompiler.library_dir_option���s �������S� � r���c������������������ �����t����������d�������������)Nz<don't know how to set runtime library search path for MSVC++)r���rD��s��� r����runtime_library_dir_optionz'MSVCCompiler.runtime_library_dir_option���s������$�L�N��N�� Nr���c������������������,�����|�����������������������|������������S�r���)r��)rF���r����s��� r����library_optionzMSVCCompiler.library_option���s�������$�$�S�)�)�)r���c������������������������|r|dz���|g}n|g}|D�]_}|D�]Z}t�����������j�����������������������������||����������������������|������������������������}t�����������j�����������������������������|������������r|c�c�S��[�`d�S�)N�_d)rt���r���r|���r���exists)rF����dirsr����r����� try_namesrE��r/����libfiles��� r����find_library_filezMSVCCompiler.find_library_file���s���������� ��t��S�)�I�I���I��� �� �C�!�� #�� #���'�,�,�s�D�,A�,A�4�,H�,H�I�I���7�>�>�'�*�*��#�"�N�N�N�N�N�#� #���4r���c����������������������� �|�j���������D�]b}t����������j�����������������������������t����������j�����������������������������|������������|������������}t����������j�����������������������������|������������r|c�S��ct����������j��������d������������������������������d������������D�]b}t����������j�����������������������������t����������j�����������������������������|������������|������������}t����������j�����������������������������|������������r|c�S��c|S�)N�Pathr����)r����rt���r���r|���r����r����r����rl���)rF����exerZ����fns��� r���r����zMSVCCompiler.find_exe���s������� ����� �� �A�����b�g�o�o�a�0�0�#�6�6�B��w�~�~�b�!�!�� �� � � � ����F�#�)�)�#�.�.�� �� �A�����b�g�o�o�a�0�0��5�5�B��w�~�~�b�!�!�� �� � � � ��� r���)r���r���r���r���)r���r����)NNNr���NNN)Nr���N) NNNNNr���NNNN)r���)r9���r:���r;���� compiler_type�executablesr����r����r����r����r����r����r�����static_lib_extension�shared_lib_extension�static_lib_format�shared_lib_format� exe_extensionrH���r����r����r��r��r-��r��r��r4��rF��rH��rJ��rQ��r����r>���r���r���r����r����*��s��������������6���M���K���F�M�-�-�-�O��W�N��W�N��$�o�5�$�%�'5�6�N��M��M�!��!��,2�2��)��M� !�� !�� !�� !�Q ��Q ��Q ��Q �n�$%�$&��������@�HI�AE�R��R��R��R�p�&*� !�&*�C��C��C��C�:����"&� ��� ���]C��]C��]C��]C�~ 9�� 9�� 9�#��#��#�0%��%��%�V!��!��!�N��N��N�*��*��*��������$��������r���r����)r ���)/rt���r����ri���r:���distutils.errorsr���r���r���r���r����distutils.ccompilerr���r ���� distutilsr ����distutils.utilr����winreg� OpenKeyExr"����EnumKeyr$���� EnumValuer,����errorr#���� HKEY_USERS�HKEY_CURRENT_USER�HKEY_LOCAL_MACHINE�HKEY_CLASSES_ROOTr����platform�maxsize�NATIVE_WIN64rC���rY���rX���r����r���r@���rr���ry���r����r����r����r����r����r>���r���r����<module>rm�����sf������ � � � ���������� � � � �� � � � �?��?��?��?��?��?��?��?��?��?��?��?��?��?��:��:��:��:��:��:��:��:��������������'��'��'��'��'��'�� � � � ���� �^� �����<�� � � � !� � "� � !� #�� ����'�?�C�K�%�,?���� 3��C�G�J�K�>�H�H�6�G�>�K�2�H�������� <.��<.��<.��<.��<.��<.��<.��<.�|,��,��,��,��,��,��,��,�\�����2����� �� �� �!��!��!�F&��&��&��&�R�� � � �� �S�=�=� � �!K�g�!U� V� V�V�j��j��j��j��j�9��j��j��j��j��jr���