+
    UBi                      a  0 t $ ^ RIHt ^RIHtHtHtHtHtH	t	H
t
HtHtHt ^RIHt ^RIHtHtHt ^RIHt ^RIHtHt ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt ] PB                  '       d3   ^RI"H#t# ^R	I$H%t% ^R
I&H't' ^RI(H)t) ^RI*H+t+ ^RI,H-t- ^RI.H/t/H0t0 ^RI1H2t2 / t3R]4R&   ]	! 4       '       d,   . RuO]3R&   . RvO]3R&   . RwO]3R&   . RxO]3R&   . RyO]3R&   RR.]3R&   Mi]Pj                  ! 4       Pm                  4       R8X  d   . RzO]3R&   . R{O]3R&   R.]3R&   R.]3R&   M. R|O]3R&   . R}O]3R&   RR.]3R&   RR.]3R&   . R~O]3R&   RR.]3R&   . RO]3R&   R .]3R!&   R".]3R#&   R$.]3R%&   R&.]3R'&   R(.]3R)&   R*R+.]3R*&   R,R-.]3R.&   R/.]3R/&   R0.]3R1&   R2.]3R3&   R4.]3R5&   R6.]3R7&   R8.]3R9&   R:.]3R;&   R<R=.]3R<&   R> R? lt7R@ RA lt8RRB RC llt9RRD RE llt:RF RG lt;RHR/RI RJ llt<RK RL lt=RM RN lt>RO RP lt?RQ RR lt@RS RT ltARU RV ltBRW RX ltCRY RZ ltDR[ R\ ltER] R^ ltFR_ R` ltGRa Rb ltHRc Rd ltIRe Rf ltJRg Rh ltKRi Rj ltLRk Rl ltMRm Rn ltNRo Rp ltORq Rr ltPRs Rt ltQR# )    )annotations)
MesonExceptionEnvironmentExceptionMachineChoice	join_argssearch_version
is_windows
Popen_safePopen_safe_loggedversion_comparewindows_proof_rm)ExternalProgram)BinaryTabledetect_cpu_familydetect_machine_info)mlog)guess_win_linkerguess_nix_linkerN)Compiler)ASMCompiler)	CCompiler)CPPCompiler)FortranCompiler)RustCompiler)StaticLinkerDynamicLinker)EnvironmentzT.Dict[str, T.List[str]]defaultsgccclangcg++clang++cppfortranobjcobjcppcscmcscse2kdjavacjavanvcccudarustcrustswiftcswiftvalacvalacythoncython3argarstatic_linkerstriplibvs_static_linkerllvm-libclang_cl_static_linkernvlinkcuda_static_linkerzgcc-argcc_static_linkerzllvm-arclang_static_linkeremxomfaremxomf_static_linkernasmyasmc               (    V ^8  d   QhRRRRRRRR/# )	   env'Environment'langstrfor_machiner   returnT.Optional[Compiler] )formats   "@/usr/lib/python3.14/site-packages/mesonbuild/compilers/detect.py__annotate__rU   W   s/     J J JS J} JYm J    c                   / R \         bR\        bR\        bR\        bR\        bR\
        bR\        bR\        bR\        bR	\        bR
\        bR\        bR\        bR\        bR\        bR\        bpW9   d   W1,          ! W4      # R# )r!   r$   r&   r0   r'   r.   r*   r6   r,   r2   r%   r4   r7   rG   masm	linearasmN)detect_c_compilerdetect_cpp_compilerdetect_objc_compilerdetect_cuda_compilerdetect_objcpp_compilerdetect_java_compilerdetect_cs_compilerdetect_vala_compilerdetect_d_compilerdetect_rust_compilerdetect_fortran_compilerdetect_swift_compilerdetect_cython_compilerdetect_nasm_compilerdetect_masm_compilerdetect_linearasm_compiler)rK   rM   rO   lang_maps   &&& rT   compiler_from_languagerk   W   s    SS"S 	$S 	$	S
 	(S 	$S 	 S 	$S 	S 	$S 	*S 	&S 	(S 	$S 	$S  	.!SH$ 04/?8>#+ITIrV   c               0    V ^8  d   QhRRRRRRRRR	RR
R/# )rJ   rK   rL   rM   rN   rO   r   skip_sanity_checkbool
subprojectrP   rQ   rR   )rS   s   "rT   rU   rU   l   s=     	 	] 	# 	M 	fj 	x{ 	  AU 	rV   c                (   \        WV4      pVf   V# VP                  V8X  g   Q hV P                  P                  WV4       V'       g    VP	                  V P                  4       4       WPP                  P                  VP                  ,          V&   V# N)rk   rO   coredataprocess_compiler_optionssanity_checkget_scratch_dir	compilers)rK   rM   rO   rm   ro   comps   &&&&& rT   detect_compiler_forrx   l   s|    !#[9D|{***LL))$jA#--/059LL4++,T2KrV   c          
     ,    V ^8  d   QhRRRRRRRRR	R
/# )rJ   rK   rL   rM   rN   rO   r   allow_build_machinern   rP   z<T.Tuple[T.List[T.List[str]], T.Union[None, ExternalProgram]]rR   )rS   s   "rT   rU   rU   {   s1       S } (,9urV   c                ~   V P                  W!4      pVe   \        P                  ! V4      w  rVV.pWv3# V P                  P	                  V4      '       g2   V'       d   \        W\        P                  4      # \        V: R24      h\        V,           Uu. uF  q.NK  	  pp\        P                  ! 4       pWv3# u upi )zw
The list of compilers is detected in the exact same way for
C, C++, ObjC, ObjC++, Fortran, CS so consolidate it here.
z= compiler binary not defined in cross file [binaries] section)lookup_binary_entryr   parse_entrymachinesmatches_build_machine_get_compilersr   BUILDr   r   detect_compiler_cache)	rK   rM   rO   rz   valuerw   ccacherv   xs	   &&&&     rT   r   r   {   s     ##K6E"..u5F	  ||11+>>"%c1D1DEE&$1n'opp"*4.1.QS.	1224 2s   B:c               (    V ^8  d   QhRRRRRRRR/# )	rJ   
exceptionsz'T.Mapping[str, T.Union[Exception, str]]binarieszT.List[T.List[str]]bintyperN   rP   z
T.NoReturnrR   )rS   s   "rT   rU   rU      s0     	' 	';	'%	' 	' '1	'rV   c                    R V RV 2pV '       d3   VR,          pV P                  4        F  w  rEVRV RV R2,          pK  	  \        V4      h)zUnknown z(s): z-
The following exception(s) were encountered:z

Running `z` gave "")itemsr   )r   r   r   errmsgr!   es   &&&   rT   _handle_exceptionsr      s]     yhZ0FBB$$&DAA3hqc33F '
v
&&rV   c               $    V ^8  d   QhRRRRRR/# )rJ   rK   rL   compilerr   rP   r   rR   )rS   s   "rT   rU   rU      s+     kR kRm kRx kRL kRrV   c           
        ^RI Hp ^RIHp ^RIHp V P                  VP                  R4      pVe   V.pEMO\        R,           Uu. uF  qw.NK  	  ppVP                  R8X  d   \        R,          .V,           pEMVP                  4       R	8X  d   \        R
,          \        R,          .pEMV P                  VP                  ,          P                  4       '       dI   V P                  P                  P                  V! R4      4      '       d   \        R,          .V,           pEMaVP                  R8X  d   \        R,          .V,           pEM9VP                  R8X  dI   \        R,          p	VP                   P#                  R4      ^ ,          p
V	^ ,           RV
 2.V	.V,           pMVP                  R8X  d>   \%        4       '       d+   \        R
,          \        R,          VP'                  4       .pMTpMVP                  R8X  d   VP                  R8X  d   R..pMk\%        4       '       d   VP                  R8X  d   R..pME\%        4       '       d4   VP                  R8X  d#   \        R
,          \        R,          .V,           pMTp/ pV EF  p\(        P*                  P-                  V^ ,          4      p\.        ;QJ d    R V 4       F  '       g   K   RM	  RM! R V 4       4      '       d   RpMVR@9   d   R pMR!p \1        W].,           R"R#7      w  rpR$T9   d    TP7                  YP\9        TR%R4      4      u # R&TP;                  4       9   g   R&TP;                  4       9   d    TP=                  YP\9        TR%R4      4      u # R'T9   d   TP?                  YP4      u # TP@                  ^ 8X  d   RT9   d   TPC                  YP4      u # R(T9   g   R)T9   d<   \E        YPF                  4      '       g   Q hTPI                  YPTPJ                  4      u # R*T9   dL   \E        YPF                  4      '       g   Q hTPI                  YPTPJ                  TPM                  4       R+7      u # R,T9   dC   R-T9   d<   \E        YPF                  4      '       g   Q hTPI                  YPTPJ                  4      u # TPO                  R.4      '       d   R/T9   d   TPQ                  YP4      u # TPO                  R04      '       d@   R1T9   d   TPS                  YP4      u # R2T9   d   TPU                  TP                  YP4      u # R3T9   dH   RT9   d   TPW                  YP4      u # R4T9   d   TPY                  YP4      u # TP[                  YP4      u # TPO                  R54      '       d   TP]                  YP4      u # TP_                  4       PO                  R64      '       g&   TP_                  4       PO                  R74      '       d.   R8T9   d   TPa                  YP4      u # TPc                  YP4      u # R9T9   d   TPe                  YP4      u # TP@                  ^ 8X  d   TPg                  TP                  YP4      u # TP@                  ^8X  d6   TPO                  R:4      '       d   TPi                  TP                  YP4      u # TP@                  ^8X  d+   TPO                  R;4      '       d   TPk                  YP4      u # TP@                  ^8X  d6   TPO                  R<4      '       d   TPg                  TP                  YP4      u # TP@                  ^8X  g   EK  TPO                  R=4      '       g   EK  TPm                  TP                  YP4      u # 	  \o        WR>4       \q        R?4      hu upi   \2         d"   pTT\5        Y].,           4      &    Rp?EK:  Rp?ii ; i)A   )r,   linkers	OptionKeyr9   Nr;   r0   rB   msvcr>   r@   
os2_emxomfrF   r   rC   r    rD   .-r,   zintel-clr!   xilibpgirG   c              3  f   "   T F'  p\         P                  P                  V4      R9   x  K)  	  R# 5i)r=   N>   r=   r   lib.exer?   	xilib.exellvm-lib.exeospathbasename.0r   s   & rT   	<genexpr>'detect_static_linker.<locals>.<genexpr>   s(     {tzoprww"&jjtz   /1TF/?ar2000armar?	--versionzDetecting archiver viamsgzxilib: executing 'lib'machinez/OUT:z"ar-Error-Unknown switch: --versionzDMD32 D CompilerzDMD64 D CompilerzLDC - the LLVM D compiler)
rsp_syntaxGDCz based on D RenesasrlinkzGNU arzxc16-arzxc32-arzTexas Instruments Incorporatedar6000zThe CompCert
Metrowerks	FreescaleARMTASKING VX-toolsetusageUsagezar: bad option: --rE   linker/Unreachable code (exception to make mypy happy)>   ar6xar430r   r   ar6x.exe	ar430.exe	armar.exe
ar2000.exe)9 r,   r   optionsr   r|   rO   r   languageget_argument_syntaxr~   is_os2rr   optstoreget_value_foridversionsplitr	   get_linker_exelistr   r   r   anyr   OSErrorr   IntelVisualStudioLinkergetattrupperVisualStudioLinkerPGIStaticLinker
returncodeArmarLinker
isinstance	DCompilerDLinkerarchrsp_file_syntax
startswith
CcrxLinker
Xc16LinkerXc32ArLinkerC2000LinkerC6000LinkerTILinkerCompCertLinkerr<   MetrowerksStaticLinkerARM%MetrowerksStaticLinkerEmbeddedPowerPCTaskingStaticLinkerArLinkerAppleArLinkerAIXArLinkerEmxomfArLinkerr   r   )rK   r   r,   r   r   r   trialsldefault_linkersllvm_arsuffixpopen_exceptionslinker_nameargpouterrr   s   &&                rT   detect_static_linkerr      sN   !#$$X%9%94@F(0(AB(A13(AB&345GF))+v512H=U4VWF\\(../6688S\\=R=R=`=`ajkwax=y=y567/IF[[E!234FF[[G#45G%%++C03F!!*Qvh/0':_LF#%||"#56AY8Z\d\w\w\yz([[J&8+<+<+Ci[F\\hkkU2fXF\\hkkV312H=U4VWZiiF$Fgg&&vay13{tz{333{tz{{{CttCC	+FUN@XYKAC $s*226R[]a@bccciik!W		%;--f78YX\;]^^/36**677<<1K!7&&v33$(:c(Ah4444??6>>&#-h4444??6(JbJbJd?eeC<Nc1h4444??6>>>>)$$K)?%%f22>>(##K'))&66k)++H,@,@&NN+s2;&**677[(**677''44>>.))))&6699;!!,//399;3I3I+3V3V|88EEDDVQQ3&..v;;<<1##H$8$8&FF<<1!8!8(()=)=vKK<<1!8!8&&v33<<10D!E!E##H$8$8&FF<<1
!;!;))(*>*>LL @ ':
P
QQG CZ  	:;Yv~67	s   ^?^_
)__
override_compilerc          
     ,    V ^8  d   QhRRRRRRRRR	R
/# )rJ   rK   rL   rM   rN   rO   r   r   zT.Optional[T.List[str]]rP   r   rR   )rS   s   "rT   rU   rU     sG     E@ E@= E@ E@- E@  pG E@  S[ E@rV   c               "   ^RI HpHp ^RIHp / p\	        WV4      w  rV	'       d'   V	P                  4       '       d   V	P                  4       M. p
Ve   V.pV EFI  p\        V\        4      '       d   V.p\        P                  P                  V^ ,          4      p\        ;QJ d    R V 4       F  '       g   K   RM	  RM! R V 4       4      '       EdJ   R\        P                  9   Ed1   R R	 lpV! \        P                  P                  \        P                  R,          R
R4      4      V! \        P                  P                  \        P                  R,          R
R4      4      V! \        P                  P                  \        P                  R,          RR4      4      V! \        P                  P                  \        P                  R,          RR4      4      .pV! \        P                   ! R4      4      pW9   d   \"        P$                  ! RV4       EK  RpM>RV9   d   RpM4RV9   d   RpM*RV9   d   RpM RV9   d   RpMVRj9   d   RpMVRk9   d   RpMRpVV.,           p \'        VRR7      w  pppRT9   d   TpTP-                  R^4      ^ ,          p\/        T4      pRpRT9   g   TP1                  R4      '       d   RpRT9   d
   R T9   d   R pR!T9   d   RpT'       d   \3        Y4      pT'       g   R"T\+        T4      &   EK  TR 8X  d,   \5        T4      pTR#8X  d   TP6                  MTP8                  pM*\;        T4      pTR#8X  d   TP<                  MTP>                  p\A        YTTT4      pT! YTTT TTTR$7      u # R%T9   d   TR#8X  d   TPB                  MTPD                  pT PG                  TPH                  TT4       \J        PL                  ! R&R'7      ;_uu_ 4       pTTPN                  R,           TPP                  .,           p\S        T4      w  pppRRR4       TPU                  YTTPN                  . \/        X4      R(7      pT! YTY TTR)7      u # R*T9   d   \V        PX                  ! R+T4      pTf   Q R,4       hR-P                  TP[                  4        U u. uF  p T f   K	  T NK  	  up 4      pTR#8X  d   TP\                  pMTR.8X  d   TP^                  p\A        YXTT4      pT! YTY TR/7      u # R0T9   d   \V        PX                  ! R1T4      pTf   R2T\+        T4      &   EK  TPa                  ^ 4      p!\/        T!4      pT!pTR#8X  d   TPb                  MTPd                  pTPg                  YTR(7      pT PG                  TPH                  TT4       T! YTY TTR37      u # R4T9   d   Rp \S        TT.,           4      w  ppp\/        T4      p\V        PX                  ! R5T\V        Ph                  4      p"T"'       d   T"Pa                  ^4      p#MR6p#TR#8X  d   TPj                  MTPl                  p\o        T R7.TTT4      pT! TTY T#TR/7      u # R8TPp                  TPr                  TPt                  3R9TPv                  TPx                  TPz                  3R:TP|                  TP~                  TP                  3R;TP|                  TP~                  TP                  3/p$T$P                  4        Fh  w  p%p&T%T9   g   K  TR#8X  d
   T&^ ,          MT&^,          pT&^,          p'T PG                  TPH                  TT4       T'! YTTR(7      pT! YTY TTR37      u u # 	  R<T9   g   R=T9   d   Rp\        Y4      pR>T9   d!   TR#8X  d   TP                  MTP                  pMTR#8X  d   TP                  MTP                  pR?T9   g(   T P                  T,          P                  4       '       d    \o        YTTTRR@7      pTf   \A        YTTT4      pT! YTY TTTR$7      u # RAT9   dv   \/        T4      pRBT9   d   RCMRDp#TR#8X  d   TP                  MTP                  pT PG                  TPH                  TT4       TP                  Y. TR(7      pT! TTY T#TR/7      u # RET9   dv   \/        T4      pRBT9   d   RCMRDp#TR#8X  d   TP                  MTP                  pT PG                  TPH                  TT4       TP                  Y. TR(7      pT! TTY T#TR/7      u # RFT9   g	   RFT9   EdS   TT3 F  p(\/        T(4      pTRG8w  g   K   M	  \        RHT: 24      hT(P-                  R^RI7      ^ ,          p)\V        PX                  ! RJT)4      p"T"'       d   T"Pa                  ^4      p#MRKT) 2p*\        T*4      hTR#8X  d   TP                  MTP                  p\o        T RL.TTT4      pT	'       d   T	P                  4       '       dm   T	P                  4       RM8X  dX   \        T	P                  4       RN4      '       d8   \"        P                  ! ROP                  T	P                  4       4      RRP7       . p
T! YTY T#T)TR37      u # RQT9   dl   TR#8X  d   TP                  MTP                  pT PG                  TPH                  TT4       TP                  YTTPN                  . TR(7      pT! YTTT TR/7      u # RRT9   dl   TR#8X  d   TP                  MTP                  pT PG                  TPH                  TT4       TP                  YTTPN                  . TR(7      pT! YTTT TR/7      u # RST9   d=   TR#8X  d   TP                  MTP                  p\A        YTTT4      p+T! YTY TT+R37      u # RTT9   d=   TR#8X  d   TP                  MTP                  p\A        YTTT4      p+T! YTY TT+R37      u # RUT9   dn   RVT9   gg   RWT9   g`   TR#8X  d   TP                  MTP                  pT PG                  TPH                  TT4       TP                  YTR(7      pT! YTTT TTR37      u # RXT9   d_   TR#8X  d   TP                  MTP                  pT PG                  TPH                  TT4       TP                  YTR(7      pT! YTY TTR37      u # R!T9   Ed   RYT9   d   \V        PX                  ! RZT4      p"T"'       d   T"Pa                  ^4      pM\        R[T 24      hTR#8X  d   TP                  MTP                  p\3        Y4      p\;        T4      Tni        T PG                  TPH                  TT4       TP                  YTTPN                  . TR(7      pT! YTTT TTTR$7      u # TP                  pT PG                  TPH                  TT4       TP                  YTR(7      pT! YTY TTR37      u # R\T9   dL   TP                  pT PG                  TPH                  TT4       TP                  YTR(7      pT! YTY TTR37      u # R]T9   g	   R^T9   Ed   RUT9   d-   TR#8X  d   TP                  MTP                  pTP                  p'M+TR#8X  d   TP                  MTP                  pTP                  p'\V        PX                  ! R_T4      p,T,f   Q R,4       hR-P                  R` T,P[                  4        4       4      p-T PG                  TPH                  TT4       T P                  TTPH                  Ra,           4      p.T.el   \S        T.R.,           4      w  pp/p\V        PX                  ! R_T/4      p0T0f   Q R,4       hR-P                  Rb T0P[                  4        4       4      p1T'! T.YT1R(7      pM\        RcTP                  : Rd24      hT! YT-Y TTR37      u # ReT9   g   EKv  TP                  pTP                  p'\V        PX                  ! RfT4      p2T2f   Q R,4       hR-P                  Rg T2P[                  4        4       4      p3T PG                  TPH                  TT4       T P                  TTPH                  Ra,           4      p.T.f   \        TPH                   Rh24      hT'! T.YT3R(7      pT! YT3Y TTR37      u # 	  \        Wx4       \        RiV 24      h  \(         d   pTT\+        T4      &    Rp?EK  Rp?ii ; i  + '       g   i     EL; iu up i   \(         d"   pTT\+        TT.,           4      &    Rp?ELVRp?ii ; i  \         d     E	L7i ; i)lzShared implementation for finding the C or C++ compiler to use.

