+
    UBib                    &   ^ RI Ht ^RIHt ^RIHt ^RIHt ^RIH	t	 ^ RI
t^ RIHt ^ RIHt ^ RIt^ RIt^ RIt]P&                  '       d   ^R	IHt  ! R
 R4      t ! R R]P.                  4      t ! R R4      t ! R R]4      t ! R R4      tR# )    )annotations)CMakeException)parse_generator_expressions)mlog)version_compareNPath)	lru_cache)Environmentc                  \    ] tR t^tR R lt]]! RR7      R R l4       4       tR R ltR	t	R# )
CMakeTraceLinec          
     ,    V ^8  d   QhRRRRRRRRRR	/# )
   file_strstrlineintfuncargsT.List[str]returnNone )formats   "A/usr/lib/python3.14/site-packages/mesonbuild/cmake/traceparser.py__annotate__CMakeTraceLine.__annotate__   s0       C s + RV     c                	|    \         P                  V4      V n        W n        VP	                  4       V n        W@n        R # N)r   _to_pathfiler   lowerr   r   )selfr   r   r   r   s   &&&&&r   __init__CMakeTraceLine.__init__   s+    "++H5		JJL		r   N)maxsizec                    V ^8  d   QhRRRR/# )r   r   r   r   r	   r   )r   s   "r   r   r       s      3 4 r   c                	    \        V 4      # r    r   )r   s   &r   r!   CMakeTraceLine._to_path   s     H~r   c                   V ^8  d   QhRR/# r   r   r   r   )r   s   "r   r   r   #   s     D D# Dr   c                	~    R pVP                  V P                  V P                  V P                  V P                  4      # )zCMake TRACE: {0}:{1} {2}({3}))r   r"   r   r   r   )r$   ss   & r   __repr__CMakeTraceLine.__repr__#   s,    +xx		499diiCCr   )r   r"   r   r   )
__name__
__module____qualname____firstlineno__r%   staticmethodr
   r!   r/   __static_attributes__r   r   r   r   r      s4     t  D Dr   r   c                  ,    ] tR t^'t$ R]R&   R]R&   RtR# )CMakeCacheEntryr   valuer   typer   N)r1   r2   r3   r4   __annotations__r6   r   r   r   r8   r8   '   s    
Ir   r8   c                  >    ] tR t^+tR	R R lltR R ltR R ltRtR# )
CMakeTargetNc          
     ,    V ^8  d   QhRRRRRRRRRR	/# )
r   namer   target_type
propertiesz$T.Optional[T.Dict[str, T.List[str]]]importedbooltlinezT.Optional[CMakeTraceLine]r   )r   s   "r   r   CMakeTarget.__annotate__,   s=     6 6 6 !6 B	6
 "6 86r   c                	x    Vf   / pWn         W n        W0n        W@n        WPn        . V n        R V n        R V n        R # r    )r?   r:   rA   rB   rD   dependscurrent_bin_dircurrent_src_dir)r$   r?   r@   rA   rB   rD   s   &&&&&&r   r%   CMakeTarget.__init__,   s?     J		$ 
$&1515r   c                   V ^8  d   QhRR/# r,   r   )r   s   "r   r   rE   ?   s     R R# Rr   c                	    R pRpV P                    F,  pVRP                  W0P                   V,          4      ,          pK.  	  VP                  V P                  V P                  V P                  W P
                  4      # )zsCMake TARGET:
  -- name:      {}
  -- type:      {}
  -- imported:  {}
  -- properties: {{
{}     }}
  -- tline: {} z      '{}': {}
)rA   r   r?   r:   rB   rD   )r$   r.   propSTRis   &   r   r/   CMakeTarget.__repr__?   sa     HA)00OOA4FGGG !xx		499dmmWjjQQr   c                   V ^8  d   QhRR/# )r   r   r   r   )r   s   "r   r   rE   F   s     C C$ Cr   c                	   V P                   '       g   R # V P                   P                  4        F  w  rV Uu. uF  q3P                  4       NK  	  upV P                   V&   \        ;QJ d-    R V P                   V,           4       F  '       d   K   RM"	  RM! R V P                   V,           4       4      '       d   K  Q h	  R # u upi )Nc              3  ,   "   T F
  pR V9  x  K  	  R# 5i);Nr   ).0xs   & r   	<genexpr>/CMakeTarget.strip_properties.<locals>.<genexpr>L   s     B-As!|-As   FT)rA   itemsstripall)r$   keyvalrV   s   &   r   strip_propertiesCMakeTarget.strip_propertiesF   s    --/HC7:#;s!GGIs#;DOOC 3BT__S-AB333BT__S-ABBBBB 0#;s   C)rH   rI   rG   rB   r?   rA   rD   r:   )NFN)r1   r2   r3   r4   r%   r/   r^   r6   r   r   r   r=   r=   +   s    6&RC Cr   r=   c                  .   a  ] tR t^NtR V 3R lltRtV ;t# )CMakeGeneratorTargetc                    V ^8  d   QhRRRR/# )r   r?   r   r   r   r   )r   s   "r   r   !CMakeGeneratorTarget.__annotate__O   s     2 2S 2T 2r   c                	b   < \         SV `  VR / 4       . V n        . V n        . V n        RV n        R# )CUSTOMN)superr%   outputs_outputs_strcommandworking_dir)r$   r?   	__class__s   &&r   r%   CMakeGeneratorTarget.__init__O   s2    x,%')+,.-1r   )rh   ri   rg   rj   )r1   r2   r3   r4   r%   r6   __classcell__)rk   s   @r   ra   ra   N   s    2 2r   ra   c                     ] tR t^VtRER R lltR R ltR R ltRFR R	 lltR
 R ltR R lt	R R lt
