§
    –t¯bÁ
  ã                  ó‚   — d dl mZ d dlZd dlZd dlmc mZ ddl	m
Z
 ej        rddlmZ ddlmZ  G d„ d	e
¦  «        ZdS )
é    )ÚannotationsNé   )ÚVs2010Backendé   )ÚBuild)ÚInterpreterc                  ó,   ‡ — e Zd Zdˆ fd„Zd„ Zd„ Zˆ xZS )	ÚVs2019BackendÚbuildúT.Optional[Build]ÚinterpreterúT.Optional[Interpreter]c                óª  •— t          ¦   «                              ||¦  «         d| _        d| _        d| _        | j        �Õ| j        j        j        j        }|r3t          d„ | 
                    ¦   «         D ¦   «         ¦  «        rd| _        nu|rst          d„ | 
                    ¦   «         D ¦   «         ¦  «        rHt          | 
                    ¦   «         ¦  «        d         }|j                             d¦  «        rd	| _        | j        sd
| _        d| _        t           j                             dd ¦  «        }|r|                     d¦  «        | _        d S d S )NÚvs2019z12.00z
Version 16c              3  ó,   K  — | ]}|j         d k    V — ŒdS )zclang-clN©Úid©Ú.0Úcs     úB/usr/lib/python3/dist-packages/mesonbuild/backend/vs2019backend.pyú	<genexpr>z)Vs2019Backend.__init__.<locals>.<genexpr>#   s)   è è € ÐHÐH°A˜QœT ZÒ/ÐHÐHÐHÐHÐHÐHó    ÚClangCLc              3  ó,   K  — | ]}|j         d k    V — ŒdS )zintel-clNr   r   s     r   r   z)Vs2019Backend.__init__.<locals>.<genexpr>%   s)   è è € ÐJÐJ°a˜qœt zÒ1ÐJÐJÐJÐJÐJÐJr   r   Ú19zIntel C++ Compiler 19.0Úv142Ú2019ÚWindowsSDKVersionú\)ÚsuperÚ__init__ÚnameÚsln_file_versionÚsln_version_commentÚenvironmentÚcoredataÚ	compilersÚhostÚallÚvaluesÚplatform_toolsetÚlistÚversionÚ
startswithÚ
vs_versionÚosÚenvironÚgetÚrstripÚwindows_target_platform_version)Úselfr   r   Úcompsr   Úsdk_versionÚ	__class__s         €r   r"   zVs2019Backend.__init__   sU  ø€ Ý‰Œ×Ò˜ Ñ,Ô,Ð,ØˆŒ	Ø 'ˆÔØ#/ˆÔ ØÔÐ'ØÔ$Ô-Ô7Ô<ˆEØð F�ÐHÐH¸¿º¹¼ÐHÑHÔHÑHÔHð FØ(1�Ô%Ð%Øð F�3ÐJÐJ¸5¿<º<¹>¼>ÐJÑJÔJÑJÔJð FÝ˜Ÿš™œÑ(Ô(¨Ô+�Ø”9×'Ò'¨Ñ-Ô-ð FØ,E�DÔ)àÔ(ð /Ø(.�Ô%Ø$ˆDŒOå”j—n’nÐ%8¸$Ñ?Ô?ˆØð 	LØ3>×3EÒ3EÀdÑ3KÔ3KˆDÔ0Ð0Ð0ð	Lð 	Lr   c                ó:   — dt          j        |d¦  «        _        d S )NÚ	DebugFullÚGenerateDebugInformation)ÚETÚ
SubElementÚtext)r6   Úlinks     r   Úgenerate_debug_informationz(Vs2019Backend.generate_debug_information2   s   € à?J�Œ�dÐ6Ñ7Ô7Ô<Ð<Ð<r   c                ó>  — d|v rHd„ |d         D ¦   «         }|r4|d                               dd¦  «        t          j        |d¦  «        _        d|v rJd„ |d         D ¦   «         }|r8|d                               d	d
¦  «        t          j        |d¦  «        _        d S d S d S )NÚcppc                ó<   — g | ]}|                      d ¦  «        ¯|‘ŒS )ú/std:c++©r/   ©r   Úxs     r   ú
<listcomp>z=Vs2019Backend.generate_lang_standard_info.<locals>.<listcomp>8   s)   € ÐOÐOÐO˜Q°a·l²lÀ:Ñ6NÔ6NÐO�qÐOÐOÐOr   r   rE   ÚstdcppÚLanguageStandardr   c                ó<   — g | ]}|                      d ¦  «        ¯|‘ŒS )ú/std:crF   rG   s     r   rI   z=Vs2019Backend.generate_lang_standard_info.<locals>.<listcomp><   s)   € ÐKÐKÐK˜Q°A·L²LÀÑ4JÔ4JÐK�qÐKÐKÐKr   rM   ÚstdcÚLanguageStandard_C)Úreplacer=   r>   r?   )r6   Ú	file_argsÚclconfÚoptargss       r   Úgenerate_lang_standard_infoz)Vs2019Backend.generate_lang_standard_info6   sÉ   € Ø�IÐÐØOÐO )¨EÔ"2ÐOÑOÔOˆGØð jØAHÈÄ×ASÒASÐT^Ð`hÑAiÔAi•”˜fÐ&8Ñ9Ô9Ô>Ø�)ÐÐØKÐK )¨C¤.ÐKÑKÔKˆGØð hØCJÈ1Ä:×CUÒCUÐV^Ð`fÑCgÔCg•”˜fÐ&:Ñ;Ô;Ô@Ð@Ð@ð Ððhð hr   )r   r   r   r   )Ú__name__Ú
__module__Ú__qualname__r"   rA   rT   Ú__classcell__)r9   s   @r   r
   r
      sk   ø€ € € € € ðLð Lð Lð Lð Lð Lð,Kð Kð Kðhð hð hð hð hð hð hr   r
   )Ú
__future__r   r1   ÚtypingÚTÚxml.etree.ElementTreeÚetreeÚElementTreer=   Úvs2010backendr   ÚTYPE_CHECKINGr   r   r   r   r
   © r   r   ú<module>rb      sÇ   ðð #Ð "Ð "Ð "Ð "Ð "à 	€	€	€	Ø Ð Ð Ð Ø "Ð "Ð "Ð "Ð "Ð "Ð "Ð "Ð "à (Ð (Ð (Ð (Ð (Ð (à„?ð *ØÐÐÐÐÐØ)Ð)Ð)Ð)Ð)Ð)ð#hð #hð #hð #hð #h�Mñ #hô #hð #hð #hð #hr   