§
    ûµ”c’  ã                  óÂ   — d dl mZ 	 d dlZd dlZddlmZ ej        rddlm	Z	 ddl
mZ ddlmZ neZg g g g g g dœZg d	gd
gdgdgdgdgdœZg dgdœZ G d„ de¦  «        ZdS )é    )ÚannotationsNé   )ÚEnvironmentException)ÚMachineInfo)ÚEnvironment)ÚCompiler)ÚplainÚdebugÚdebugoptimizedÚreleaseÚminsizeÚcustomz-O0ú-Ooffz-O1z-O2z-O3z-O4)r	   Ú0ÚgÚ1Ú2Ú3Úsz-g)FTc                  óº   — e Zd ZdZd,d„Zd-d„Zd.d	„Zd/d
„Zd0d„Zd1d„Z	d-d„Z
d-d„Zd-d„Zd2d„Zd3d„Zd-d„Zd-d„Zd4d„Zd-d„Zd5d „Zed6d$„¦   «         Zd7d'„Zd8d*„Zd+S )9Ú
TICompilerÚtiÚreturnÚNonec                óÊ   — | j         st          d¦  «        ‚| j                             d¦  «         | j                             d¦  «         g }g ||g z   |g z   |g z   dœ| _        d S )Nz,TI compilers only support cross-compilation.ÚasmÚcla)r   r   r   r   Ú
everything)Úis_crossr   Úcan_compile_suffixesÚaddÚ	warn_args)ÚselfÚdefault_warn_argss     ú@/usr/lib/python3/dist-packages/mesonbuild/compilers/mixins/ti.pyÚ__init__zTICompiler.__init__?   s‚   € ØŒ}ð 	WÝ&Ð'UÑVÔVÐVàÔ!×%Ò% eÑ,Ô,Ð,ØÔ!×%Ò% eÑ,Ô,Ð,àÐØ!Ø0Ø0°2Ñ5Ø0°2Ñ5Ø(9¸BÑ(>ð	@ð @ˆŒˆˆó    úT.List[str]c                ó   — g S ©N© ©r#   s    r%   Úget_pic_argszTICompiler.get_pic_argsM   s	   € ð ˆ	r'   Ú	buildtypeÚstrc                ó   — t           |         S r*   )Úti_buildtype_args)r#   r.   s     r%   Úget_buildtype_argszTICompiler.get_buildtype_argsR   s   € Ý  Ô+Ð+r'   c                ó   — dS )NÚpchr+   r,   s    r%   Úget_pch_suffixzTICompiler.get_pch_suffixU   s   € Øˆur'   Úpch_dirÚheaderc                ó   — g S r*   r+   )r#   r6   r7   s      r%   Úget_pch_use_argszTICompiler.get_pch_use_argsX   ó   € Øˆ	r'   Úenvú'Environment'c                ó   — g S r*   r+   )r#   r;   s     r%   Úthread_flagszTICompiler.thread_flags[   r:   r'   c                ó   — g S r*   r+   r,   s    r%   Úget_coverage_argszTICompiler.get_coverage_args^   r:   r'   c                ó   — g S r*   r+   r,   s    r%   Úget_no_stdinc_argszTICompiler.get_no_stdinc_argsa   r:   r'   c                ó   — g S r*   r+   r,   s    r%   Úget_no_stdlib_link_argsz"TICompiler.get_no_stdlib_link_argsd   r:   r'   Úoptimization_levelc                ó   — t           |         S r*   )Úti_optimization_args)r#   rE   s     r%   Úget_optimization_argsz TICompiler.get_optimization_argsg   s   € Ý#Ð$6Ô7Ð7r'   Úis_debugÚboolc                ó   — t           |         S r*   )Úti_debug_args)r#   rI   s     r%   Úget_debug_argszTICompiler.get_debug_argsj   s   € Ý˜XÔ&Ð&r'   c                ó   — g S r*   r+   r,   s    r%   Úget_compile_only_argsz TICompiler.get_compile_only_argsm   r:   r'   c                ó   — dgS )Nr   r+   r,   s    r%   Úget_no_optimization_argsz#TICompiler.get_no_optimization_argsp   s
   € ØˆyÐr'   Útargetc                ó   — d|› �gS )Nz--output_file=r+   )r#   rR   s     r%   Úget_output_argszTICompiler.get_output_argss   s   € Ø) Ð)Ð)Ð*Ð*r'   c                ó   — dgS )Nz--emit_warnings_as_errorsr+   r,   s    r%   Úget_werror_argszTICompiler.get_werror_argsv   s   € Ø+Ð,Ð,r'   ÚpathÚ	is_systemc                ó   — |dk    rd}d|z   gS )NÚ ú.z-I=r+   )r#   rW   rX   s      r%   Úget_include_argszTICompiler.get_include_argsy   s   € Ø�2Š:ˆ:ØˆDØ˜‘ˆ~Ðr'   ÚargsÚinfor   c                óè   — g }|D ]l}|                      d¦  «        rd|dd …         z   }|                      d¦  «        rŒ:|dk    rŒA|                      d¦  «        rŒW|                     |¦  «         Œm|S )Nz-Dz	--define=é   z-Wl,-rpath=z--print-search-dirsz-L)Ú