R R ltR R ltR R ltR R ltR R ltR R ltR R ltRFR R lltR  R! ltR" R# ltR$ R% ltR& R' ltR( R) ltR* R+ ltR, R- ltR. R/ ltR0 R1 ltR2 R3 ltRGR4 R5 lltR6 R7 ltR8 R9 ltR: R; lt R< R= lt!R> R? lt"R@ RA lt#RB RC lt$RDt%R# )HCMakeTraceParserc          
     ,    V ^8  d   QhRRRRRRRRR	R
/# )r   cmake_versionr   	build_dirr	   envz'Environment'
permissiverC   r   r   r   )r   s   "r   r   CMakeTraceParser.__annotate__W   s1     = =c =d = =\` =lp =r   c                	   / V n         / V n        / V n        / V n        \	        4       V n        . V n        W0n        W@n        Wn	        R V n
        W P                  ,          V n        \        VR4      '       d   RMRV n        . V n        . V n        . V n        / RV P"                  bRV P$                  bRV P&                  bRV P(                  bRV P*                  bR	V P,                  bR
V P.                  bRV P0                  bRV P2                  bRV P4                  bRV P6                  bRV P8                  bRV P:                  bRV P<                  bRV P>                  bRV P@                  bRV PB                  bRV PD                  /CV n#        \        V P                  R4      '       d=   \H        PJ                  ! \L        PN                  ! RV P                   R24      RR7       R# R# )zcmake_trace.txtz>=3.17json-v1humansetunsetadd_executableadd_libraryadd_custom_commandadd_custom_targetset_propertyset_target_propertiestarget_compile_definitionstarget_compile_optionstarget_include_directoriestarget_link_librariestarget_link_optionsadd_dependenciesmessagemeson_ps_execute_delayed_callsmeson_ps_reload_varsmeson_ps_disabled_functionz<3.17.0z                CMake support for versions <3.17 is deprecated since Meson 0.62.0.
                |
                |   However, Meson was only able to find CMake a  .
                |
                |   Support for all CMake versions below 3.17.0 will be removed once
                |   newer CMake versions are more widely adopted. If you encounter
                |   any errors please try upgrading CMake to a newer version first.
            T)onceN)(varsvars_by_filetargetscachery   explicit_headerscustom_targetsrs   rt   rq   
trace_filetrace_file_pathr   trace_formaterrorsdelayed_commandsstored_commands
_cmake_set_cmake_unset_cmake_add_executable_cmake_add_library_cmake_add_custom_command_cmake_add_custom_target_cmake_set_property_cmake_set_target_properties!_cmake_target_compile_definitions_cmake_target_compile_options!_cmake_target_include_directories_cmake_target_link_libraries_cmake_target_link_options_cmake_add_dependencies_cmake_message_meson_ps_execute_delayed_calls_meson_ps_reload_vars_meson_ps_disabled_function	functionsr   deprecationtextwrapdedent)r$   rq   rr   rs   rt   s   &&&&&r   r%   CMakeTraceParser.__init__W   s<   CE	DFCEGI
-0U =?$*+(??:)8)Q)QIW^#%
 .079K
4??K
T&&K
 d88K
 422	K

 !$"@"@K
  !>!>K
 D44K
 $T%F%FK
 )$*P*PK
 %d&H&HK
 )$*P*PK
 $T%F%FK
 "4#B#BK
  < <K
 t**K
