
    <hw                    h   S SK Jr  SSKJrJrJr  SSKJrJrJ	r	J
r
Jr  SSKJrJrJrJrJrJrJrJr  SSKJr  S SKrS S	KJr  S SKrS SKrS SKrS SKrS SKrS SK r!\!RD                  (       a  SS
KJ#r#  SSK$J%r%  SSK&J'r'  SSK(J)r)   " S S\!RT                  5      r+ " S S\5      r, " S S5      r-SS jr.g)    )annotations   )ExternalDependencyDependencyExceptionDependencyTypeName   )
is_windowsMesonException
PerMachinestringlistifyextract_as_list)CMakeExecutorCMakeTraceParserCMakeExceptionCMakeToolchainCMakeExecScopecheck_cmake_argsresolve_cmake_trace_targetscmake_is_debug)mlogN)Path)CMakeTarget)Environment)MachineInfo)PkgConfigDefineTypec                  >    \ rS rSr% S\S'   S\S'   S\S'   S\S'   Srg	)
	CMakeInfo   T.List[str]module_pathsstr
cmake_rootarchscommon_paths N)__name__
__module____qualname____firstlineno____annotations____static_attributes__r%       ~/mnt/mint/home/seanl/mnt/public/Repos/ladybird/Build/vcpkg/downloads/tools/meson-1.9.0-d1fcc2/mesonbuild/dependencies/cmake.pyr   r      s    Or,   r   c                    ^  \ rS rSr% \" SS5      rS\S'   Sr/ SQrSr	S\S'   SS	 jr
S S
 jrS!S jrS"S jrS"S jrS#S jrS$S%U 4S jjjrS S jrS&S jr\\R*                  " SS9S'S j5       5       r\\R*                  " SS9S(S j5       5       rS)S jrS*S jrS+S jrS,S jr S-       S.S jjr\S S j5       rS S jrSSSSSSSS.           S/S jjrSr U =r!$ )0CMakeDependency   Nz!PerMachine[T.Optional[CMakeInfo]]class_cmakeinfoz>=3.4) NinjazUnix MakefileszVisual Studio 10 2010T.Optional[str]class_working_generatorc                8    [        SU R                   SU 35      $ )NzDependency z not found: )r   name)selfmsgs     r-   _gen_exceptionCMakeDependency._gen_exception)   s    "[<u#MNNr,   c                    g)NCMakeLists.txtr%   r8   s    r-   _main_cmake_file CMakeDependency._main_cmake_file,   s    r,   c                    / $ Nr%   r>   s    r-   _extra_cmake_opts!CMakeDependency._extra_cmake_opts/   s    	r,   c                    U$ rB   r%   r8   modules