the override_compiler option is provided to allow compilers which use
the compiler (GCC or Clang usually) as their shared linker, to find
the linker they need.
)r!   r$   r   Nc              3  f   "   T F'  p\         P                  P                  V4      R9   x  K)  	  R# 5i)clN>   r   cl.execlang-clclang-cl.exer   r   s   & rT   r   ,_detect_c_or_cpp_compiler.<locals>.<genexpr>'  s(     e\dWXrww"&RR\dr   TFWATCOMc                    V ^8  d   QhRRRR/# )rJ   r   zT.Optional[str]rP   rR   )rS   s   "rT   rU   /_detect_c_or_cpp_compiler.<locals>.__annotate__2  s     O O OO OrV   c                    V '       d=   \         P                  P                  \         P                  P                  V 4      4      # R # rq   )r   r   normcaseabspath)r   s   &rT   sanitize+_detect_c_or_cpp_compiler.<locals>.sanitize2  s+    CD277++BGGOOA,>?N$NrV   BINNTr   r   BINNT64z%Skipping unsupported cl.exe clone at:r   armccz--vsnccrx-vxc16r   ccomp-versionr   Detecting compiler viar   
Free Software Foundationzxt-r   r+   lcc	Microchipno pre-processor definesr!   )definesfull_versionr   
Emscriptenz.cr   r   r   r  Arm C/C++/Fortran Compiler4version (\d+)\.(\d+)\.?(\d+)? \(build number (\d+)\)for mypyr   r$   r   armclangz.*Component.*zversion string not foundr  r   zCL.EXE COMPATIBILITYz^Target: (.*?)-zunknown targetzlld-linkzTMS320C2000 C/C++zTMS320C6x C/C++zTI ARM C/C++ CompilerzMSP430 C/C++r    ClangApplewindowsinvoked_directlyzIntel(R) C++ Intel(R)IA-32x86x86_64z3Intel(R) oneAPI DPC++/C++ Compiler for applications	Microsoftunknown versionz3Failed to detect MSVC compiler version: stderr was
maxsplitz&.*(x86|x64|ARM|ARM64)([^_A-Za-z0-9]|$)zFFailed to detect MSVC compiler target architecture: 'cl /?' output is
linkr   z< 4.6zIVisual Studio support requires ccache 4.6 or higher. You have ccache {}. )oncePGI CompilersNVIDIA Compilers and Toolsz(ICC)zIntel(R) oneAPIr   r   r   z	RX FamilyXC32zXC32.*v(\d+\.\d+)z9Failed to detect XC32 compiler version: full version was
CompCertzMetrowerks C/C++zFreescale C/C++z)Version (\d+)\.(\d+)\.?(\d+)? build (\d+)c              3  0   "   T F  qf   K  Vx  K  	  R # 5irq   rR   r   s   & rT   r   r  p  s     '\3Ja3J   
_ldc              3  0   "   T F  qf   K  Vx  K  	  R # 5irq   rR   r   s   & rT   r   r  z  s     )^5L!!5Lr8  zFailed to detect linker for z, compiler. Please update your cross file(s).r   z+v([0-9]+)\.([0-9]+)r([0-9]+) Build ([0-9]+)c              3  0   "   T F  qf   K  Vx  K  	  R # 5irq   rR   r   s   & rT   r   r    s     &^2LQqq2Lr8  z/_ld was not properly defined in your cross filezUnknown compiler >   cl6xarmclcl430cl2000cl6x.exe	armcl.exe	cl430.exe
cl2000.exe>   iclicl.exe)zr   r!   r$   r   r   foundget_commandr   rN   r   r   r   r   environjoinshutilwhichr   debugr   r   r   r   r   r   _get_gnu_compiler_defines_get_lcc_version_from_definesElbrusCCompilerElbrusCPPCompiler_get_gnu_version_from_definesGnuCCompilerGnuCPPCompilerr   EmscriptenCCompilerEmscriptenCPPCompileradd_lang_argsr   tempfileNamedTemporaryFileLINKER_PREFIXnamer
   WASMDynamicLinkerresearchgroupsArmLtdClangCCompilerArmLtdClangCPPCompilergroupArmclangCCompilerArmclangCPPCompilerArmClangDynamicLinker	MULTILINEClangClCCompilerClangClCPPCompilerr   C2000CCompilerC2000CPPCompilerC2000DynamicLinkerC6000CCompilerC6000CPPCompilerC6000DynamicLinkerTICCompilerTICPPCompilerTIDynamicLinkerr   _get_clang_compiler_definesAppleClangCCompilerAppleClangCPPCompilerClangCCompilerClangCPPCompilerr~   r	   r   IntelClCCompilerIntelClCPPCompilerXilinkDynamicLinkerIntelLLVMClCCompilerIntelLLVMClCPPCompilerr   VisualStudioCCompilerVisualStudioCPPCompilerget_namer   get_versionwarningrS   PGICCompilerPGICPPCompilerPGIDynamicLinkerNvidiaHPC_CCompilerNvidiaHPC_CPPCompilerNvidiaHPC_DynamicLinkerIntelCCompilerIntelCPPCompilerIntelLLVMCCompilerIntelLLVMCPPCompilerArmCCompilerArmCPPCompilerArmDynamicLinkerCcrxCCompilerCcrxCPPCompilerCcrxDynamicLinkerXc32CCompilerXc32CPPCompilergcc_versionXc32DynamicLinkerXc16CCompilerXc16DynamicLinkerCompCertCCompilerCompCertDynamicLinkerMetrowerksCCompilerARMMetrowerksCPPCompilerARMMetrowerksLinkerARM"MetrowerksCCompilerEmbeddedPowerPC$MetrowerksCPPCompilerEmbeddedPowerPCMetrowerksLinkerEmbeddedPowerPCr|   r   TaskingCCompilerTaskingLinkerr   )4rK   rM   rO   r   r!   r$   r   r   rv   