( -d.R.R)K
* #D$>$>+K
, )$*J*J-K
2 4--y99X__ 2@ AE@R@R?S T.   :r   c                   V ^8  d   QhRR/# )r   r   r   r   )r   s   "r   r   ru      s     
6 
6K 
6r   c                	    R RR.RRR./pR.pV P                  4       '       g   VRV P                   2.,          pWP                  ,          V,           # )rx   z--tracez--trace-expandrw   z--trace-format=json-v1z--no-warn-unused-cliz--trace-redirect=)requires_stderrr   r   )r$   arg_map	base_argss   &  r   
trace_argsCMakeTraceParser.trace_args   sg    i!12(*BC

 ,,	##%%-doo->?@@I(()I55r   c                   V ^8  d   QhRR/# )r   r   rC   r   )r   s   "r   r   ru      s     < < <r   c                	.    \        V P                  R 4      # )z<3.16)r   rq   )r$   s   &r   r    CMakeTraceParser.requires_stderr   s    t117;;r   Nc                    V ^8  d   QhRRRR/# )r   traceT.Optional[str]r   r   r   )r   s   "r   r   ru      s     F# F#? F#d F#r   c                	6	  a  S P                  4       '       gX   S P                  P                  4       '       g   \        R S P                  : R24      hS P                  P	                  RRR7      pV'       g   \        R4      hRpS P
                  R8X  d   S P                  V4      pM<S P
                  R8X  d   S P                  V4      pM\        R	S P
                   R
24      hV Fr  pVP                  S P                  9   d   S ;P                  V.,          un
        K:  S P                  P                  VP                  R4      pV'       g   Kj  V! V4       Kt  	  V 3R lpV 3R lpS P                  P                  4        UUu/ uF  w  rxWu! V4      bK  	  uppS n        S P                  P                  4        U	U
UUu/ uF/  w  rYP                  4        UUu/ uF  w  rxWu! V4      bK  	  uppbK1  	  uppp
p	S n        S P                    Uu0 uF!  p\#        \%        \'        V4      S 4      4      kK#  	  upS n        S P(                  P                  4        UUu/ uF,  w  rxV\+        V! VP,                  4      VP.                  4      bK.  	  uppS n        S P0                  P3                  4        F  pV 3R lp\%        VP4                  S VR7      Vn        \%        VP.                  S VR7      Vn        VP6                  e5   VP6                  P                  4        UUu/ uF  w  rxW}! W4      bK  	  uppMRVn        V! VP8                  V4      Vn        K  	  S P:                   F  pV! VP<                  4      Vn        VP@                  pVP@                   Uu. uF
  q! V4      NK  	  upVn         \C        VP@                  V4       F5  w  ppV^ ,          R8X  g   K  \        RPE                  V^ ,          4      4      h	  VPF                  e)   \#        \%        \'        VPF                  4      S 4      4      MRVn#        K  	  S P0                  P3                  4        F  pVPI                  4        K  	  R# u uppi u uppi u uppp
p	i u upi u uppi u uppi u upi )zCMake: Trace file "z" not foundignorezutf-8)r   encodingz3CMake: The CMake trace was not provided or is emptyNrx   rw   z,CMake: Internal error: Invalid trace format z. Expected [human, json-v1]c                l   < V '       d+   \        R P                  V 4      S4      P                  R 4      # . # rT   r   joinsplit)strlistr$   s   &r   <lambda>(CMakeTraceParser.parse.<locals>.<lambda>   s[      SZOjknkskst{k|  C  PD  PJ  PJ  KN  PO  Pb  `b  Pbr   c                   < V '       dD   \        R P                  V 4      S4      P                  R 4       Uu. uF  p\        V4      NK  	  up# . # u upi r   )r   r   r   r	   )r   rV   r$   s   & r   r   r      s      gnb}  B  G  G  HO  P  RV  cW  c]  c]  ^a  cb  Qc  cb]^QUVWQX  cb  Qc  Qv  tv  Qv  Qcs   Ac                p   < V '       d-   \        R P                  V 4      SVR7      P                  R 4      # . # )rT   context_tgtr   )r   tr$   s   &&r   r   r      sv      u|b}  B  G  G  HO  P  RV  de  cf  cl  cl  mp  cq  cD  BD  cDr   r   rM   zdWe evaluated the cmake variable '{}' to an empty string, which is not a valid path to an executable.)%r   r   is_filer   	read_textr   _lex_trace_human_lex_trace_jsonr   r   r   r   getr   rY   r   r   r	   r   r   r   r8   r9   r:   r   valuesr?   rA   rG   r   rh   rg   ri   zipr   rj   r^   )r$   r   lexer1lfnstrlist_genpathlist_genkvpdrV   tgttgtlist_genctgttempri   srcs   f&                r   parseCMakeTraceParser.parse   s   ##%%''//11$':4;O;O:RR]%^__((22(W2UE !VWW '**51F)+))%0F #OPTPaPaObb}!~ Avv...$$+$ ##AFFD1Br1  @b Av3799??3DE3D41QA&3DE	 ))//1
1 ggi8ida;q>!i881
 [_ZoZo pZoUV&A#a&$&O!PZo p 

((*

 +	 AGG$  +

 <<&&(C PDK2388TsSCH2388TsSCH + 47>>3G3G3I3I41;q&&3I15 N &ckk37CK ) ''D'(9(9:DL<<D48LLALqKNLADL #DLL$ 71:#(~  F  F  GJ  KL  GM  N  !8
 bfaqaqa}t$?DDTDT@UW[$\]  DHD ( <<&&(C  " )G F8
 !q
 Bs6   Q1?Q=
Q7,Q=
'R2R
RR7Q=
c                    V ^8  d   QhRRRR/# )r   var_listr   r   r   )r   s   "r   r   ru      s      { { r   c                	b    V F(  pW P                   9   g   K  V P                   V,          u # 	  . # r    r   )r$   r   rO   s   && r   get_first_cmake_var_of'CMakeTraceParser.get_first_cmake_var_of   s*    AII~yy|#  	r   c                    V ^8  d   QhRRRR/# )r   varr   r   r   r   )r   s   "r   r   ru      s        r   c                	L    WP                   9   d   V P                   V,          # . # r    r   r$   r   s   &&r   get_cmake_varCMakeTraceParser.get_cmake_var   s    ))99S>!	r   c                    V ^8  d   QhRRRR/# )r   r   r   r   r   r   )r   s   "r   r   ru      s      c o r   c                	    WP                   9   d4   V P                   V,          '       d   V P                   V,          ^ ,          # R# )r   Nr   r   s   &&r   
var_to_strCMakeTraceParser.var_to_str   s.    ))		#99S>!$$r   c                    V ^8  d   QhRRRR/# )r   exprzT.Union[str, T.List[str]]r   rC   r   )r   s   "r   r   ru     s     p p!: pt pr   c                	    V'       g   R # \        V\        4      '       d   V^ ,          pMTpVP                  4       pVR9  ;'       d    VP                  R4      '       * # )FNOTFOUND)0OFFNOFALSENIGNORE)
isinstancelistupperendswith)r$   r   expr_strs   && r   _str_to_boolCMakeTraceParser._str_to_bool  sS    dD!!AwHH>>#IIooRZRcRcdnRoNoor   c                    V ^8  d   QhRRRR/# )r   r   r   r   rC   r   )r   s   "r   r   ru     s     9 9s 9t 9r   c                	X    V P                  V P                  P                  V. 4      4      # r    )r  r   r   r   s   &&r   var_to_boolCMakeTraceParser.var_to_bool  s"      sB!788r   c               (    V ^8  d   QhRRRRRRRR/# )r   functionr   errorrD   r   r   r   r   )r   s   "r   r   ru     s/     F Fs F3 F~ FRV Fr   c                	    V P                   '       d"   \        P                  ! R V RV RV 24       R# \        RV RV RV 24      h)zCMake trace warning: z() 
NzCMake: )rt   r   debugr   )r$   r	  r
  rD   s   &&&&r   _gen_exceptionCMakeTraceParser._gen_exception  sN     ???JJ.xjE7"UGLMwxjE7"UGDEEr   c                    V ^8  d   QhRRRR/# r   rD   r   r   r   r   )r   s   "r   r   ru     s     ;X ;X ;X4 ;Xr   c                \   RpRVP                   9   p VP                   P                  R4      pVP                   V^,           ,          p. pVP                    F.  pV'       d   VR8X  d   K  VR8X  d    MVP	                  V4       K0  	  \        V4      ^8  d   V P                  RRV4      # VP                  ^ 4      pRP                  V4      pV'       dA   WpP                  9  g	   V'       d)   \        VP                  R4      V4      V P                  V&   V'       g"   WpP                  9   d   V P                  V R# R# VP                  R4      V P                  V&   VP                  R4      V P                  P                  VP                  / 4      V&   R#   \        \        3 d     ELbi ; i)	a  Handler for the CMake set() function in all varieties.

