§
    ƒnócË%  ã                  óŽ  — U d dl mZ ddlmZmZmZmZ ddlmZ ddl	m
Z
 ddlmZ ddlmZ dd	lmZmZmZ dd
lmZ d dlZd dlZej        rJddlmZ ddlmZmZmZ ej        e e!e"ej#        e df         f         Z$ej#        ej#        e e$f         df         Z%i Z&de'd<    e(¦   «         Z)de'd<   d/d„Z*ddddddd d!d"d#d$d%œZ+d0d*„Z,d1d.„Z-dS )2é    )Úannotationsé   )ÚExternalDependencyÚDependencyExceptionÚDependencyMethodsÚNotFoundDependency)ÚCMakeDependency)ÚDubDependency)ÚExtraFrameworkDependency)ÚPkgConfigDependencyé   )ÚlistifyÚMachineChoiceÚ
PerMachine)ÚmlogN)ÚEnvironment)ÚDependencyFactoryÚWrappedFactoryFuncÚDependencyGenerator.z[T.Dict[str, T.Union[T.Type[ExternalDependency], 'DependencyFactory', 'WrappedFactoryFunc']]Úpackagesz
T.Set[str]Ú_packages_accept_languageÚnameÚstrÚkwargsúT.Dict[str, T.Any]Úreturnú
'TV_DepID'c                ó¤  — d| ff}ddl m} t          |¦  «        dk    s
J d¦   «         ‚|                     ¦   «         D ]’\  }}|dv rŒ
t	          |t
          ¦  «        rF|D ]}t	          |t          ¦  «        sJ ‚Œt          t          t          |¦  «        ¦  «        ¦  «        }n$t	          |t          t          t          f¦  «        sJ ‚g |¢||f‘R }Œ“|S )Nr   r   )Úpermitted_dependency_kwargsé   z_Extra kwargs have been added to dependency(), please review if it makes sense to handle it here>   ÚnativeÚversionÚfallbackÚrequiredÚinclude_typeÚallow_fallbackÚdefault_optionsÚnot_found_message)Úinterpreterr   ÚlenÚitemsÚ
isinstanceÚlistr   ÚtupleÚ	frozensetr   ÚboolÚint)r   r   Ú
identifierr   ÚkeyÚvalueÚis          ú@/usr/lib/python3/dist-packages/mesonbuild/dependencies/detect.pyÚget_dep_identifierr7   )   s	  € Ø% t˜nÐ/€JØ9Ð9Ð9Ð9Ð9Ð9ÝÐ*Ñ+Ô+¨rÒ1Ð1Ð1Ølñ 2Ô1Ð1à—l’l‘n”nð 2ð 2‰
ˆˆUð ð 8ð 8ð 8àå�e�TÑ"Ô"ð 	7Øð *ð *�Ý! !¥SÑ)Ô)Ð)Ð)Ð)Ð)Ý�)¥G¨E¡N¤NÑ3Ô3Ñ4Ô4ˆEˆEå˜e¥c­4µÐ%5Ñ6Ô6Ð6Ð6Ð6Ø1�zÐ1 C¨ <Ð1Ð1ˆ
ˆ
ØÐó    ÚBoostÚCUDAÚDUBÚGMockÚGTestÚHDF5ÚLLVMÚMPIÚNetCDFÚOpenMPÚ	WxWidgets)ÚboostÚcudaÚdubÚgmockÚgtestÚhdf5ÚllvmÚmpiÚnetcdfÚopenmpÚ	wxwidgetsÚenvú'Environment'úT.Dict[str, object]ú1T.Union['ExternalDependency', NotFoundDependency]c           	     ó¶  — | sJ ‚|                      dd¦  «        }t          |t          ¦  «        st          d¦  «        ‚t          |                      dd¦  «        t          ¦  «        st          d¦  «        ‚|                      ¦   «         }|t          vrd|v rt          | › d�¦  «        ‚t          |                      d	d¦  «        t          t          f¦  «        st          d
¦  «        ‚t                                ||¦  «        }|                      dd¦  «        rt          j
        nt          j        }t          dd¦  «        |         dz   }t          | |||¦  «        }g }	g }