ccache_exer   r   compiler_namer	  
watcom_clsfound_clr   cmdr   r   r   r   r  r   guess_gcc_or_lccr  clsr   f_oarm_ver_matchr   arm_ver_strmatchtargetti_compilers
identifiercompiler_classeslnklookatcl_signaturemr   mwcc_ver_matchcompiler_versionldo_ldmwld_ver_matchlinker_versiontasking_ver_matchtasking_versions4   &&&$                                                rT   _detect_c_or_cpp_compilerr    s    !=?*3kBI*49I9I9K9KZ##%RTF$&'	 h$$ zH((!53e\de333e\deee 2::%O 'rww||BJJx4H'SW'XY&rww||BJJx4H'S['\]&rww||BJJx4H)UY'Z[&rww||BJJx4H)U]'^_a
 $FLL$67)JJFQC%C}$C}$C%CvvC00CC#	+C5MNKAsC
 ]"Cyyq)!, %,0%,u0E0E$C<ESL$##/?G8R 8!455(7@+/3;a''C<Q<Q7@(,ann9K9K%cS';OF';W< 
 3+/3;!''C<U<UCcllC=
 ,,D99Q#"3"3k"A166!JJ$S/1a : ..{C,=,=N1- / /F ';L: : (3.II&]_bcM ,8j8,hh=+?+?+AS+AaQ+ASTGs{,,00%cS';OF';   IIos;M$8R 8!45'--a0K$[1G&L)-!%%#:Q:QC223W2UFcllC=';)&: : "S( CB(SE)9:3 %S)GII/bllCEQ)(,!$$9O9OC%cJ<g{SF';V  !1!133G3GIcIc dq//1E1EwGaGab"Q]]C4E4EwG^G^$_AMM3+<+<g>U>UV	
 -9,>,>,@(J(S -1S[&q)>Nq>Q&q)!!#,,[AXKIg{!-f> > -A c>W^F1(AG #~/3s{a++@Y@Y*.#+a&&3;O;OC3<<#<#G#G#I#I-cS';inoF ~)#g{S';l6K K #c)$S)G%nU(F(,!$$9O9OCcllC=002w0WF';V  ACG$S)G%nU(F,0CK!((S=W=WCcllC=002w0WF';V  #!3
 *(0// %
 +-abeah+ijj!<<q<9!<LIIGVEQ_`l_mn*1---1S[!))c>Y>YC%cF8S';OFj..00&&(H4I_I_Iacj9k9kLL!l!s!st~  uK  uK  uM  "N  UY  ZF';V)&: : c!$(CK!..S5G5GCcllC=--h[#J[J[]_ip-qF';F$ $ (3.+/3;!''C<U<UCcllC=44XKQTQbQbdfpw4xF';F$ $ c>&*ck!""s7K7KC WkJA';)!5 5 #*.#+!&&3;S;SC WkJA';)!5 5 C<!4s8J$(CK!..S5G5GCcllC=--c-PF';,v? ? #%)S[!//c6I6ICcllC=..s.QF';)&: : #}		"6<#kk!nG.1klxky/z{{)-aoo#:M:M3HC"?"H!!#,,[A 228+sO`O`bdnu2vg{|!# #
 oo!!#,,[A 223W2Ug{!-f> > %%CcllC=223W2UF';)&: : $(9S(@|26#+a..3C_C_11>Bcka::sOwOw==YY'SUXYN!-9z9-"xx'\>3H3H3J'\\cllC=((cllU6JKB~'k](:;
4!#+WY]!^%1=:=1!$)^^5J5J5L)^!^R>J*-I#&&S  ,A  B  B"2K)&: :  3&$$C''C "		*XZ] ^$0<*<0!hh&^2C2J2J2L&^^OcllC=((cllU6JKBz$~5d%effSGF/;)&: :_ f '3
!29+>
??I
  	/0Ys^,	\ :99  TF  B@A 8se+;!<=Bb & sr   (AB?*6AC'&AC;
1AC;
:AD 6AD/B?AC$C
ACCAC$C'AC8D AD,DAD'D'AD,D/AD>D=AD>c               $    V ^8  d   QhRRRRRR/# rJ   rK   rL   rO   r   rP   r   rR   )rS   s   "rT   rU   rU     s!     < <= <} < <rV   c                    \        V R V4      # )r!   r  rK   rO   s   &&rT   rZ   rZ     s    $S#{;;rV   c               $    V ^8  d   QhRRRRRR/# r  rR   )rS   s   "rT   rU   rU     s!     > >] > >8 >rV   c                    \        V R V4      # )r$   r  r  s   &&rT   r[   r[     s    $S%==rV   c               $    V ^8  d   QhRRRRRR/# r  rR   )rS   s   "rT   rU   rU     s&     +z +zm +z- +zH +zrV   c                6   ^RI HpHp ^RIHp ^RIHp / p\        V RV4      w  rxV'       d'   VP                  4       '       d   VP                  4       M. p	V EFN  p
Rp \        W.,           RR7      w  rpTP                  4       P                  R	^R
7      R,          p\        Y4      pTpT P!                  TP"                  TT4       T! RTR7      pT P%                  T4      '       d   TP'                  4       pTT P                  9   dl   T P                  T,          p\)        T\*        4      '       g   Q hT P,                  P.                  P1                  TTP3                  TTP4                  4      4       T! YYP6                  . TP9                  4       R7      pT! YTTTT TR7      u # 	  \;        RRP=                  V Uu. uF  pRP=                  V4      NK  	  up4       R24      h  \         d!   pY\        Y.,           4      &    Rp?EK  Rp?ii ; iu upi )r   )CudaCompilerPhaser   )
CudaLinkerr0   r   r  r   NVr/  cuda_link_args)r   r  r"  z(Could not find suitable CUDA compiler: "z;  r   )r0   r  r  r   r   linkers.linkersr  r   rF  rG  r   r   r   r<   rsplitr[   rV  r   is_cross_buildas_hostr   listrr   r   
set_optionto_host_flags_baseLINKERrY  parse_versionr   rI  )rK   rO   r  r  r   r  r   rv   r  r   r   r   r   r   r   r   r   cpp_compilerr  keyvalr   r!   s   &&                     rT   r]   r]     s   )#,*3DI*49I9I9K9KZ##%RTF	+Hu,<BZ[KAC& ))+$$S1$5b9*3<#,,[9(+>k**++-C#++++c"Cc4((((LL!!,,S#2H2Hell2[\H;8R8RTV`j`x`x`z{6Wk<U[\\G H !I$))jsTtjsefUXU]U]^_U`jsTtJuIvvwx
yyA  	<=Yx%'789	@ Uus   G( H(H3HHc               $    V ^8  d   QhRRRRRR/# r  rR   )rS   s   "rT   rU   rU     s+     xR xR xR] xRx xRrV   c                p  a aaaa ^RI Hp ^RIHp / p\        S RS4      w  rVV EF  o \	        SR.,           RR7      w  rxpR. EFp  p
 \	        SV
.,           RR7      w  pop\        S4      oSP                  R	^4      ^ ,          pRpR
S9   d   RpRS9   d
   RS9   d   RpT'       d   \        SR4      pT'       g   RT\        S4      &   K  TR8X  d9   \        T4      oTP                  p\        S STSS4      pT! SSSS YTR7      u u # \        T4      oTP                  p\        S STSS4      pT! SSSS YTR7      u u # RS9   d   TP                  p\         P"                  ! RS4      pTf   Q R4       hRP%                  TP'                  4        Uu. uF  pTf   K	  TNK  	  up4      o\        S STSS4      pT! SSSS TR7      u u # RS9   d.   TP(                  p\        S STSS4      pT! SSSS TTR7      u u # RT9   d9   \        T4      oTP*                  p\        S STSS4      pT! SSSS TTR7      u u # RT9   dg   \        T4      oRT9   d   RMRpTP,                  pS P/                  TP0                  TS4       TP3                  S S. SR7      pT! SSSS TTR7      u u # RT9   g   RT9   dg   \        T4      oRT9   d   RMRpTP4                  pS P/                  TP0                  TS4       TP3                  S S. SR7      pT! SSSS TTR7      u u # RS9   d.   TP6                  p\        S STSS4      pT! SSSS TTR7      u u # RS9   g   R S9   d.   TP8                  p\        S STSS4      pT! SSSS TTR7      u u # R!T9   d   TP;                  SSSS TR"7      u u # R#S9   d]   TP<                  pS P/                  TP0                  TS4       TP?                  SS STP@                  . SR7      pT! SSSS TTR7      u u # R$S9   d]   TPB                  pS P/                  TP0                  TS4       TP?                  SS STP@                  . SR7      pT! SSSS TTR7      u u # R% TT TTT3R& llpR'S9   g   R(T9   d'   TPD                  pT! T4      pT! SSSS TTR7      u u # R)S9   g   R*S9   d'   TPF                  pT! T4      pT! SSSS TTR7      u u # R+T9   d.   TPH                  p\        S STSS4      pT! SSSS TTR7      u u # R,T9   g   EK  TP                  R	^4      ^ ,          pTP                  4       R/,          oTPJ                  pS P/                  TP0                  TS4       TPM                  SS STP@                  . SR7      pT! SSSS TTR7      u u # 	  EK  	  \O        WE4       \Q        R-4      h  \
         d#   p	Y\        SR.,           4      &   Rp Rp	?	ELRp	?	ii ; i  \
         d"   p	Y\        ST
.,           4      &    Rp	?	EK  Rp	?	ii ; iu upi )0r   )r%   r   r%   z--helpr  r   r   Nr  zGNU Fortranr   r+   r  r  r$  r  r   r!  r   r"  G95zSun Fortranz*Intel(R) Fortran Compiler for applicationsr*  r+  r,  r  zIntel(R) Visual FortranzIntel(R) Fortranzifort (IFORT)zifx (IFORT)z	ifx (IFX)zPathScale EKOPath(tm))r  r3  r4  c                    V ^8  d   QhRRRR/# )rJ   r  zT.Type['Compiler']rP   zT.Optional['DynamicLinker']rR   )rS   s   "rT   rU   -detect_fortran_compiler.<locals>.__annotate__N  s      -? D_ rV   c           	        < R pRS9   g(   SP                   S,          P                  4       '       d    \        SSV SSRR7      pVf   \	        SSV SS4      pV#   \         d     L"i ; i)Nr'  Fr(  )r~   r	   r   r   r   )r  r   r   rK   rO   r   r   s   & rT   _get_linker_try_windows8detect_fortran_compiler.<locals>._get_linker_try_windowsN  sz    #s||K'@'K'K'M'M!13'%" >-c8S.5{DF * s   A A'&A'	flang-newzflang LLVM compilerflangr    zOpen64 Compiler SuitezNAG Fortranr   )r   -Vr  ))r   r%   r   r   r   r   r   r   r   rM  rN  ElbrusFortranCompilerr   rQ  GnuFortranCompilerArmLtdFlangFortranCompilerr\  r]  rI  r^  G95FortranCompilerSunFortranCompilerIntelLLVMClFortranCompilerrV  r   rx  IntelClFortranCompilerIntelFortranCompilerIntelLLVMFortranCompilerPathScaleFortranCompilerPGIFortranCompilerr  rY  NvidiaHPC_FortranCompilerLlvmFlangFortranCompilerClassicFlangFortranCompilerOpen64FortranCompilerNAGFortranCompilerNAGDynamicLinkerr   r   )rK   rO   r%   r   r   rv   r   r  help_outr   r   r   r   r  r  r  r  r   r  r   r  r  r   r   r   s   ff                    @@@rT   rd   rd     s   !=?&sI{CI	.x8*/DJbcNA
 'C/C50@F^_3
 %S)G99T1-a0L04##( |#( 3HiH<V$Yx%89#u,;GDG!77C-c8S';WF ';6K K <GDG!44C-c8S';WF ';6K K ,s288 "		*acf g$0<*<0((}/C/C/E#W/E!AA/E#WX)#xg{Sg{C!# # |00)#xg{Sg{C!-f> > #(-00)#xg{Sg{C!-f> > <sB(-")S.h88!!#,,[A 44S+rSZ4[g{C6+ + )C/3E3L(-")S.h44!!#,,[A 44S+rSZ4[g{C6+ + #%22)#xg{Sg{C!-f> > #{c'966)#xg{Sg{C!-f> > '#-77g{C!- 8 / / #%00!!#,,[A 11(C252C2CRQX 2 Zg{C!-f> > ,s277!!#,,[A 11(C252C2CRQX 2 Zg{C!-f> > $ c!%:h%F6605g{C!-f> > #~C9905g{C!-f> > '#-33)#*2C+Og{C!-f> > #"yyq1!4&,,.r200!!#,,[A 11c;0A0A2# 2 % g{C!-f> >K ' b '3