comes in three flavors:
set(<var> <value> [PARENT_SCOPE])
set(<var> <value> CACHE <type> <docstring> [FORCE])
set(ENV{<var>} <value>)

We don't support the ENV variant, and any uses of it will be ignored
silently. the other two variates are supported, with some caveats:
- we don't properly handle scoping, so calls to set() inside a
  function without PARENT_SCOPE set could incorrectly shadow the
  outer scope.
- We don't honor the type of CACHE arguments
NFORCECACHEPARENT_SCOPEry   requires at least one argument rT   )r   index
ValueError
IndexErrorappendlenr  popr   r   r8   r   r   r   
setdefaultr"   )	r$   rD   
cache_typecache_force	cache_idxr   rO   
identifierr9   s	   &&       r   r   CMakeTraceParser._cmake_set  sf   " 
+	

((1IIM2J
 A^+ G|KKN  t9q=&&u.NPUVV XXa[
 +{)8S9I:)V

:&YY&IIj) ' %*KK$4DIIj!GL{{SVGWD((R8DK J' 		s   5F F+*F+c                    V ^8  d   QhRRRR/# r  r   )r   s   "r   r   ru   T  s     ) ). )T )r   c                	    \        VP                  4      ^8  d   V P                  RRV4      # VP                  ^ ,          V P                  9   d!   V P                  VP                  ^ ,           R# R# )   rz   r  N)r  r   r  r   r$   rD   s   &&r   r   CMakeTraceParser._cmake_unsetT  sV    uzz?Q&&w0PRWXX::a=DII%		%**Q-( &r   c                    V ^8  d   QhRRRR/# r  r   )r   s   "r   r   ru   \  s     j j> jd jr   c                	$   \        VP                  4      pR pRV9  d   V P                  RRV4      # VP                  R4       \	        V4      ^8  d   V P                  RRV4      # \        V^ ,          R/ WR7      V P                  V^ ,          &   R# )TIMPORTEDr{   z*non imported executables are not supportedrequires at least 1 argument
EXECUTABLErD   rB   N)r   r   r  remover  r=   r   )r$   rD   r   is_importeds   &&  r   r   &CMakeTraceParser._cmake_add_executable\  s    EJJ T!&&'79eglmmJt9q=&&'79WY^__ +DG\2U iT!Wr   c                    V ^8  d   QhRRRR/# r  r   )r   s   "r   r   ru   l  s      T  T  T4  Tr   c                	N   \        VP                  4      pR V9   de   VP                  R 4       \        V4      ^8  d   V P	                  RRV4      # \        V^ ,          R / VRV9   R7      V P                  V^ ,          &   R# RV9   di   VP                  R4       \        V4      ^8  d   V P	                  RRV4      # \        V^ ,          V^,          / VRR7      V P                  V^ ,          &   R# RV9   dk   VP                  R4       \        V4      ^8  d   V P	                  RRV4      # \        V^ ,          RRV^,          ./VR	7      V P                  V^ ,          &   R# R
V9   d   V P	                  RRV4      # \        V^ ,          R/ VR	7      V P                  V^ ,          &   R# )	INTERFACEr|   z$interface library name not specifiedr+  r.  zrequires at least 2 argumentsTALIASINTERFACE_LINK_LIBRARIES)rD   OBJECTz"OBJECT libraries are not supportedNORMALN)r   r   r/  r  r  r=   r   r$   rD   r   s   && r   r   #CMakeTraceParser._cmake_add_libraryl  s~   EJJ $KK$4y1}**=:`bghh$/QbPU`jnr`r$sDLLa!4KK
# 4y1}**=:Y[`aa$/Qa"E\`$aDLLa!_KK  4y1}**=:Y[`aa %0QC]`def`g_hBiqv$wDLLa!&&}6Z\abb$/Q2U$SDLLa!r   c               $    V ^8  d   QhRRRRRR/# )r   rD   r   r?   r   r   r   r   )r   s   "r   r   ru     s'     F( F(~ F(_ F(`d F(r   c                	  a V P                  \        VP                  4      4      pV'       g   V P                  R RV4      # V^ ,          R8X  d   V P                  R RV4      # . ROp\	        V4      pR R	 lpR
 R lpR R lpRoR V3R llp	Rp