d}|D �]Ç}	  |¦   «         }|                     ¦   «          |
                     |¦  «         |	                     d ¦  «         |                     ¦   «         }|rd|z   dz   }d|v r|d|j        z   dz   z  }|                     ¦   «         r¦g }|j        r,|                     t)          j        |j        ¦  «        ¦  «         |                     ¦   «         }|r|                     d|z   dz   ¦  «         t)          j        |t)          j        |¦  «        |dz   t)          j        d¦  «        g|¢R Ž  |c S �Œ:# t          $ r‚}t          |t4          j        ¦  «        s
J d¦   «         ‚d| › d|j                             ¦   «         ›d|› �}t)          j        |¦  «         |f|_        |	                     |¦  «         Y d }~�ŒÁd }~ww xY wd„ |
D ¦   «         }|rt)          j         |¦  «        }nd}t)          j        |t)          j        |¦  «        |dz   t)          j!        d¦  «        |rd|› d�nd¦  «         |r/|	r|	d         r|	d         ‚t          d| › d �|rd!|› �ndz   ¦  «        ‚tE          | |¦  «        S )"Nr$   Tz%Keyword "required" must be a boolean.ÚmethodÚ z"Keyword "method" must be a string.Úlanguagez7 dependency does not accept "language" keyword argumentr"   z)Keyword "Version" must be string or list.r!   Fz
Build-timezRun-timez dependencyú(z) zfor ú ú)zfound:ÚYESzfor mypyzDependency lookup for z with method z	 failed: c                ó^   — g | ]*}|                      ¦   «         ¯|                      ¦   «         ‘Œ+S © )Ú	log_tried)Ú.0Úds     r6   ú
<listcomp>z,find_external_dependency.<locals>.<listcomp>’   s-   € ÐDÐDÐD q°a·k²k±m´mÐD�Q—[’[‘]”]ÐDÐDÐDr8   ÚNOz(tried r   zDependency "z" not foundz, tried )#Úgetr,   r0   r   r   Úlowerr   r-   Údisplay_name_mapr   ÚBUILDÚHOSTr   Ú_build_external_dependency_listÚ_check_versionÚappendÚlog_detailsrV   Úfoundr"   r   Únormal_cyanÚlog_infoÚlogÚboldÚgreenÚ	functoolsÚpartialÚfuncr]   ÚdebugÚargsÚformat_listÚredr   )r   rO   r   r$   ÚlnameÚdisplay_nameÚfor_machineÚ	type_textÚ
candidatesÚpkg_excÚpkgdepÚdetailsÚcr_   Úinform   ÚeÚ	bettermsgÚtried_methodsÚtrieds                       r6   Úfind_external_dependencyr†   S   sO  € Ø€K€K€KØ�zŠz˜* dÑ+Ô+€HÝ�h¥Ñ%Ô%ð KÝ!Ð"IÑJÔJÐJÝ�f—j’j ¨2Ñ.Ô.µÑ4Ô4ð HÝ!Ð"FÑGÔGÐGØ�JŠJ‰LŒL€EØÕ-Ð-Ð-°*ÀÐ2FÐ2FÝ! TÐ"bÐ"bÐ"bÑcÔcÐcÝ�f—j’j ¨BÑ/Ô/µ#µt°Ñ=Ô=ð OÝ!Ð"MÑNÔNÐNõ $×'Ò'¨¨uÑ5Ô5€Là)/¯ª°H¸eÑ)DÔ)DÐ\•-Ô%Ð%Í-ÔJ\€Kå˜<¨Ñ4Ô4°[ÔAÀMÑQ€Iõ 1°°s¸KÈÑPÔP€Jà+-€GØ*,€FØ€Gàð !ñ !ˆð	Ø�‘”ˆAØ×ÒÑÔÐØ�MŠM˜!ÑÔÐð �NŠN˜4Ñ Ô Ð Ø—m’m‘o”oˆGØð /Ø ™-¨$Ñ.�Ø˜VÐ#Ð#Ø˜6 A¤JÑ.°Ñ4Ñ4�ð �wŠw‰yŒyð à-/�Ø”9ð =Ø—K’K¥Ô 0°´Ñ ;Ô ;Ñ<Ô<Ð<àŸ:š:™<œ<�Øð 6Ø—K’K  h¡°Ñ 4Ñ5Ô5Ð5å”˜¥D¤I¨lÑ$;Ô$;¸WÀxÑ=OÕQUÔQ[Ð\aÑQbÔQbÐjÐeiÐjÐjÐjÐjà���ñøõ #ð 	ð 	ð 	Ý˜a¥Ô!2Ñ3Ô3Ð?Ð?°ZÑ?Ô?Ð?Øf°ÐfÐfÀAÄF×DTÒDTÑDVÔDVÐfÐfÐcdÐfÐfˆIÝŒJ�yÑ!Ô!Ð!Ø�\ˆAŒFØ�NŠN˜1ÑÔÐÐÐÐÐÑøøøøð	øøøð< EÐD¨FÐDÑDÔD€MØð ÝÔ  Ñ/Ô/ˆˆàˆå„HˆY�œ	 ,Ñ/Ô/°¸8Ñ1CÅTÄXÈdÁ^Ä^Ø#(Ð0Ð�uÐÐÐÐ¨bñ2ô 2ð 2ð ð 
Ið ð 	�w˜q”zð 	Ø˜!”*Ðõ "Ð"B°Ð"BÐ"BÐ"BØ9>Ð#FÐ#5¨eÐ#5Ð#5Ð#5ÀBñ#Hñ Iô Ið 	Iõ ˜d CÑ(Ô(Ð(s   Å)3JÊ
L+Ê)A7L&Ì&L+rz   r   úT.List['DependencyGenerator']c                ó,  — d|v rA|d         d„ t           D ¦   «         vr(t          d                     |d         ¦  «        ¦  «        ‚|                      ¦   «         }|t          v ržt          t          |         t          ¦  «        rOt          j        dt          |         ¦  «        }t          |t          ¦  «        rt          j        |||¦  «        }|g}n-t          j        dt          |         ¦  «        } ||||¦  «        }|S g }	d|                     dd¦  «        k    r1|	                     t          j        t          | ||¦  «        ¦  «         |	S d|                     dd¦  «        k    r1|	                     t          j        t           | ||¦  «        ¦  «         |	S d	|                     dd¦  «        k    r1|	                     t          j        t"          | ||¦  «        ¦  «         |	S d
|                     dd¦  «        k    rP|j        |                              ¦   «         r/|	                     t          j        t(          | ||¦  «        ¦  «         |	S d|                     dd¦  «        k    r¬|	                     t          j        t           | ||¦  «        ¦  «         |j        |                              ¦   «         r/|	                     t          j        t(          | ||¦  «        ¦  «         |	                     t          j        t"          | ||¦  «        ¦  «         |	S )NrT   c                ó   — g | ]	}|j         ‘Œ
S r\   )r4   )r^   r‚   s     r6   r`   z3_build_external_dependency_list.<locals>.<listcomp>­   s   € Ð6ZÐ6ZÐ6ZÀ1°q´wÐ6ZÐ6ZÐ6Zr8   zmethod {!r} is invalidzT.Type[ExternalDependency]z.T.Union[DependencyFactory, WrappedFactoryFunc]rF   rU   z
pkg-configÚcmakeÚextraframeworkÚauto)r   r   Úformatrc   r   r,   ÚtypeÚTÚcastÚ
issubclassr   rq   rr   rb   ri   r
   r   r	   ÚmachinesÚ	is_darwinr   )
r   rO   rz   r   rx   Úentry1rs   ÚdepÚentry2r|   s
             r6   rg   rg   ª   sé  € ð �6ÐÐ˜f XÔ.Ð6ZÐ6ZÕHYÐ6ZÑ6ZÔ6ZÐZÐZÝ!Ð":×"AÒ"AÀ&ÈÔBRÑ"SÔ"SÑTÔTÐTð �JŠJ‰LŒL€EØ•ÐÐõ •h˜u”o¥tÑ,Ô,ð 	3Ý”VÐ8½(À5¼/ÑJÔJˆFÝ˜&Õ"4Ñ5Ô5ð Ý=FÔ=NÈvÐWZÐ\bÑ=cÔ=c�Ø�f�øå”VÐLÍhÐW\ÌoÑ^Ô^ˆFØ�&˜˜k¨6Ñ2Ô2ˆCØˆ
à02€Jð �—
’
˜8 RÑ(Ô(Ò(Ð(Ø×Ò�)Ô+­M¸4ÀÀfÑMÔMÑNÔNÐNØÐð �v—z’z (¨BÑ/Ô/Ò/Ð/Ø×Ò�)Ô+Õ,?ÀÀsÈFÑSÔSÑTÔTÐTØÐð �&—*’*˜X rÑ*Ô*Ò*Ð*Ø×Ò�)Ô+­O¸TÀ3ÈÑOÔOÑPÔPÐPØÐð ˜6Ÿ:š: h°Ñ3Ô3Ò3Ð3àŒ<˜Ô$×.Ò.Ñ0Ô0ð 	^Ø×Ò�iÔ/Õ0HÈ$ÐPSÐU[Ñ\Ô\Ñ]Ô]Ð]ØÐð �—’˜H fÑ-Ô-Ò-Ð-Ø×Ò�)Ô+Õ,?ÀÀsÈFÑSÔSÑTÔTÐTð Œ<˜Ô$×.Ò.Ñ0Ô0ð 	^Ø×Ò�iÔ/Õ0HÈ$ÐPSÐU[Ñ\Ô\Ñ]Ô]Ð]ð 	×Ò�)Ô+­O¸TÀ3ÈÑOÔOÑPÔPÐPàÐr8   )r   r   r   r   r   r   )r   r   rO   rP   r   rQ   r   rR   )
r   r   rO   rP   rz   r   r   r   r   r‡   ).Ú
__future__r   Úbaser   r   r   r   rŠ   r	   rF   r
   Ú	frameworkr   Ú	pkgconfigr   Úmesonlibr   r   r   rU   r   rq   Útypingr�   ÚTYPE_CHECKINGÚenvironmentr   Úfactoryr   r   r   ÚUnionr   r0   r1   ÚTupleÚTV_DepIDEntryÚTV_DepIDr   Ú__annotations__Úsetr   r7   rd   r†   rg   r\   r8   r6   ú<module>r¦      sú  ðð #Ð "Ð "Ð "Ð "Ð "Ð "à `Ð `Ð `Ð `Ð `Ð `Ð `Ð `Ð `Ð `Ð `Ð `Ø "Ð "Ð "Ð "Ð "Ð "Ø Ð Ð Ð Ð Ð Ø /Ð /Ð /Ð /Ð /Ð /Ø *Ð *Ð *Ð *Ð *Ð *à 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ø Ð Ð Ð à„?ð 9Ø)Ð)Ð)Ð)Ð)Ð)ØSÐSÐSÐSÐSÐSÐSÐSÐSÐSà”G˜C  s¨A¬G°C¸°HÔ,=Ð=Ô>€MØŒw�q”w˜s MÐ1Ô2°CÐ7Ô8€Hð ð 	ð ð ð ñ ð ),¨©¬Ð Ð -Ð -Ð -Ñ -ðð ð ð ð: ØØØØØØØØØØðð Ð ðT)ð T)ð T)ð T)ðn9ð 9ð 9ð 9ð 9ð 9r8   