P
QQ]  	ABYx8*'<=>H	  @A8se+;!<=J $Xs;   W	XX3!X3XW<<XX0X++X0c               $    V ^8  d   QhRRRRRR/# rJ   rK   rL   rO   r   rP   
'Compiler'rR   )rS   s   "rT   rU   rU     s&     E Em E- EJ ErV   c                    \        V R V4      # )r&   _detect_objc_or_objcpp_compilerr  s   &&rT   r\   r\     s    *3DDrV   c               $    V ^8  d   QhRRRRRR/# r  rR   )rS   s   "rT   rU   rU     s&     G G GM Gj GrV   c                    \        V R V4      # )r'   r  r  s   &&rT   r^   r^     s    *3+FFrV   c               (    V ^8  d   QhRRRRRRRR/# )	rJ   rK   rL   rM   rN   rO   r   rP   r  rR   )rS   s   "rT   rU   rU     s0     5R 5R 5Rc 5RP] 5Rbl 5RrV   c                   ^RI HpHp / p\        WV4      w  rgV'       d'   VP	                  4       '       d   VP                  4       M. pV EF  p	R.p
 \        W,           RR7      w  rp\        T4      pRT9   d   \        Y4      pT'       g   RT\        T	4      &   KS  \        T4      pTR8X  d   TP                  MTP                  p\        Y	TY4      pT! YYT TTR	7      pTP                  R