componentss      r-   _map_module_list CMakeDependency._map_module_list2   s	     r,   c                    U$ rB   r%   rF   s      r-   _map_component_list#CMakeDependency._map_component_list;   s
     r,   c                    U$ rB   r%   )r8   modules     r-   _original_module_name%CMakeDependency._original_module_nameC   s	     r,   c                	  > / U l         Ub  U(       a  S nUR                  SS5      (       a!  UR                  R                  R                  nO UR                  R                  R
                  n/ SQnU =R                   U Vs/ s H  oU;   d  M
  UPM     sn-  sl         OU =R                   U/-  sl         SU R                   ;   a  U =R                   S/-  sl         [        [        U R                   5      5      U l         [        TU ]%  [        S5      X#US9  Xl        SU l        UR                  U l        / U l        [!        U["        R$                  U R&                  U R(                  S9U l        U R*                  R-                  5       (       dC  S	U R&                   S
3n	U R.                  (       a  [1        U	5      e[2        R4                  " U	5        g [7        U R*                  R9                  5       U R;                  5       U R<                  5      U l        [A        [C        US5      5      n
[E        U
5      n
["        RF                  U R&                     c,  U RI                  U
5      ["        RF                  U R&                  '   ["        RF                  U R&                     nUc  U RK                  S5      eXl&        UR                  SS5      n[O        U[P        5      (       d  [1        S5      e[A        [C        US5      5       Vs/ s H  oS4PM     nn[A        [C        US5      5       Vs/ s H  oS4PM     nnU[A        [C        US5      5       Vs/ s H  oS4PM     sn-  n[A        [C        US5      5      nU Vs/ s HW  n[R        RT                  RW                  U5      (       a  UO-[R        RT                  RY                  UR[                  5       U5      PMY     nnU(       a#  U
R]                  SSRY                  U5      -   5        U R_                  XU R*                  Ra                  5       URb                  U R&                     5      (       d  [2        R4                  " S5        g U Re                  XXU
5        g s  snf s  snf s  snf s  snf s  snf )NnativeF)ccppfortranobjcobjcxxrV   rT   cmake)language)silentzCMake binary for machine z not found. Giving up.
cmake_argsz)Unable to obtain CMake system informationcmake_package_versionr2   z1Keyword "cmake_package_version" must be a string.rH   TrG   optional_modulescmake_module_pathz-DCMAKE_MODULE_PATH=;z)Preliminary CMake check failed. Aborting.)3language_listgetcoredata	compilersbuildhostlistsetsuper__init__r   r7   
is_libtoolscratch_dircmake_root_dirfound_modulesr   r/   class_cmake_versionfor_machiner[   cmakebinfoundrequiredr   r   debugr   version_get_build_direnvtraceparserr   r   r   r1   _get_cmake_infor:   	cmakeinfo
isinstancer!   ospathisabsjoinget_source_dirappend_preliminary_find_checkget_cmake_prefix_pathsmachines_detect_dep)r8   r7   environmentkwargsrZ   force_use_global_compilersrd   
candidatesxr9   cm_argsrz   package_versionrH   rG   cm_path	__class__s                   r-   rj   CMakeDependency.__init__H   s   *,9Izz(E**'00::@@	'00::??	BJj"KjN1j"KK8*, ***3%' "#d&8&8"9:+G4kT\]	 *55 +- &k?3V3VX\XhXhquq|q|}}}""$$-d.>.>-??UVC}})#..JJsO ,DMM,A,A,CTEXEXEZ\`\d\de EF"7+**4+;+;<D@D@T@TU\@]O++D,<,<=#33D4D4DE	%%&QRR" **%<bA/3//%&YZZ)6v|7\)]^)]A$i)]
^&3OFI4V&WX&Wt9&WXofN`6a(bc(b1J(bcc8K LMelmel`aa((1bggll;;U;U;WYZ.[[elmNN1CHHW4EEF++D4==;_;_;acncwcwx|  yI  yI  dJ  K  KJJBCWMu #L` _Xcms%   	Q0Q0<Q5"Q:	Q?4ARc           	         SU R                   R                   SU R                   SU R                   SU R                   S3	$ )N< z: >)r   r&   r7   is_foundversion_reqsr>   s    r-   __repr__CMakeDependency.__repr__   s>    4>>**+1TYYKr$--$J[J[I\\]^^r,   c           
        [         R                  " S5        / n[        R                  b  U[        R                  /-  nU[        R                  -  n[        U R                  R                  5       U R                  5       U R                  5      n[        U R                  U R                  U R                  [        R                  U R                  5       5      nUR                  5         U H  n[         R                  " SR                  [!        U5      S:  a  UOS5      5        UR#                  5       UR%                  5       -   S/-   nXa-  n[!        U5      S:  a  SU/U-   nU R'                  US5      u  pxn	US:X  a  U[        l          O=[         R                  " SU S	U 35        [         R                  " S
U SU	 S35        M     WS:w  a  g  UR)                  W	5        SS jn
U
" UR-                  S5      5      nUR/                  U
" UR-                  S5      5      5        [1        U5      nU Vs/ s H+  n[2        R4                  R7                  U5      (       d  M)  UPM-     nnU
" UR-                  S5      5      n/ nU Vs/ s H  n[9        U5      PM     sn H\  nU Vs/ s H  n[9        U5      PM     sn H9  nUR;                  [=        UUR?                  UR@                  5      -  5      5        M;     M^     [1        URC                  U5      5      nU Vs/ s H+  n[2        R4                  R7                  U5      (       d  M)  UPM-     nnUR-                  S5      n/ SQnU H'  nU[2        R4                  RE                  SU5      /-  nM)     [G        UUR-                  S5      S   UUS9n[         R                  " SURH                   35        [         R                  " SURJ                   35        [         R                  " SURL                   35        [         R                  " SURN                   35        U$ ! [*         a     g f = fs  snf s  snf s  snf s  snf )Nz"Extracting basic cmake informationTry CMake generator: {}r   auto.-GzCMakePathInfo.txtz8CMake failed to gather system information for generator  with error code OUT:



ERR:


c                :   [        5       (       a/  U  Vs/ s H!  oR                  [        R                  5      PM#     nnO'U  Vs/ s H  n[        R                  " SU5      PM     nnU VVs/ s H  o3  H  oPM     M     nnn[        U5      $ s  snf s  snf s  snnf )Nz:|;)r	   splitr|   pathseprerh   )lr   tmpsublist	flatteneds        r-   process_paths6CMakeDependency._get_cmake_info.<locals>.process_paths   s~    ||456Aqwwrzz*A6 566Aqrxx*A6*-?#ww!w#I?y>! 7 7?s   (B!B+BMESON_FIND_ROOT_PATHMESON_CMAKE_SYSROOTMESON_PATHS_LISTMESON_ARCH_LIST)liblib32lib64libx32sharer2   r   MESON_CMAKE_ROOT)r    r"   r#   r$   z  -- Module search paths:    z  -- CMake root:             z  -- CMake architectures:    z  -- CMake lib search paths: )r   r   returnz
T.Set[str])(r   rt   r/   r5   class_cmake_generatorsr   rq   ru   rv   rw   r   rp   r   
DEPENDENCYwriteformatlen
trace_argsget_cmake_args_call_cmakeparser
   get_cmake_varupdatesortedr|   r}   isdirr   r   r!   relative_toanchorunionr   r   r    r"   r#   r$   )r8   r   gen_listtemp_parser	toolchaini
cmake_optsret1out1err1r   root_paths_set
root_pathsr   module_paths_setrooted_pathsjpr    r#   r$   ress                         r-   ry   CMakeDependency._get_cmake_info   s   

78 22>@@AAHO:::&t}}'<'<'>@S@S@UW[W_W_`"4==$((D<L<LnNgNgimi|i|i~	AJJ077SVaZVTU %//1I4L4L4NNRUQVVJ!J1vz"AY3
  $//
<OPD qy:;7JJQRSQTTefjeklmJJv\$t<=% * 19	d#	" '{'@'@AW'XYmK,E,EF[,\]^N+
!+@Arww}}Q/?a
@()B)BCU)VW$&#-.:a$q':.A'78'7!d1g'78##CAMM!((,C(C$DE 9 / .44\BC#/D<a277==3C<D))*;<GARWW\\%344L  %"001CDQG%	
 	

233C3C2DEF

23>>2BCD

2399+>?

233C3C2DEF
W  		" A /8 Es6   P9 0(Q	Q	Q Q(QQ9
QQ)maxsizec                     [        S [        R                  " U 5       5       5      $ ! [         a    [        5       s $ f = f)Nc              3  V   #    U  H  o[        U5      R                  5       4v   M!     g 7frB   )r!   lower).0r   s     r-   	<genexpr>2CMakeDependency._cached_listdir.<locals>.<genexpr>   s     G6FSV\\^,6Fs   '))tupler|   listdirOSErrorr}   s    r-   _cached_listdirCMakeDependency._cached_listdir   s7    	Gbjj6FGGG 	7N	s   %( ??c                b     [         R                  R                  U 5      $ ! [         a     gf = fNF)r|   r}   r   r   r   s    r-   _cached_isdirCMakeDependency._cached_isdir   s,    	77==&& 		s   ! 
..c           
       ^ ^^^ [        T5      R                  5       mSUU 4S jjmSUUU 4S jjnU[        R                  R	                  T R
                  R                  S5      /-    H  nT" U5      (       d  M    g   U H  nU" U5      (       d  M    g   / n[        R                  R                  SS5      R                  [        R                  5       Hj  nUR                  S5      (       d  UR                  S5      (       a  US S	 nUR                  S
5      (       d  UR                  S5      (       a  US S nXv/-  nMl     T R
                  R                  U-    GH  nT" U5      (       a    gU" U5      (       a    gT R                  U5      n[        U4S jU 5       5      nU H3  n	U" [        R                  R	                  XiS   5      5      (       d  M2      g   UR                  5       (       d  M  T S3T S34 Hw  n
U Hn  n	U	S   U
:w  a  M  T" [        R                  R	                  XiS   S5      5      (       d0  T" [        R                  R	                  XiS   S5      5      (       d  Ml        g   My     GM      [        R                  R                  T S35      nU(       a  T" U5      (       a  g[         R"                  " 5       S-  S-  nUT-  UT-  4 H  nUR%                  5       (       d  M    g   g)Nc                  >^ U [         R                  R                  U S5      [         R                  R                  U S5      4 H{  nTR                  U5      (       d  M  TR	                  U5      n/ SQmT Vs/ s H!  o3R                  T5      R                  5       PM#     snm[        U4S jU 5       5      (       d  M{    g   gs  snf )NrY   CMake)zFind{}.cmakez{}Config.cmakez{}-config.cmakec              3  2   >#    U  H  oS    T;   v   M     g7fr   Nr%   )r   r   r   s     r-   r   OCMakeDependency._preliminary_find_check.<locals>.find_module.<locals>.<genexpr>  s     ;7atz)7s   TF)r|   r}   r   r   r   r   r   any)r}   r   contentr   r   r7   r8   s       @r-   find_module<CMakeDependency._preliminary_find_check.<locals>.find_module   s    BGGLLw7dG9TU))!,, ..q1R
>HIjhhtn224jI
;7;;; V  Js   8(Cc           	       > TR                   R                   Vs/ s H"  n[        R                  R	                  X5      PM$     sn GH  nTR                  U5      (       d  M  [        R                  R	                  US5      nTR                  U5      (       a_  TR                  U5      n[        U4S jU 5       5      nU H3  nT" [        R                  R	                  X5S   5      5      (       d  M2      g   TR                  U5      n[        U4S jU 5       5      nU H3  nT" [        R                  R	                  X%S   5      5      (       d  M2      g   GM     gs  snf )NrY   c              3  \   >#    U  H!  oS    R                  T5      (       d  M  Uv   M#     g7fr   
startswithr   r   lnames     r-   r   SCMakeDependency._preliminary_find_check.<locals>.search_lib_dirs.<locals>.<genexpr>  s      #Qw!A$//%:PAAw   ,	,r   Tc              3  \   >#    U  H!  oS    R                  T5      (       d  M  Uv   M#     g7fr   r   r   s     r-   r   r     s      M7adooe6L7r   F)rz   r$   r|   r}   r   r   r   r   )	r}   r   r   cm_dirr   kr   r   r8   s	         r-   search_lib_dirs@CMakeDependency._preliminary_find_check.<locals>.search_lib_dirs
  s   59^^5P5PQ5Pbggll4+5PQ))!,, a1%%f--"226:G##Qw#QQG$&rww||FaD'ABB#' % ..q1M7MM A"277<<Q4#899# !# R* + Rs   )EModulesTPATHr2   z/binz\binz/sbinz\sbinc              3  \   >#    U  H!  oS    R                  T5      (       d  M  Uv   M#     g7fr   r   r   s     r-   r   :CMakeDependency._preliminary_find_check.<locals>.<genexpr>>  s      Iw!A$//%2HAAwr   r   z
.frameworkz.appr   	ResourcesVersion_DIRz.cmakepackagesFr}   r!   r   bool)r!   r   r|   r}   r   rz   r"   environrb   r   r   endswithr    r   r   	is_darwinr   homeexists)r8   r7   module_pathprefix_pathmachiner   r   
system_envr   r   r   env_path	linux_regr   r   r   s   ``            @@r-   r   'CMakeDependency._preliminary_find_check   s|   D	!	 		 	2 T^^-F-F	 RSSA1~~ T
 Aq!! 
 #%
+11"**=Azz&!!QZZ%8%8crFzz'""ajj&:&:crF#J > ,,z9A1~~q!!**1-GIwIIG"277<<Q4#899 
   """G:.5'?A$Q419$&rww||At['IJJkZ\ZaZaZfZfghlmjnpyZzN{N{#'	 % @ :. ::>>TF$-0H-- IIK(*Z7	d"I$56Axxzz 7 r,   c                F  ^ [         R                  " SR                  TU R                  R	                  5       5      5        / n[
        R                  b  U[
        R                  /-  nU[
        R                  -  nU R                  X45      n[        U R                  U R                  U R                  [        R                  U R                  5       5      nUR                  5         U GH  n	[         R                  " SR                  [!        U	5      S:  a  U	OS5      5        / n
U
ST 3/-  n
U
SR                  SR#                  U R$                  R&                  5      5      /-  n
U
SU 3/-  n
U
S	R                  SR#                  U Vs/ s H  oS   PM	     sn5      5      /-  n
U
S
R                  U R(                  (       a  SOS5      /-  n
X-  n
XR*                  R-                  5       -  n
XR/                  5       -  n
XR1                  5       -  n
U
S/-  n
[!        U	5      S:  a  SU	/U
-   n
U R3                  XR5                  5       5      u  pnUS:X  a  U	[
        l          OA[         R                  " SU	 ST SU 35        [         R                  " SU SU S35        GM     WS:w  a  g  U R*                  R7                  W5        U R*                  RI                  S5      U l"        U RD                  (       d  U R*                  RK                  S5      n[!        U5      S:  a)  [         RL                  " SR                  TUS   5      SS9  O%[         R                  " SR                  T5      5        U R;                  S5      eU R*                  RK                  S5      n[!        U5      S:  a%  US   U l'        U RN                  RQ                  S5        U RS                  X45      nSn[!        U5      S:X  a  U R*                  RT                   Hg  n	U	RW                  5       nTRW                  5       nU SU 3U:X  d  UURY                  SS5      :X  d  MF  [         R                  " S U	 S!35        U	S"4/nS"n  O   [!        U5      S:X  Ga  / nU R*                  RT                  R[                  5        HG  u  nnURW                  5       nTRW                  5       nUR]                  U S35      (       d  MA  UU/-  nMI     U(       a  [         R^                  " [`        Rb                  " S#T S$U Vs/ s H  oRd                  PM     sn S%T S&T S'T S(35      5        [         R                  " S)5        U H  n[         R                  " U5        M     U R*                  RK                  S*5       Vs/ s H  o(       d  M  UPM     nnU R*                  RK                  S+5       Vs/ s H  o(       d  M  UPM     nnU R*                  RK                  S,5       Vs/ s H  o(       d  M  UPM     nn/ nS"n[g        U R                  5      nUU(       + S"S-.n U H;  n	U	RW                  5       U ;   a  U U	RW                  5          nM,  U(       a  UU	/-  nS"nM=     [!        U5      S:  Ga.  U Vs/ s H  nS.U 3PM
     snU-   U l         / U l!        U H  n![i        U!U R*                  U R                  U Rj                  S/9n"U =RB                  U"Rl                  -  sl!        U =R@                  U"Rn                   Vs/ s H  nS.U 3PM
     sn-  sl         U =R@                  U"Rp                  -  sl         M     [         R                  " S0T 35        [         R                  " S1U 35        [         R                  " S2U 35        [         R                  " S3U 35        g SU l"        U R;                  S4R                  T[s        U R*                  RT                  Ru                  5       5      5      5      e/ n/ n#/ n$U GH[  u  n	n%XR*                  RT                  ;  a  U%(       dS  [         R^                  " S5[         Rv                  " U Ry                  U	5      5      S6[         Rv                  " T5      S75        Mz  U R;                  S8R                  U Ry                  U	5      T[s        U R*                  RT                  Ru                  5       5      5      5      eU(       d  U =Rz                  U	/-  sl=        [i        XR*                  U R                  U Rj                  U4S9 jS:9n"UU"Rn                  -  nU#U"Rp                  -  n#U$U"Rl                  U"R|                  -   -  n$GM^     [        [        U5      5      n[        [        U#5      5      n#[        U$5      n$[         R                  " S1U 35        [         R                  " S;U# 35        [         R                  " S3U$ 35        U#U Vs/ s H  nS.U 3PM
     sn-   U l         U$U l!        g s  snf ! [8         aR  nU R;                  [=        U5      5      nU R>                  (       a  e / U l         / U l!        SU l"        UU l#         S nAg S nAff = fs  snf s  snf s  snf s  snf s  snf s  snf s  snf )<Nz7
Determining dependency {!r} with CMake executable {!r}r   r   r   z-DNAME=z
-DARCHS={}r`   z
-DVERSION=z
-DCOMPS={}z-DSTATIC={}ONOFFr   r   zCMake failed for generator z and package r   r   r   r   FPACKAGE_FOUNDPACKAGE_NOT_FOUND_MESSAGEzNCMake reported that the package {} was not found with the following reason:
{})fatalzbCMake reported that the package {} was not found, even though Meson's preliminary check succeeded.zPACKAGE_FOUND is falsePACKAGE_VERSIONz"' z::r2   zGuessed CMake target ''TzL                    Could not find and exact match for the CMake dependency zd.

                    However, Meson found the following partial matches:

                        a  

                    Using imported is recommended, since this approach is less error prone
                    and better supported by Meson. Consider explicitly specifying one of
                    these in the dependency call with:

                        dependency('z', modules: ['zS::<name>', ...])

                    Meson will now continue to use the old-style z_LIBRARIES CMake
                    variables to extract the dependency information since no explicit
                    target is currently specified.

                z(More info for the partial match targets:PACKAGE_INCLUDE_DIRSPACKAGE_DEFINITIONSPACKAGE_LIBRARIES)rt   	optimizedgeneralz-I)clib_compilerz/using old-style CMake variables for dependency zInclude Dirs:         zCompiler Definitions: zLibraries:            zCMake: failed to guess a CMake target for {}.
Try to explicitly specify one or more targets with the "modules" property.
Valid targets are:
{}zCMake: Optional moduleforwas not foundzCMake: invalid module {} for {}.
Try to explicitly specify one or more targets with the "modules" property.
Valid targets are:
{}c                   > [         R                  " S[         R                  " U 5      S[         R                  " T5      S5      $ )NzCMake: Dependencyr$  r%  )r   warningbold)r   r7   s    r-   <lambda>-CMakeDependency._detect_dep.<locals>.<lambda>$  s;    37<<@SUYU^U^_`Uachjnjsjstxjy  |K  4Lr,   )r#  not_found_warningzCompiler Options:     )Br   rt   r   rq   executable_pathr/   r5   r   rL   r   rw   rp   r   r   rv   r   r   r   rz   r#   staticrx   r   r   rC   r   r?   r   r   r:   r!   rs   compile_args	link_argsr   reasonvar_to_boolr   noticeru   striprI   targetsr   replaceitemsr   r'  textwrapdedentr7   r   r   r#  	librariesinclude_directoriespublic_compile_optsrg   keysr(  rP   rn   
link_flagsr   rh   sort_link_args)&r8   r7   r   rG   rH   argsr   comp_mappedr   r   r   r   r   r   r   ee2not_found_messagevers_rawautodetected_module_listtgr   partial_modulesr   vtgtincDirsdefslibs_rawlibscfg_matchesis_debug
cm_tag_mapr   rtgtcompileOptionsr9  rs   s&    `                                    r-   r   CMakeDependency._detect_depY  s	    	

  &t}}'D'D'FG	I
 22>@@AAHO::: ..wC"4==$((D<L<LnNgNgimi|i|i~	AJJ077SVaZVTU JWTF+,,J<..sxx8L8L/MNOOJZ'89::J<..sxx{8S{!1{8S/TUVVJ=//OPPJJ**5577J2244J0022J3%J1vz"AY3
  $//
<Q<Q<STD qy:;7JJ4QC}TFJ[\`[abcJJv\$t<=7 < 19	""4( ((44_E}} $ 0 0 > >?Z [$%)&7&:;5J 

HHNtV %%&>?? ##112CDx=1#A;DLLLv& ''<#(  w<1%%--WWY

WBug&",D"9M0MJJ!82>? !4ykG/3, . w<135O((006681WWY

==E7"..#s*O	 9
 X__ 2MMQF S +::/Q&&/:; <% &*F. ?BBF H.  $ 

EF*CJJsO + #'"2"2"@"@AW"X^"XQ\]q"XG^#//==>STZT!XYATDZ#'#3#3#A#ABU#V\#VaZ[#VH\ !#DK%dhh/H#+h,SWXJ779
*",QWWY"7KQCKD #  4y1}7>$?w!r!Xw$?$$F!!#A6q$:J:JDHHdhdvdvwDNNdnn4N%%D<T<T)U<TqBqc(<T)UU%%%)A)AA%	 
 

LTFST

3G9=>

3D6:;

3D6:; "DM%% '??EvdDQUQaQaQiQiQnQnQpLq?rt t 	"KAx((000LL!9499TE_E_`aEb;cejlpluluvzl{  ~M  N)) +CCI6$JdJdefJgimostx  uE  uE  uM  uM  uR  uR  uT  pU  DVW W ,""qc)".q2B2BDHH=A=O=OBL1D
 t///Gd666N$//99I' #, W&N 34"9-	

+G956

+N+;<=

+I;78*-H11#h-HH"{ 9T6  		$$SV,B}}$&!!# % 		~ ;" _Z\0 %@
 *Vd .Is[   h)h!  j 
j,j
j
j

jjjj
;j!
i=+Ai88i=c                p    [        U R                  5      SU R                   3-  nUR                  SSS9  U$ )Ncmake_T)parentsexist_ok)r   rm   r7   mkdir)r8   	build_dirs     r-   rv   CMakeDependency._get_build_dir7  s8    ,,-&0DD	t4r,   c                ~   U R                  5       nUS-  nUS-  nUR                  5       (       a  UR                  5         [        R                  " UR                  5       SS9  [        R                  R                  SUSS9nSS	K	J
n  U R                   Vs/ s H  owU;   d  M
  Xg   PM     nnU(       d  US
/-  n[        R                  " S5      R                  SR                  U5      5      U-   nUS-  n	U	R!                  USS9  ["        R$                  " U	R'                  5       R                  5       5        U$ s  snf )NzCMakeCache.txt
CMakeFilesT)ignore_errorszmesonbuild.dependencies.datazutf-8)encodingr   )language_mapNONEzt
            cmake_minimum_required(VERSION ${{CMAKE_VERSION}})
            project(MesonTemp LANGUAGES {})
        r   r=   )rv   r  unlinkshutilrmtreeas_posix	importlib	resources	read_textrY   r_  ra   r7  r8  r   r   
write_textr   cmd_ci_includeabsolute)
r8   
cmake_filerY  cmake_cachecmake_files	cmake_txtr_  r   cmake_languagecm_files
             r-   _setup_cmake_dir CMakeDependency._setup_cmake_dir<  s/   '')	  "22,. k**,DA ''112PR\ip1q	 	)373E3E[3EalIZ/,/3E[vh&NOO %  VCHH^,-	:	
 ..9w7G,,.779: \s   	D:#D:c                X    U R                  U5      nU R                  R                  XUS9$ )N)rw   )rq  rq   call)r8   r?  rk  rw   rY  s        r-   r   CMakeDependency._call_cmakea  s.     ))*5	}}!!$s!;;r,   c                     g)NrY   r%   r%   r,   r-   	log_triedCMakeDependency.log_triedh  s    r,   c                    U R                    Vs/ s H  oR                  U5      PM     nn[        [        U5      5      nU(       a  SSR	                  U5      -   $ gs  snf )Nz	modules: z, r2   )rn   rP   r   rh   r   )r8   r   rG   s      r-   log_detailsCMakeDependency.log_detailsl  sU    :>:L:LM:LQ--a0:LMW&7!333	 Ns   A)rY   	pkgconfig
configtoolinternalsystemdefault_valuepkgconfig_definec                   U(       a8  U R                   b+   U R                   R                  U   nSR                  U5      $ Ub  U$ [	        SU < 35      e! [         a     N f = f)Nr`   z9Could not get cmake variable and no default provided for )rx   varsr   KeyErrorr   )	r8   rY   r|  r}  r~  r  r  r  rH  s	            r-   get_variableCMakeDependency.get_variables  sr     T%%1#$$))%0 xx{"$  !$]^b]e"fgg  s   A 
A! A!)rm   rq   rz   r.  rn   r   rk   ra   r/  r7   r0  rx   ru   )r9   r!   r   r   r   r!   )r   r   )rG   T.List[T.Tuple[str, bool]]rH   r  r   r  )rO   r!   r   r!   r   )r7   r!   r   z'Environment'r   T.Dict[str, T.Any]rZ   r4   r   r	  r   None)r   r   r   zT.Optional[CMakeInfo])r}   r!   r   zT.Tuple[T.Tuple[str, str], ...]r  )
r7   r!   r  r   r  r   r  z'MachineInfo'r   r	  )r7   r!   r   r!   rG   r  rH   r  r?  r   r   r  )r   r   )rk  r!   r   r   rB   )r?  r   rk  r!   rw   zT.Optional[T.Dict[str, str]]r   z.T.Tuple[int, T.Optional[str], T.Optional[str]])rY   r4   r|  r4   r}  r4   r~  r4   r  r4   r  r4   r  r   r   r!   )"r&   r'   r(   r)   r   r1   r*   ro   r   r5   r:   r?   rC   rI   rL   rP   rj   r   ry   staticmethod	functools	lru_cacher   r   r   r   rv   rq  r   rw  rz  r  r+   __classcell__)r   s   @r-   r/   r/      sy    :DD$9OO6O!U/3_3O 
EN ENN_Tl & '  & ' _B\#|
#P 9=<%< #< 6< Bp<   8<Z^37UY/3VZ=Ah!0hCRh,hDSh (;h GJh hr,   r/   c                  D    \ rS rSrSSS jjrS	S
S jjr\SS j5       rSrg)CMakeDependencyFactoryi  Nc                    Xl         X l        g rB   )r7   rG   )r8   r7   rG   s      r-   rj   CMakeDependencyFactory.__init__  s    	r,   c                    U R                   (       a  U R                   US'   [        U R                  =(       d    UX#XE5      $ )NrG   )rG   r/   r7   )r8   r7   rw   r   rZ   r   s         r-   __call__CMakeDependencyFactory.__call__  s/    << $F9tyy0D#xddr,   c                 *    [         R                  5       $ rB   )r/   rw  r%   r,   r-   rw   CMakeDependencyFactory.log_tried  s    ((**r,   )rG   r7   )NN)r7   r4   rG   zT.Optional[T.List[str]]r   )r7   r!   rw   r   r   r  rZ   r4   r   r	  r   r/   r  )	r&   r'   r(   r)   rj   r  r  rw  r+   r%   r,   r-   r  r    s!    e
 + +r,   r  c                h   [        U 5      n[        5       n  [        U5      nUS:X  a   [        U5      nUR                  X445        OUR                  U45        ME  ! [         a     O f = f! [         a    [	        SU  35      ef = f[        U5       VVs/ s H  oU  H  ofPM     M     snn$ s  snnf )Nz
-frameworkz>Linker arguments contain '-framework' with no argument value: )iterrh   nextStopIterationr
   addr   )r?  itrresultargarg2xsr   s          r-   r>  r>    s    
t*C>AeF
	s)C ,pCy JJ{#JJv   		 ! p$'ghlgm%noop v3"1AA333s"   A A, 
A)(A),BB.)r?  r   r   r   )/
__future__r   baser   r   r   mesonlibr	   r
   r   r   r   rY   r   r   r   r   r   r   r   r   r2   r   importlib.resourcesre  pathlibr   r  r   r|   rb  r7  typingTTYPE_CHECKINGr   r   r   	envconfigr   interpreter.type_checkingr   
NamedTupler   r/   r  r>  r%   r,   r-   <module>r     s    # M M ] ] c  c  c     	 	   ??#)'? j	h( j	hZ+ + 4r,   