V F]  pW9   dG   VR8X  d   Tp
M:VR8X  d   Tp
M0VR8X  d   T	p
M&VR8X  d   Tp
V;P
                  . .,          un        MRp
KO  V
f   KU  V
! W4       K_  	  V P                  R4      pV P                  R4      pS'       d   \        S4      MRVn        V'       d   \        V4      MRVn	        V'       d   \        V4      MRVn
        V P                  VP                  4      Vn        V P                  VP                  4      Vn        VP
                   Uu. uF  qP                  V4      NK  	  upVn        V ;P                  V.,          un        V'       d   WPP                  V&   R# R# u upi )r}   r,  TARGETz(TARGET syntax is currently not supportedOUTPUTCOMMANDDEPENDSWORKING_DIRECTORYc               $    V ^8  d   QhRRRRRR/# r   r\   r   targetra   r   r   r   )r   s   "r   r   @CMakeTraceParser._cmake_add_custom_command.<locals>.__annotate__  s"     	) 	)s 	),@ 	)T 	)r   c                :    V;P                   V .,          un         R # r    )rh   r\   rD  s   &&r   handle_outputACMakeTraceParser._cmake_add_custom_command.<locals>.handle_output  s    C5(r   c               $    V ^8  d   QhRRRRRR/# rC  r   )r   s   "r   r   rE    s"     	( 	( 	(-A 	(d 	(r   c                X    V R 8X  d   R# VP                   R;;,          V .,          uu&   R# )ARGSN)ri   rG  s   &&r   handle_commandBCMakeTraceParser._cmake_add_custom_command.<locals>.handle_command  s"    f}NN23%'r   c               $    V ^8  d   QhRRRRRR/# rC  r   )r   s   "r   r   rE    s"     	$ 	$ 	$-A 	$d 	$r   c                :    V;P                   V .,          un         R # r    )rG   rG  s   &&r   handle_dependsBCMakeTraceParser._cmake_add_custom_command.<locals>.handle_depends  s    NNse#Nr   Nc               $    V ^8  d   QhRRRRRR/# rC  r   )r   s   "r   r   rE    s"     	# 	#C 	#1E 	#$ 	#r   c                <   < Sf   V oR # SR,          oSV ,          oR # )Nr  r   )r\   rD  rj   s   &&r   handle_working_dirFCMakeTraceParser._cmake_add_custom_command.<locals>.handle_working_dir  s"    "!s"s"r   !MESON_PS_CMAKE_CURRENT_BINARY_DIR!MESON_PS_CMAKE_CURRENT_SOURCE_DIR)r>  r?  MAIN_DEPENDENCYr@  