4      ^ ,          '       g   RTR8X  d   RMR 2T\        T	4      &   K  Tu # RT9   g   K  Rp\!        Y4      pT'       g   RT\        T	4      &   EK  RT9   d!   TR8X  d   TP"                  MTP$                  pMTR8X  d   TP&                  MTP(                  pRT9   g(   T P*                  T,          P-                  4       '       d    \/        Y	TY4      pT'       g   \        Y	TY4      pT! YYT TTR7      u # 	  \3        WV4       \5        R4      h  \         d    pY\        Y,           4      &    Rp?EK  Rp?ii ; i  \0         d     Lvi ; i)r   )r&   r'   r   r  r   Nr  r  r&   r"  zint main(void) { return 0; }z#GCC was not built with support for zobjective-czobjective-c++r    r&  r'  )r   r  r   )r   r&   r'   r   rF  rG  r   r   r   r   rM  rQ  GnuObjCCompilerGnuObjCPPCompilerr   compilesrq  AppleClangObjCCompilerAppleClangObjCPPCompilerClangObjCCompilerClangObjCPPCompilerr~   r	   r   r   r   r   )rK   rM   rO   r&   r'   r   rv   r  r   r   r   r   r   r   r   r   r  rw   r   r!   s   &&&                 rT   r  r    sE   =?*3kBI*49I9I9K9KZ##%RTF m	+HN@XYKAC !%%,/?G8R 8!453G<G+/6>4''v?W?WD%cT7PF'(A ::<=a@@:]osw}o}^k  DS  ^T  9U 8!45Hc>F1(AG8R 8!45#~6:fnt22&JiJi15t--VE_E_C3<<#<#G#G#I#I-cT7XF )#wT'FG5 5U Z '3
P
QQU  	:;Yx~67	B & s*   HH:H7H22H7:IIc               $    V ^8  d   QhRRRRRR/# r  rR   )rS   s   "rT   rU   rU     s&     J Jm J- JH JrV   c                D   ^RI Hp V P                  VR4      pVf   \        R,          ^ ,          .p \	        VR.,           RR7      w  rEpRT9   g   RT9   d}   \        RT9   d   TMT4      pT'       d   TR8X  d3   RT9   d   TMTP                  4       p\        T4      ^8  d
   T^,          pTp	T P                  T	P                  Y4       T	! Y7Y4      # \        R	\        T4      ,           4      h  \
         d%    \        RP                  \        T4      4      4      hi ; i)
