
    <h                        % S SK Jr   S SKrS SKrSSKJr  \R                  (       a  SSKJ	r	  SSK
Jr  SSKJr  O\rS/S/S	/S
/S/S
S/S.rS\S'   / S/S.rS\S'    " S S\5      rg)    )annotationsN   )EnvironmentException)MachineInfo)Environment)Compilerz-optimize=0z-optimize=1z-optimize=2z-optimize=maxz-size)0g123szT.Dict[str, T.List[str]]ccrx_optimization_argsz-debug)FTzT.Dict[bool, T.List[str]]ccrx_debug_argsc                      \ rS rSr\R
                  (       a  SrSrSS jrSS jr	SS jr
SS jrSS jrSS	 jrSS
 jrSS jrSS jrSS jr\SS j5       rSS jrSrg)CcrxCompiler'   Tccrxc                    U R                   (       d  [        S5      eU R                  R                  S5        / n/ UU/ -   U/ -   U/ -   S.U l        g )Nz%ccrx supports only cross-compilation.src)r	   r   r   r   
everything)is_crossr   can_compile_suffixesadd	warn_args)selfdefault_warn_argss     ځ/mnt/mint/home/seanl/mnt/public/Repos/ladybird/Build/vcpkg/downloads/tools/meson-1.9.0-d1fcc2/mesonbuild/compilers/mixins/ccrx.py__init__CcrxCompiler.__init__.   sV    }}&'NOO!!%%e,)+""R'"R'+b042    c                    / $ N r   s    r   get_pic_argsCcrxCompiler.get_pic_args;   s	     	r!   c                    g)Npchr$   r%   s    r   get_pch_suffixCcrxCompiler.get_pch_suffix@   s    r!   c                    / $ r#   r$   )r   pch_dirheaders      r   get_pch_use_argsCcrxCompiler.get_pch_use_argsC       	r!   c                    / $ r#   r$   )r   envs     r   thread_flagsCcrxCompiler.thread_flagsF   r1   r!   c                    / $ r#   r$   r%   s    r   get_coverage_argsCcrxCompiler.get_coverage_argsI   r1   r!   c                    / $ r#   r$   r%   s    r   get_no_stdinc_argsCcrxCompiler.get_no_stdinc_argsL   r1   r!   c                    / $ r#   r$   r%   s    r   get_no_stdlib_link_args$CcrxCompiler.get_no_stdlib_link_argsO   r1   r!   c                    [         U   $ r#   )r   )r   optimization_levels     r   get_optimization_args"CcrxCompiler.get_optimization_argsR   s    %&899r!   c                    [         U   $ r#   )r   )r   is_debugs     r   get_debug_argsCcrxCompiler.get_debug_argsU   s    x((r!   c                   / nU H  nUR                  S5      (       a  SUSS  -   nUR                  S5      (       a  SUSS  -   nUR                  S5      (       a  MW  US:X  a  M_  UR                  S5      (       a  Mw  UR                  S	5      (       d  UR                  S
5      (       a  S	U-   nUR                  U5        M     U$ )Nz-Dz-define=   z-I	-include=z-Wl,-rpath=z--print-search-dirsz-Lz-lib=)z.az.lib)
startswithendswithappend)clsargsinforesultis        r   _unix_args_to_native!CcrxCompiler._unix_args_to_nativeX   s     A||D!!12&||D!!!AB%'||M**++d##\\'**qzz./I/IaKMM!  r!   c           
         [        U5       HW  u  p4US S S:X  d  M  US S [        R                  R                  [        R                  R	                  X$SS  5      5      -   X'   MY     U$ )N	   rI   )	enumerateospathnormpathjoin)r   parameter_list	build_diridxrQ   s        r   &compute_parameters_with_absolute_paths3CcrxCompiler.compute_parameters_with_absolute_pathsk   sa    /FC!u#&'ebgg.>.>rww||IYZY[W\?].^&^# 0 r!   )r   N)returnNone)r`   T.List[str])r`   str)r-   rc   r.   rc   r`   rb   )r3   z'Environment'r`   rb   )r@   rc   r`   rb   )rD   boolr`   rb   )rN   rb   rO   r   r`   rb   )r[   rb   r\   rc   r`   rb   )__name__
__module____qualname____firstlineno__TTYPE_CHECKINGr   idr   r&   r*   r/   r4   r7   r:   r=   rA   rE   classmethodrR   r^   __static_attributes__r$   r!   r   r   r   '   s^    	B2
:)  $r!   r   )
__future__r   rW   typingri   mesonlibr   rj   	envconfigr   environmentr   compilers.compilersr   objectr   __annotations__r   r   r$   r!   r   <module>rv      s    # D 	  ,??(*/ H 



	
	!4 0  *.* I8 Ir!   