BYPRODUCTSIMPLICIT_DEPENDSrA  COMMENTDEPFILEJOB_POOLVERBATIMAPPENDUSES_TERMINALCOMMAND_EXPAND_LISTS)_flatten_argsr   r   r  ra   ri   r   r	   rj   rH   rI   _guess_filesrh   rG   r   r   )r$   rD   r?   r   
magic_keysrD  rH  rN  rR  rV  r   rO   cbinary_dircsource_dirrV   rj   s   &&&            @r   r   *CMakeTraceParser._cmake_add_custom_command  s   !!$uzz"23&&';=[]bcc 7h&&';=ginooa
 &d+	)	(
	$ 	# 	# A=&B)^'B--+B)^'BNNrd*NB~1! $ oo&IJoo&IJ2=T+.46Ak!2t6Ak!2t"//0C0CD**6>>:8>G1++A.Gx'!'LL  Hs   1Hc                    V ^8  d   QhRRRR/# r  r   )r   s   "r   r   ru     s     = =n = =r   c                	    \        VP                  4      ^8  d   V P                  RRV4      # V P                  WP                  ^ ,          4       R# )r&  r~   r  N)r  r   r  r   r'  s   &&r   r   )CMakeTraceParser._cmake_add_custom_target  sD     uzz?Q&&':<\^cdd 	&&ujjm<r   c                    V ^8  d   QhRRRR/# r  r   )r   s   "r   r   ru     s     J J JD Jr   c                	  a aaaa \        SP                  4      pVP                  ^ 4      pRo. pV'       d>   VP                  ^ 4      pVR9   d   RoK$  VR8X  d   MWEP                  R4      ,          pKE  V'       g   S P	                  RRS4      # \        V4      ^8X  d   R# VP                  ^ 4      oS P                  R8X  d"   R	P                  V4      P                  R4      oM*V UUu. uF  qfP                  R4       F  qwNK  	  K  	  uppoS'       g   R# R
 VVV VV3R llpR VV V3R llp	VR8X  d   V F  p
V! V
4       K  	  R# VR8X  d%   S P                  V4      pV F  p
V	! V
4       K  	  R# R# u uppi )r   FTPROPERTYrT   r   zfailed to parse argument listNrx   r  c                    V ^8  d   QhRRRR/# )r   r   r   r   r   r   )r   s   "r   r   :CMakeTraceParser._cmake_set_property.<locals>.__annotate__  s     	3 	3 	3 	3r   c                .  < V SP                   9  d   SP                  R RV  R2S4      # SP                   V ,          pSVP                  9  d   . VP                  S&   S'       d"   VP                  S;;,          S,          uu&   R# SVP                  S&   R# )r   TARGET 
 not foundN)r   r  rA   )r   r   r  r"  r$   rD   r9   s   & r   	do_target7CMakeTraceParser._cmake_set_property.<locals>.do_target  sz    $**>WQCz;RTYZZ,,q/C/-/z*z*e3*-2z*r   c                    V ^8  d   QhRRRR/# )r   r   r   r   r   r   )r   s   "r   r   rq    s     	- 	-3 	-4 	-r   c                p  < SR 8w  g   SP                  S4      '       g   R# SP                  R4      pV'       g-   \        P                  ! \        P
                  ! R4      4       Rp\        V4      p\        V 4      pVP                  4       '       g	   W#,          pSP                  P                  V4       R# )HEADER_FILE_ONLYNrY  z                    CMake trace: set_property(SOURCE) called before the preload script was loaded.
                    Unable to determine CMAKE_CURRENT_SOURCE_DIR. This can lead to build errors.
                .)
r  r   r   warningr   r   r	   is_absoluter   add)r   rI   cur_psrc_pr"  r$   r9   s   &   r   	do_source7CMakeTraceParser._cmake_set_property.<locals>.do_source  s    //t7H7H7O7O"oo.QRO"X__ .   #&)EIE$$&&!!%%e,r   r=  SOURCE>   ra  APPEND_STRING)	r   r   r  r   r  r  r   r   re  )r$   rD   r   scoper   currrV   yru  r  rO   filesr  r"  r9   s   ff          @@@r   r   $CMakeTraceParser._cmake_set_property  sL   EJJ88A;D 22z!zz#&G&&~7VX]^^t9>XXa[
'HHTN((-E $;1ggclQlQ;E	3 	3	- 	-& H! h%%g.E!  O <s   *!E8c                    V ^8  d   QhRRRR/# r  r   )r   s   "r   r   ru   +  s     39 39. 39T 39r   c                	   \        VP                  4      p. pV'       d-   VP                  ^ 4      pVR8X  d   MVP                  V4       K4  . pV P                  R8X  d   VP                  ^ 4      p. p\
        P                  ! R4      pV Fj  p	VP                  V	4      '       d@   V'       d2   VP                  VRP                  V4      P                  R4      34       T	p. pKY  VP                  V	4       Kl  	  V'       d2   VP                  VRP                  V4      P                  R4      34       MG\        VR,          VR,          4       U