r   )JavaCompilerr.   r  r  r   z#Could not execute Java compiler: {}r-   r.  Unknown compiler: )r.   r
  r|   r   r   r   r   rS   r   r   r   lenrV  r   )
rK   rO   r
  exelistr   r   r   r   parts
comp_classs
   &&        rT   r_   r_     s   "%%k6:GF#A&'e':,(>D\] #~C 3C@'%66#sNS::<E5zA~(!
*--zG'K==
3i6HH
II  e"#H#O#OPYZaPb#cddes   C0 0/Dc               $    V ^8  d   QhRRRRRR/# r  rR   )rS   s   "rT   rU   rU     s&     R RM R R( RrV   c                   ^RI Hp \        V RV4      w  r4/ pV Fv  p \        VR.,           RR7      w  rxp	\        T4      pRT9   d   TP                  pMRT9   d   TP                  pMKQ  T P                  TP                  Y4       T! YkY4      u # 	  \        WS4       \        R	4      h  \         d!   p
Y\        TR.,           4      &    Rp
?
K  Rp
?
ii ; i)
r   )r*   r*   r   r  r   NMonoz	Visual C#r   )r   r*   r   r   r   r   r   MonoCompilerVisualStudioCsCompilerrV  r   r   r   )rK   rO   r*   rv   r   r   rw   r   r   r   r   r   r  s   &&           rT   r`   r`     s    &sD+>I	+DK=,@F^_KAC
 !%S=//CC++C#,,94+33! $ '3
P
QQ!  	@AYt{m';<=	s   B**C5CCc               $    V ^8  d   QhRRRRRR/# r  rR   )rS   s   "rT   rU   rU     s&     R R RM Rh RrV   c                   ^RI Hp \        V R\        P                  4      w  r4/ pV Fq  p \        VR.,           RR7      w  rGpRp
RT9   d   \        T4      p
MRT9   d   \        T4      p
T
f   KI  TpT P                  TP                  Y4       T! . YjY4      u # 	  \        WS4       \        R4      h  \         d!   p	Y\        TR.,           4      &    Rp	?	K  Rp	?	ii ; i)	zSearch for a cython compiler.)CythonCompilerr7   r  r  r   NCythonr   )r7   r  r   r   r   r   r   r   r   rV  r   r   r   )rK   rO   r  rv   r  r   rw   r   r   r   r   r  s   &&          rT   rf   rf     s    &!#x1D1DELI/1	+DD6M?WXKAC
 $(s?$S)G_$S)G'Jj11:Kb$BB# $ '3
P
QQ!  	9:Yttf}56	s   B33C>CCc               $    V ^8  d   QhRRRRRR/# r  rR   )rS   s   "rT   rU   rU     s&     J Jm J- JH JrV   c                   ^RI Hp V P                  \        P                  R4      pVf   \
        R,          ^ ,          .p \        VR.,           RR7      R,          w  rE\        T4      pRT9   d(   TpT P                  TP                  Yq4       T! Y6Y4      # \        R	\        T4      ,           4      h  \         d%    \        RP                  \        T4      4      4      hi ; i)
r   )ValaCompilerr6   r   r  r   r   rJ   Nz#Could not execute Vala compiler: {}Valar  )r6   r  r|   r   r   r   r   r   r   rS   r   r   rV  r   )rK   rO   r  r  r   r   r   r  s   &&      rT   ra   ra     s    "%%m&9&96BGF#A&'e"7k]#:@XYZ]^ S!G}!
*--zG'K==
3i6HH
II  e"#H#O#OPYZaPb#cddes   B3 3/C"c               $    V ^8  d   QhRRRRRR/# )rJ   rK   rL   rO   r   rP   r   rR   )rS   s   "rT   rU   rU     s+     R Rm R- RL RrV   c           
     
   ^RI Hp ^RIHp / p\        V RV4      w  rV\	        W4      p\        VP                  VP                  4      pV P                  VR4      p	V EF9  p
R.p \        W,           RR7      ^,          p\        T4      pTP                  R	^4      ^ ,          pTP                  pR
T9   dd   RR.p \        Y,           4      ^,          p\        T4      pTP                  R	^4      ^ ,          pTP                   p\"        P$                  ! R4       RT9   g   K  \&        ;QJ d    R T
 4       F  '       g   K   RM	  RM! R T
 4       4      '       d   \"        P(                  ! R4       T
P+                  4       p
T	Ef   / p. pT'       dY   T
P-                  TP/                  TP                  P1                  4       R4      4       RTR&   TP                  P2                  TR&   MTP                  P4                  TP                  P7                  4       ,           p\8        P:                  P=                  T^ ,          4      R$9   d   T^  TP?                  ^ 4      pT
P-                  TP/                  TR4      4       T F  pT
P-                  RRT 2.4       K  	  TP                  f   Q R4       hT'       da   \@        PB                  ! R\E        TP                  4      4      ! YT3RTP                  P4                  RTP                  PF                  /TB pEMR\E        TP                  4      ! YYPH                  3RTRTP                  PJ                  RTP                  PF                  /TB pMRT	^ ,          9   df   \M        T T	TYRR7      p\        TTP                  4      '       g   Q hRTn'        T
P-                  TP/                  TP1                  4       R4      4       M\Q        T R YR!7      pTP                  pTP4                  ^ ,          PS                  R4      '       d   TP4                  ^,          MTP4                  ^ ,          pT
P-                  TP/                  TR4      4       T PU                  TPV                  TT4       T! YYTTR"7      u # 	  \Y        WE4       \[        R#4      h  \         d    pY\        Y,           4      &    Rp?EKy  Rp?ii ; i  \         d    pY\        Y,           4      &    Rp?EK  Rp?ii ; i)%r   )r2   r   r2   rust_ldr   r  r   Nr   clippyz--rustczclippy-driver is not intended as a general purpose compiler. You can use "ninja clippy" in order to run clippy on a meson project.r1   c              3  B   "   T F  qP                  R 4      x  K  	  R# 5i)zlinker=N)r   )r   as   & rT   r   'detect_rust_compiler.<locals>.<genexpr>W  s     =Hq<<	**Hs   TFzPlease do not put -C linker= in your compiler command, set rust_ld=command in your cross file or use the RUSTC_LD environment variable, otherwise meson will override your selection.r   directr   r   z-Cz	link-arg=r!  z!T.Type[linkers.MSVCDynamicLinker]r  r   always_argssystemr1  )use_linker_prefixr!   )r   r  r   >   r   sccache).r   r2   r   r   rZ   r   r   VisualStudioLikeLinkerMixinr|   r   r   r   r   r   r   r
   ClippyRustCompilerr   deprecationr   r  copyextenduse_linker_argsget_exer   r  get_always_argsr   r   r   popTcasttyper   rY  r'  r   r%  r  endswithrV  r   r   r   )rK   rO   r2   r   r   rv   r  ccis_link_exeoverrider   r   r   r   r  r   r  
