
    <h1                        % S SK Jr   S SKrS SKrSSKJr  SSKJr  \R                  (       a  SSK
Jr  O\r/ / / / / / S.rS\S	'   / S
/S/S/S/S/S/S.rS\S'   / S/S.rS\S'    " S S\5      rg)    )annotationsN   )EnvironmentException)	OptionKey)Compiler)plaindebugdebugoptimizedreleaseminsizecustomzT.Mapping[str, T.List[str]]tasking_buildtype_args-O0z-O1z-O2z-O3z-Os)r   0g123stasking_optimization_argsz-g3)FTzT.Mapping[bool, T.List[str]]tasking_debug_argsc                      \ rS rSr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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rg)$TaskingCompiler.   z?
Functionality that is common to all TASKING family compilers.
z-Wlc                    U R                   (       d  [        [         S35      eS Vs1 s H  n[        U5      iM     snU l        / n/ UU/ -   U/ -   U/ -   S.U l        U R                  R                  S5        g s  snf )Nz! supports only cross-compilation.)b_ltob_staticpicb_ndebug)r   r   r   r   
everythingasm)is_crossr   idr   base_options	warn_argscan_compile_suffixesadd)selfodefault_warn_argss      ڄ/mnt/mint/home/seanl/mnt/public/Repos/ladybird/Build/vcpkg/downloads/tools/meson-1.9.0-d1fcc2/mesonbuild/compilers/mixins/tasking.py__init__TaskingCompiler.__init__5   s    }}&"-N'OPP#
#QIaL #
 !0025025(9B(>	@ 	!!%%e,
s   A9c                    S/$ )Nz--pic r'   s    r*   get_pic_argsTaskingCompiler.get_pic_argsJ   s
    y    c                    [         U   $ N)r   )r'   	buildtypes     r*   get_buildtype_args"TaskingCompiler.get_buildtype_argsM   s    %i00r2   c                    [         U   $ r4   )r   )r'   is_debugs     r*   get_debug_argsTaskingCompiler.get_debug_argsP   s    !(++r2   c                    S/$ )N-cr.   r/   s    r*   get_compile_only_args%TaskingCompiler.get_compile_only_argsS   	    vr2   c                    SU 3/$ )Nz--dep-file=r.   )r'   	outtargetoutfiles      r*   get_dependency_gen_args'TaskingCompiler.get_dependency_gen_argsV   s    gY'((r2   c                    g)Ndepr.   r/   s    r*   get_depfile_suffix"TaskingCompiler.get_depfile_suffixY   s    r2   c                    S/$ )Nz--no-stdincr.   r/   s    r*   get_no_stdinc_args"TaskingCompiler.get_no_stdinc_args\   s
    r2   c                    S/$ )Nz--warnings-as-errorsr.   r/   s    r*   get_werror_argsTaskingCompiler.get_werror_args_   s    &''r2   c                    S/$ )Nz--no-default-librariesr.   r/   s    r*   get_no_stdlib_link_args'TaskingCompiler.get_no_stdlib_link_argsb   s    ())r2   c                
    SU/$ )N-or.   )r'   
outputnames     r*   get_output_argsTaskingCompiler.get_output_argse   s    j!!r2   c                    US:X  a  SnSU-   /$ )N .-Ir.   )r'   path	is_systems      r*   get_include_args TaskingCompiler.get_include_argsh   s    2:Dt}r2   c                    [         U   $ r4   )r   )r'   optimization_levels     r*   get_optimization_args%TaskingCompiler.get_optimization_argsm   s    ();<<r2   c                    S/$ )Nr   r.   r/   s    r*   get_no_optimization_args(TaskingCompiler.get_no_optimization_argsp   s	    wr2   c                    / n/ nU H=  nUR                  S5      (       a  UR                  U5        M,  UR                  U5        M?     UR                  U5        USSUS/U-   4$ )Nz.milz
--mil-linkrT   r=   )endswithappend)r'   prelink_nameobj_listmil_link_listobj_file_listobjs         r*   get_prelink_args TaskingCompiler.get_prelink_argss   sj    C||F##$$S)$$S)	 
 	\*|T<FVVVr2   c                    g)NTr.   r/   s    r*   get_prelink_append_compile_args/TaskingCompiler.get_prelink_append_compile_args   s    r2   c           
         [        U5       H`  u  p4US S S:X  d  US S S:X  d  M  US S [        R                  R                  [        R                  R	                  X$SS  5      5      -   X'   Mb     U$ )N   r[   z-L)	enumerateosr\   normpathjoin)r'   parameter_list	build_diridxis        r*   &compute_parameters_with_absolute_paths6TaskingCompiler.compute_parameters_with_absolute_paths   sl    /FC!u}"1&'ebgg.>.>rww||IYZY[W\?].^&^# 0 r2   c                    S/$ )Nz-Er.   r/   s    r*   get_preprocess_only_args(TaskingCompiler.get_preprocess_only_args   r@   r2   )r#   r$   N)returnNone)r   T.List[str])r5   strr   r   )r9   boolr   r   )rB   r   rC   r   r   r   )r   r   )rU   r   r   r   )r\   r   r]   r   r   r   )ra   r   r   r   )rj   r   rk   r   r   z!T.Tuple[T.List[str], T.List[str]])r   r   )rz   r   r{   r   r   r   )__name__
__module____qualname____firstlineno____doc__LINKER_PREFIXr+   r0   r6   r:   r>   rD   rH   rK   rN   rQ   rV   r^   rb   re   ro   rr   r~   r   __static_attributes__r.   r2   r*   r   r   .   si     M-*1,)(*"
=
Wr2   r   )
__future__r   rw   typingTmesonlibr   optionsr   TYPE_CHECKINGcompilers.compilersr   objectr   __annotations__r   r   r   r.   r2   r*   <module>r      s    # M 	  ,  ??/ H 7 3  





: 6  '4 0 
\h \r2   