u. uF#  q^ ,          V
^,          P                  R4      3NK%  	  pp
V FX  w  rkV FM  pWP                  9  d   V P                  RR	V R
2V4      u u # WP                  V,          P                  V&   KO  	  KZ  	  R# u up
i )r   
PROPERTIESrx   z	^[A-Z_]+$r  rT   :NNr   :r&  Nr   r   rs  rt  N)r   r   r  r  r   recompilematchr   r   r   r   r  rA   )r$   rD   r   r   r  arglistr?   r   
prop_regexarV   r9   rO   s   &&           r   r   -CMakeTraceParser._cmake_set_target_properties+  s   EJJ88A;D|#NN4 $ 68'88A;D"$FL1J##A&&chhv.>.D.DS.I'JKDFMM!$  chhv&6&<&<S&ABC8;DItDz8RS8R1!adjjo.8RGS"KDLL(../F'RSQTT^H_afgg38Q**40	  # Ts   )Gc                    V ^8  d   QhRRRR/# r  r   )r   s   "r   r   ru   `  s     + +^ + +r   c                	`   \        VP                  4      p\        V4      ^8  d   V P                  RRV4      # V P                  P                  V^ ,          4      pV'       g   V P                  RRV4      # VR,           F+  pV;P                  VP                  R4      ,          un        K-  	  R# )r   r   ztakes at least 2 argumentsztarget not foundr&  NNrT   N)r   r   r  r  r   r   rG   r   )r$   rD   r   rD  rO   s   &&   r   r   (CMakeTraceParser._cmake_add_dependencies`  s    EJJt9q=&&'9;WY^__!!$q'*&&'9;MuUUbANNaggcl*N r   c                    V ^8  d   QhRRRR/# r  r   )r   s   "r   r   ru   n  s     G G~ G$ Gr   c                	.    V P                  R RRV4       R# )r   COMPILE_DEFINITIONSINTERFACE_COMPILE_DEFINITIONSN_parse_common_target_optionsr'  s   &&r   r   2CMakeTraceParser._cmake_target_compile_definitionsn  s!    ))*FH]_~  AF  	Gr   c                    V ^8  d   QhRRRR/# r  r   )r   s   "r   r   ru   r  s     { {> {d {r   c                	.    V P                  R RRV4       R# )r   COMPILE_OPTIONSINTERFACE_COMPILE_OPTIONSNr  r'  s   &&r   r   .CMakeTraceParser._cmake_target_compile_optionsr  s    ))*BDUWrtyzr   c                    V ^8  d   QhRRRR/# r  r   )r   s   "r   r   ru   v  s     p p~ p$ pr   c           	     	8    V P                  R RRVRR.RR7       R# )r   INCLUDE_DIRECTORIESINTERFACE_INCLUDE_DIRECTORIESSYSTEMBEFORET)r   pathsNr  r'  s   &&r   r   2CMakeTraceParser._cmake_target_include_directoriesv  s@    ))*FH]_~  AF  PX  Zb  Oc  ko)  	pr   c                    V ^8  d   QhRRRR/# r  r   )r   s   "r   r   ru   z  s     r r r4 rr   c                	.    V P                  R RRV4       R# )r   LINK_OPTIONSINTERFACE_LINK_OPTIONSNr  r'  s   &&r   r   +CMakeTraceParser._cmake_target_link_optionsz  s    ))*?Qikpqr   c                    V ^8  d   QhRRRR/# r  r   )r   s   "r   r   ru   ~  s     x x. xT xr   c                	.    V P                  R RRV4       R# )r   LINK_LIBRARIESr6  Nr  r'  s   &&r   r   -CMakeTraceParser._cmake_target_link_libraries~  s    ))*ACSUoqvwr   c                    V ^8  d   QhRRRR/# r  r   )r   s   "r   r   ru     s     
, 
,N 
,t 
,r   c                	.   \        VP                  4      p\        V4      ^8  d   V P                  RRV4      # V^ ,          P	                  4       P                  4       R9  d   R# V ;P                  RP                  VR,          4      .,          un        R# )r&  r   ztakes at least 1 argumentNr  r  )FATAL_ERROR
SEND_ERROR)r   r   r  r  r   rZ   r   r   r9  s   && r   r   CMakeTraceParser._cmake_message  sn    EJJt9q=&&y2MuUU7==?  "*GGb*++r   c               4    V ^8  d   QhRRRRRRRRRRR	R
RR/# )r   r   r   private_propinterface_proprD   r   r   zT.Optional[T.List[str]]r  rC   r   r   r   )r   s   "r   r   ru     sN     *: *: *:C *:Y\ *:es *:  ~U *:  ei *:  vz *:r   c                	   Vf   R.p\        VP                  4      p\        V4      ^8  d   V P                  VRV4      # V^ ,          pWP                  9  d   V P                  VRV R2V4      # . p	. p
RpVR,           FT  pW9   d   K  VR9   d   TpK  VR	9   d   WP                  R4      ,          p	VR
9   g   K=  WP                  R4      ,          p
KV  	  V'       d#   V P                  V	4      p	V P                  V
4      p
V	 Uu. uF  q'       g   K  VNK  	  p	pV
 Uu. uF  q'       g   K  VNK  	  p