extra_argsr&  r  r!   r   r   s   &&                     rT   rc   rc     sf   !/1!#v{;LI	3	,BRYY(K(KLK&&{I>Hm	#HN8PQRSTC &c*$$S!,Q/$($5$5 s?
 k*C 03 *#.L"((a03G))C!"
 c> s=H=sss=H===45  }}H>@
+-OOC$7$7		8I8I8KR$PQ+/Jx(,.II,=,=Jy) ii//"))2K2K2MMGww''
37LL#AJAAOOC$7$72$>? % 1#(?@ % yy,8j8, VV$GbiiY+& "		 1 1&;=99;L;L& %&F
 ""))_XKIYIY V9DVMOYYM]M]V57YY5F5FVJTVF 8A;&)#*2Cafh "&'*M*MNNNN $ 3 3FNN4Db IJ /sCa *0):)C)CH)M)MFNN1%SYSaSabcSd 3 3Ar :;cllC=;L: :a h '3
P
QQc  	:;Yx~67	*  >?8>!:;s0   %R1;S1S<SST)TTc               $    V ^8  d   QhRRRRRR/# r  rR   )rS   s   "rT   rU   rU     s+     rR rR= rR} rR rRrV   c                   ^RI HpHp R\        W4      /p\	        VR,          VP
                  4      pV'       g   / p\        V4      pV'       d
   VR8X  d   Rp/ pV P                  V,          p\        V RV4      w  rV	 EFL  p\        P                  P                  VR",          4      P                  R#4      '       d   \        RVR",           R24      h \        VR.,           4      R	,          w  r\#        T4      pTP%                  R^4      ^ ,          pRT9   g	   RT9   Ed@   TP&                  p\(        P*                  ! R4      w  pp\        P,                  ! T4        TP/                  4       '       g   TP1                  4       '       dw   \        P                  P                  T4      R
R" R,           pT.pT P3                  T4      '       d    TP5                  RTP6                   R24       \9        T TTTTRRTR7      pM;\        P                  P                  T4      R
R" R,           p\;        T TTTTT.R7      p\=        T4       \=        T4       T! YYTTTTR7      u # RT9   d)   TP>                  p\;        YTY4      pT! YYTTTR7      u # RT9   g	   RT9   Ed   TP@                  p\(        P*                  ! R4      w  pp\        P,                  ! T4       TR8X  d   RMRp TP/                  4       '       g   TP1                  4       '       d?   \        P                  P                  T4      R
R" R,           p\9        T TTTTRTT.R7      pM<\        P                  P                  T4      R
R" R,           p\;        T TTTTTT.R7      p\=        T4       \=        T4       T! YYTTTR7      u # \        R \!        T4      ,           4      h	  \C        Wy4       \        R!4      h  \         d"   pY\!        TR.,           4      &    R
p?EK  R
p?ii ; i  \=        T4       \=        X4       i ; i  \=        T4       \=        X4       i ; i)$r   )r!   r,   r!   r+  
x86_mscoffr,   zMeson does not support z as it is only a DMD frontend for another compiler.Please provide a valid value for DC or unset it so that Meson can resolve the compiler by itself.r   r  Nr  zLLVM D compilerzLLVM Open D compilerz.dobjz	-mtriple=z-windowsTF)r(  r)  r:  r  r:  )r  r   version_outputgdcr$  zThe D Language FoundationzDigital Marsr,  z-m64z-m32)r)  r:  r  r   r  )ldmdgdmd)"r   r!   r,   rZ   r   r{  r   r~   r   r   r   r   r   r   r
   r   r   r   r   LLVMDCompilerrW  mkstempcloser	   	is_cygwinr  appendcpur   r   r   GnuDCompilerDmdDCompilerr   )rK   rO   r!   r,   
c_compileris_msvcr   r   inforv   r   r  r   r   r   r   r  r  r  r  objfiler:  r   arch_args   &&                      rT   rb   rb     s    (:;JC!*A*ABG
Z(D45=<<$D&sC=I
 77GBK(334DEE&)'"+ 7t tu u	;- 78=FA !%yyq)!, #'='D//C
 ##D)DAqHHQK*??$$(8(8 gg..q1#26>G"#J))+66"))IdhhZx*HI-c.5.1<@DW\9C	EF !gg..q1#26<G-c.5sL+:;>F !# )+D)&"$ $ c\..C%cCNF+D)&: : )C/>S3H..C
 ##D)DAqHHQK "&!1vvH*??$$(8(8 gg..q1#26>G-c.5sL+?DRSU]Q^`F !gg..q1#26<G-c.5sL+:;XHF !# )+D)&: : ##7)G:L#LMM{ ~ '3
P
QQk  	CDYw+'>?@	N !# )H !# )sJ   O& P6PB1P(P0>P0A:P0&P1PPP-0Qc               $    V ^8  d   QhRRRRRR/# r  rR   )rS   s   "rT   rU   rU     s&     J J} J= JX JrV   c                   ^RI Hp V P                  VR4      pVf   \        R,          ^ ,          .p \	        VR.,           RR7      w  rEp\        T4      pRT9   dR   \        P                  ! R	R
7      ;_uu_ 4       pTp	\        T Y9YqTP                  RR.R7      p
RRR4       X	! Y7YX
R7      # \        R\        T4      ,           4      h  \
         d%    \        RP                  \        T4      4      4      hi ; i  + '       g   i     Lh; i)r   )SwiftCompilerr4   Nr  r  r   z$Could not execute Swift compiler: {}Swiftz.swiftr  z-oz	/dev/nullr?  r"  r  )r4   rS  r|   r   r   r   r   rS   r   r   rW  rX  r   rZ  )rK   rO   rS  r  r   r  r   r   r  r  r   s   &&         rT   re   re     s   $%%k7;GG$Q'(f%g&6<TU	c S!G#~((99QC%c&-G23&&$1LNF :
 kv? 	? 3i6HH
II  f"#I#P#PQZ[bQc#deef
 :9s   C	 <C;	/C8;D	c               $    V ^8  d   QhRRRRRR/# r  rR   )rS   s   "rT   rU   rU   +  s&     +R +Rm +R- +RH +RrV   c           	        ^RI HpHpHpHp \        V RVRR7      w  rg\        W4      p/ p	V EF  p
V
R.8X  d   \        4       '       d   \        P                  ! V
^ ,          4      '       gi   \        P                  P                  \        P                  R,          R4      p\        P                  ! V
^ ,          VR7      ;'       g
    V
^ ,          V
^ &    \        V
R.,           R	R
7      ^,          p\!        T4      pRT9   d6   TpT P#                  TP$                  Y4       T! . YYTP&                  4      u # RT9   d6   TpT P#                  TP$                  Y4       T! . YYTP&                  4      u # RT9   g   RT9   g   EKX  RT9   d7   TpT P#                  TP$                  TT4       T! . YYTP&                  4      u # TpT P#                  TP$                  TT4       T! . YYTP&                  4      u # 	  \)        W4       \+        R4      h  \         d(   pYRP                  T
R.,           4      &    Rp?EK  Rp?ii ; i)r   )NasmCompilerYasmCompilerMetrowerksAsmCompilerARM$MetrowerksAsmCompilerEmbeddedPowerPCrG   T)rz   ProgramFilesNASM)r   r   r  r   r  NrH   r   r   r   r   )asmrW  rX  rY  rZ  r   rZ   r	   rJ  rK  r   r   rI  rH  r   r   r   rV  r   r   r   r   )rK   rO   rW  rX  rY  rZ  rv   r  r7  r   rw   default_pathoutputr   r   r  comp_class_mwasmarmcomp_class_mwasmeppcs   &&                rT   rg   rg   +  s   oo "#v{PTULI 
3	,B/1F8
V\\$q'5J5J77<<