startswithÚappend)Úclsr]   r^   ÚresultÚis        r%   Ú_unix_args_to_nativezTICompiler._unix_args_to_native~   s“   € àˆØð 		ð 		ˆAØ�|Š|˜DÑ!Ô!ð (Ø ! A B B¤%Ñ'�Ø�|Š|˜MÑ*Ô*ð ØØÐ+Ò+Ð+ØØ—’˜dÑ#Ô#ð ØØ�MŠM˜!ÑÔÐÐØˆr'   Úparameter_listÚ	build_dirc           
     ó´  — t          |¦  «        D ]Ç\  }}|d d…         dk    rS|d d…         t          j                             t          j                             ||dd …         ¦  «        ¦  «        z   ||<   |d d…         dk    rS|d d…         t          j                             t          j                             ||dd …         ¦  «        ¦  «        z   ||<   ŒÈ|S )Né   z--include_path=r`   z-I)Ú	enumerateÚosrW   ÚnormpathÚjoin)r#   rg   rh   Úidxre   s        r%   Ú&compute_parameters_with_absolute_pathsz1TICompiler.compute_parameters_with_absolute_paths�   sÓ   € Ý Ñ/Ô/ð 	_ð 	_‰FˆC�Ø��"�ŒvÐ*Ò*Ð*Ø&'¨¨¨¤f­r¬w×/?Ò/?ÅÄÇÂÈYÐXYÐZ\ÐZ]ÐZ]ÔX^Ñ@_Ô@_Ñ/`Ô/`Ñ&`�˜sÑ#Ø��!�Œu˜Š}ˆ}Ø&'¨¨¨¤e­b¬g×.>Ò.>½r¼w¿|º|ÈIÐWXÐYZÐY[ÐY[ÔW\Ñ?]Ô?]Ñ.^Ô.^Ñ&^�˜sÑ#øàÐr'   Ú	outtargetÚoutfilec                ó   — dd|› �gS )Nz--preproc_with_compilez--preproc_dependency=r+   )r#   rq   rr   s      r%   Úget_dependency_gen_argsz"TICompiler.get_dependency_gen_args–   s   € Ø(Ð*KÀ'Ð*KÐ*KÐLÐLr'   N)r   r   )r   r(   )r.   r/   r   r(   )r   r/   )r6   r/   r7   r/   r   r(   )r;   r<   r   r(   )rE   r/   r   r(   )rI   rJ   r   r(   )rR   r/   r   r(   )rW   r/   rX   rJ   r   r(   )r]   r(   r^   r   r   r(   )rg   r(   rh   r/   r   r(   )rq   r/   rr   r/   r   r(   )Ú__name__Ú
__module__Ú__qualname__Úidr&   r-   r2   r5   r9   r>   r@   rB   rD   rH   rM   rO   rQ   rT   rV   r\   Úclassmethodrf   rp   rt   r+   r'   r%   r   r   ;   s«  € € € € € à	€Bð@ð @ð @ð @ðð ð ð ð
,ð ,ð ,ð ,ðð ð ð ðð ð ð ðð ð ð ðð ð ð ðð ð ð ðð ð ð ð8ð 8ð 8ð 8ð'ð 'ð 'ð 'ðð ð ð ðð ð ð ð+ð +ð +ð +ð-ð -ð -ð -ðð ð ð ð
 ðð ð ñ „[ððð ð ð ðMð Mð Mð Mð Mð Mr'   r   )Ú
__future__r   rl   ÚtypingÚTÚmesonlibr   ÚTYPE_CHECKINGÚ	envconfigr   Úenvironmentr   Úcompilers.compilersr   Úobjectr1   rG   rL   r   r+   r'   r%   ú<module>rƒ      s<  ðð #Ð "Ð "Ð "Ð "Ð "à Hà 	€	€	€	Ø Ð Ð Ð à ,Ð ,Ð ,Ð ,Ð ,Ð ,à„?ð 	Ø(Ð(Ð(Ð(Ð(Ð(Ø*Ð*Ð*Ð*Ð*Ð*Ø/Ð/Ð/Ð/Ð/Ð/Ð/ð €Hð ØØØØØðð Ð ð Ø
ˆØ
ˆØ
ˆØ
ˆØ
ˆØ
ˆðð Ð ð Øˆ&ðð €ð\Mð \Mð \Mð \Mð \M�ñ \Mô \Mð \Mð \Mð \Mr'   