pW*3W933 F  pV^ ,          V P                  V,          P                  9   g(   . V P                  V,          P                  V^ ,          &   V P                  V,          P                  V^ ,          ;;,          V^,          ,          uu&   K  	  R # u upi u upi )Nr  r  rs  rt  PUBLICr  rT   >   r  PRIVATEr4  LINK_PUBLICLINK_PRIVATELINK_INTERFACE_LIBRARIES>   r  r4  r  r  >   r  r  r  )r   r   r  r  r   r   re  rA   )r$   r   r  r  rD   r   r  r   rD  	interfaceprivatemoderO   rV   js   &&&&&&&        r   r  -CMakeTraceParser._parse_common_target_options  s   >ZFEJJt9q=&&t-MuUUa%&&twvhj-I5QQ	bA{qqYYWWS\)	<<773<'  )))4I''0G )/	1QQQ		/%+g11g+)N+FGAQ44<</:::8:V$//!5LL ++AaD1QqT91	 H 0+s   	GG	G-Gc                    V ^8  d   QhRRRR/# r  r   )r   s   "r   r   ru     s     " "^ " "r   c                	    V P                    F;  pV P                  P                  VP                  R 4      pV'       g   K3  V! V4       K=  	  . V n         R # r    )r   r   r   r   )r$   rD   r   r   s   &&  r   r   0CMakeTraceParser._meson_ps_execute_delayed_calls  sB    %%A##AFFD1Br1 &  "r   c                    V ^8  d   QhRRRR/# r  r   )r   s   "r   r   ru     s     M M> Md Mr   c                	2    V P                  R 4      V n        R# )MESON_PS_DELAYED_CALLSN)r   r   r'  s   &&r   r   &CMakeTraceParser._meson_ps_reload_vars  s     $ 2 23K Lr   c                    V ^8  d   QhRRRR/# r  r   )r   s   "r   r   ru     s     o o oD or   c                	    \        VP                  4      pV'       g   \        P                  ! R 4       R# \        P                  ! RV^ ,           R24       R# )z_Invalid preload.cmake script! At least one argument to `meson_ps_disabled_function` is expectedNzThe CMake function "z8" was disabled to avoid compatibility issues with Meson.)r   r   r   r
  r{  r9  s   && r   r   ,CMakeTraceParser._meson_ps_disabled_function  s>    EJJJJxy+DG94lmnr   c                    V ^8  d   QhRRRR/# r   r   r   r   z'T.Generator[CMakeTraceLine, None, None]r   )r   s   "r   r   ru     s     > >c >.U >r   c              #  	  "   \         P                  ! R \         P                  4      p\         P                  ! R4      p^ pV\        V4      8  d   VP	                  W4      pV'       gD   VP	                  W4      pV'       g   \        WR 4       \        R4      hVP                  4       pKl  VP                  4       pVP                  ^4      pVP                  ^4      pVP                  ^4      p	VP                  ^4      p
V
P                  R4      pV Uu. uF  qP                  4       NK  	  pp\        V\        V4      W4      x  EK
  R# u upi 5i)z>\s*(.*\.(cmake|txt))\(([0-9]+)\):\s*(\w+)\(([\s\S]*?) ?\)\s*\nz[^\n]*\nNzFailed to parse CMake tracer  )r  r  	MULTILINEr  r  printr   endgroupr   rZ   r   r   )r$   r   	reg_tline	reg_otherlocmo_file_line
skip_matchr"   r   r   r   arglr  s   &&           r   r   !CMakeTraceParser._lex_trace_human  s    JJ`bdbnbno	JJ{+	CJ$??56L&__U8
!%+&()FGG nn&""$C%%a(D%%a(D%%a(D%%a(D::c?D'+,t!GGItD, s4y$==) $ -s   DEE-$Ec                    V ^8  d   QhRRRR/# r  r   )r   s   "r   r   ru     s     P PS P-T Pr   c              #  	(  "   VP                  R R7      pVP                  ^ 4       V F  p\        P                  ! V4      p\	        VR,          \
        4      '       g   Q h\	        VR,          \        4      '       g   Q h\	        VR,          \
        4      '       g   Q h\	        VR,          \        4      '       g   Q hVR,          pV F  p\	        V\
        4      '       d   K  Q h	  \        VR,          VR,          VR,          V4      x  K  	  R# 5i)F)keependsr"   r   cmdr   N)	
splitlinesr  jsonloadsr   r   r   r   r   )r$   r   linesrO   datar   r  s   &&     r   r    CMakeTraceParser._lex_trace_json  s       % 0		!A::a=Dd6lC0000d6lC0000d5kC0000d6lD1111<D!!S))))  ftF|T%[$OO s   CD#/Dc                    V ^8  d   QhRRRR/# )r   r   r   r   r   )r   s   "r   r   ru     s      + + r   c                	J    . pV F  pW#P                  R 4      ,          pK  	  V# r   )r   )r$   r   resrO   s   &&  r   rd  CMakeTraceParser._flatten_args  s&    A773<C 
r   c                    V ^8  d   QhRRRR/# )r   broken_listr   r   r   )r   s   "r   r   ru     s     1 1 1 1r   c                	x   V P                   R 8w  d   V# \        P                  ! R4      p\        P                  ! R4      p. pRpRpV F  pVf   TpRpK  \        V4      P	                  4       '       d   WE.,          pTpRpK;  VP                  V4      '       g   WE.,          pTpRpKa  VP                  V4      '       d   V RV 2pWE.,          pRpRpK  \        V RV 24      P                  4       '       d   V RV 2pRpK  V'       d   WE.,          pTpRpK  V RV 2pRpK  	  V'       d
   WE.,          pV# )rx   z^([A-Za-z]:)?/(.*/)*[^./]+$z^.*\.[a-zA-Z]+$NFr  T)r   r  r  r	   r   r  exists)r$   r  	reg_startreg_end
fixed_listcurr_str
path_foundrO   s   &&      r   re  CMakeTraceParser._guess_files  sR   ' JJ=>	**/0"$
$(
A"
h''))j(
"
__X..j(
"
q!!&Zq,j(
"

!A3'(//11&Zq,!
j(
"
&Zq,"
? B *$Jr   )r   rq   r   r   rs   r   r   r   rt   r   r   r   r   r   r   r   )Tr    )NF)&r1   r2   r3   r4   r%   r   r   r   r   r   r   r  r  r  r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r   r   r   r   r   rd  re  r6   r   r   r   ro   ro   V   s    =~
6<F#Pp9F;Xz)j  TDF(P=JX39j+G{prx
,*:X"Mo>6P1 1r   ro   )
__future__r   commonr   	generatorr   rM   r   mesonlibr   typingTpathlibr	   	functoolsr
   r  r  r   TYPE_CHECKINGenvironmentr   r   
NamedTupler8   r=   ra   ro   r   r   r   <module>r     su    # " 2  &    	  ???)D D all !C !CF2; 2X Xr   