>(BFKLll47>II$q'DG	&t{m';AYZ[\]F
 !(V%Jj11:Kb$299MMv%Jj11:Kb$299MMV#{f'<&>#!!"5">">@SU`a*2tkPRPYPYZZ'K$!!"6"?"?AUWbc+B{QSQZQZ[[; > '3
P
QQ3  	?@SXXdk]&:;<	s   HIH==Ic               $    V ^8  d   QhRRRRRR/# r  rR   )rS   s   "rT   rU   rU   X  s&     &R &Rm &R- &RH &RrV   c                   \        W4      pV P                  V4      '       g   \        R V/4      pMV P                  V,          p^RIHpHp VP                  R8X  d	   R.pTpRpMdVP                  R8X  d	   R.pTpRpMKVP                  R8X  d	   R.pTpR	pM2VP                  R
8X  d	   R.pTpR	pM\        RVP                   R24      h/ p	 \        Wh.,           4      ^,          p
\        V
4      pV P                  VP                  Wq4       V! . WkWVP                  4      #   \         d%   pYRP                  Yh.,           4      &    Rp?MRp?ii ; i\!        Y.4       \        R4      h)r!   )MasmCompilerMasmARMCompilerr+  mlr   r,  ml64armarmasm-haarch64armasm64z	Platform z not supported by MASMr  Nr   )rZ   r  r   r~   r]  rd  re  
cpu_familyr   r
   r   rV  r   r   r   rI  r   )rK   rO   r7  rN  rd  re  rw   r  r   r   r_  r   r   s   &&           rT   rh   rh   X  sY   	3	,Bk**"C9-||K(2%v!
	H	$x!
	E	!z$
	I	%|$
"Yt.??U#VWW/15D5L)!, (*--zG"d[ryyII 534$,/05'0
P
QQs   AD! !E,EEc               $    V ^8  d   QhRRRRRR/# )rJ   rK   r   rO   r   rP   r   rR   )rS   s   "rT   rU   rU     s&     R R; R] Rx RrV   c                t   ^RI Hp R.pTpRp\        W4      p/ p \        W5.,           4      ^,          p\	        V4      p	V P                  VP                  WA4       V! . W9WVP                  4      #   \         d%   p
YRP                  Y5.,           4      &    Rp
?
MRp
?
ii ; i\        Ys.4       \        R4      h)r   )TILinearAsmCompilerr<  rj  r  Nr   )r]  rp  rZ   r
   r   rV  r   r   r   rI  r   r   )rK   rO   rp  rw   r  r   r7  r   r_  r   r   s   &&         rT   ri   ri     s    (8D&9J
C	3	,B/15D5L)!, (*--zG"d[ryyII 534$,/05'0
P
QQs   AA1 1B <BB c               $    V ^8  d   QhRRRRRR/# rJ   r   T.List[str]rM   rN   rP   T.Dict[str, str]rR   )rS   s   "rT   rU   rU     s"     3 3 33 3CS 3rV   c                  a  ^RI Hp R V 3R llp. ROp W!,          pV! RRV.V,           4      p/ pVP                  R4       Fh  pV'       g   K  VP                  R	^4      vrVR
8w  d   K)  \        V	4      ^8X  d   RWi^ ,          &   \        V	4      ^8X  g   KV  V	^,          Wi^ ,          &   Kj  	  V#   \        \        3 d&    \        P
                  ! RT R24       T! T4      p Li ; i)z+
Get the list of GCC pre-processor defines
)gnu_lang_mapc                    V ^8  d   QhRRRR/# rJ   argsrs  rP   rN   rR   )rS   s   "rT   rU   /_get_gnu_compiler_defines.<locals>.__annotate__        ; 3 rV   c                   < \         P                  ! R \        V 4       24       \        SV ,           R\        P
                  R7      w  rpVP                  ^ 8w  d   \        RV RV R24      hV# )Running command: r   writestdinz:Unable to get gcc pre-processor defines:
Compiler stdout:

-----
Compiler stderr:

-----
r   rL  r   r
   
subprocessPIPEr   r   ry  r   r_  errorr   s   &   rT   _try_obtain_compiler_defines?_get_gnu_compiler_defines.<locals>._try_obtain_compiler_defines  v    

&y&789%hoRzW5<<1& (<<B8 D<<A7)(M N N rV   z-cpp-xz'pre-processor extraction using -cpp -x  failed, falling back w/o langr  r  #definer   z-Ez-dMr   )
mixins.gnurv  r   KeyErrorr   rL  r   r  )
r   rM   rv  r  baseline_test_argsr_  r  liner,   rests
   f&        rT   rM  rM    s     )  ,B ! .vtT.BEW.WX !#GT"::c1%	>t9>!GGt9>#AwGG # N% !(+ B

<TFB`ab-.@ABs   B1 13C'&C'c               $    V ^8  d   QhRRRRRR/# rr  rR   )rS   s   "rT   rU   rU     s"     . .+ .S .EU .rV   c                  a  ^RI Hp R V 3R llp. ROp W!,          pV! RV.V,           4      p/ pVP                  R4       Fh  pV'       g   K  VP                  R^4      vrVR	8w  d   K)  \        V	4      ^8X  d   R
Wi^ ,          &   \        V	4      ^8X  g   KV  V	^,          Wi^ ,          &   Kj  	  V#   \        \        3 d&    \        P
                  ! RT R24       T! T4      p Li ; i)z-
Get the list of Clang pre-processor defines
)clang_lang_mapc                    V ^8  d   QhRRRR/# rx  rR   )rS   s   "rT   rU   1_get_clang_compiler_defines.<locals>.__annotate__  r{  rV   c                   < \         P                  ! R \        V 4       24       \        SV ,           R\        P
                  R7      w  rpVP                  ^ 8w  d   \        RV RV R24      hV# )r}  r   r~  z<Unable to get clang pre-processor defines:
Compiler stdout:
r  r  r  r  s   &   rT   r  A_get_clang_compiler_defines.<locals>._try_obtain_compiler_defines  r  rV   r  z"pre-processor extraction using -x r  r  r  r  r   r  )mixins.clangr  r   r  r   rL  r   r  )
r   rM   r  r  r  r_  r  r  r,   r  s
   f&        rT   rq  rq    s     -  ,B #
 .tTl=O.OP
 !#GT"::c1%	>t9>!GGt9>#AwGG # N !(+ B

7v=[\]-.@ABs   B0 03C&%C&c                    V ^8  d   QhRRRR/# rJ   r  rt  rP   rN   rR   )rS   s   "rT   rU   rU     s     + ++; + +rV   c                    R pV P                  RR4      pV P                  RR4      pV P                  RR4      pVP                  W#V34      # )r   __GNUC__0__GNUC_MINOR____GNUC_PATCHLEVEL__getrI  )r  dotmajorminorpatchs   &    rT   rQ  rQ    sM    
CKK
C(EKK(#.EKK-s3E88U5)**rV   c                    V ^8  d   QhRRRR/# r  rR   )rS   s   "rT   rU   rU     s     0 0+; 0 0rV   c                    R pV P                  RR4      pVR,          pVR,          pV P                  RR4      pVP                  W4V34      # )r   __LCC__100:Nr   N:r   NN__LCC_MINOR__r  r  )r  r  generation_and_major
generationr  r  s   &     rT   rN  rN    sP    
C";;y%8%b)J $EKK-E88Z.//rV   )rD  r   r7  r   r    r   pgcc)rD  r   c++r"   r#   r   )ifortifxgfortranr  r  	pgfortrang95)r    r   r   )r#   r   r"   )r7  r   r  r    )r  r"   zl++r#   )r7  r   r    nvcr  iccicx)r  r"   r#   znvc++zpgc++icpcicpx)r  r  r  	nvfortranr  r  r  r  )ldc2ldcrA  dmd)F)r   )R__conditional_annotations__
__future__r   mesonlibr   r   r   r   r   r	   r
   r   r   r   programsr   	envconfigr   r   r   r   r   r   r   r   r  platformr\  rJ  rW  r   typingr3  TYPE_CHECKINGrv   r   r]  r   r!   r   r$   r   r%   r   r2   r   r  r   r   environmentr   r   __annotations__r   lowerrk   rx   r   r   r   r  rZ   r[   r]   rd   r\   r^   r  r_   r`   rf   ra   rc   rb   re   rg   rh   ri   rM  rq  rQ  rN  )r  s   @rT   <module>r     s   # "   ' K K  8   	   	 ???#  ("=) &(
" ' << LHSMHHUO`HY3HV7HXU^HTN!U*5:#9'[KU#U+'/mHYU^HTN-9 8 9 J 9 	* !5M I  %w	 &0\	! ""*	 !)
	 #,+	 $.<	  F# J*	*	'kRdE@  JN E@N<>+zZxRtEG5RnJ,R2R6J$RBrRhJ0+RZ&RPR*3j.`+0rV   