§
    ƒnóc[
  ã                  óÒ   — d dl mZ d dlZd dlZd dlZd dlZd dlZddlm	Z	 ddl
mZ ddlmZ dd„Zdd„Zdd„Zedk    r( ej         eej        dd…         ¦  «        ¦  «         dS dS )é    )ÚannotationsNé   )ÚCoreData)Ú	RegenInfo)Ú	OptionKeyÚ	regeninfor   Úregen_timestampÚfloatÚreturnÚboolc                ó  — | j         D ]I}t          j                             | j        |¦  «        }t          j        |¦  «        j        }||k    r dS ŒJt          d¦  «         ddlm	} | 
                    | j        ¦  «         dS )NTzDEverything is up-to-date, regeneration of build files is not needed.r   )ÚVs2010BackendF)ÚdepfilesÚosÚpathÚjoinÚ	build_dirÚstatÚst_mtimeÚprintÚbackend.vs2010backendr   Útouch_regen_timestamp)r   r	   ÚiÚcurfileÚcurtimer   s         úB/usr/lib/python3/dist-packages/mesonbuild/scripts/regen_checker.pyÚ
need_regenr      s”   € ØÔð ð ˆÝ”'—,’,˜yÔ2°AÑ6Ô6ˆÝ”'˜'Ñ"Ô"Ô+ˆØ�_Ò$Ð$Ø�4�4ð %õ
 
Ð
PÑQÔQÐQØ5Ð5Ð5Ð5Ð5Ð5Ø×'Ò'¨	Ô(;Ñ<Ô<Ð<Øˆ5ó    Úmeson_commandúT.List[str]ÚbackendÚstrÚNonec                ó\   — |dd| j         | j        d|z   gz   }t          j        |¦  «         d S )Nz
--internalÚ
regeneratez
--backend=)r   Ú
source_dirÚ
subprocessÚ
check_call)r   r   r!   Úcmds       r   Úregenr*   '   sC   € Ø
˜<Ø'Ø$Ô.Ø$Ô/Ø'¨'Ñ1ð	3ñ 3€Cõ
 Ô˜#ÑÔÐÐÐr   ÚargsÚintc                óÖ  — | d         }t           j                             |d¦  «        }t           j                             |d¦  «        }t          |d¦  «        5 }t	          j        |¦  «        }t          |t          ¦  «        sJ ‚	 d d d ¦  «         n# 1 swxY w Y   t          |d¦  «        5 }t	          j        |¦  «        }t          |t          ¦  «        sJ ‚	 d d d ¦  «         n# 1 swxY w Y   | 	                    t          d¦  «        ¦  «        }t          |t          ¦  «        sJ ‚t          j        |¦  «        j        }t          ||¦  «        rt          ||j        |¦  «         dS )Nr   zregeninfo.dumpzcoredata.datÚrbr!   )r   r   r   ÚopenÚpickleÚloadÚ
isinstancer   r   Ú
get_optionr   r"   r   r   r   r*   r   )	r+   Úprivate_dirÚdumpfileÚcoredata_fileÚfr   Úcoredatar!   r	   s	            r   Úrunr9   /   s¹  € Ø�q”'€KÝŒw�|Š|˜KÐ)9Ñ:Ô:€HÝ”G—L’L ¨nÑ=Ô=€MÝ	ˆh˜Ñ	Ô	ð 0 Ý”K ‘N”Nˆ	Ý˜)¥YÑ/Ô/Ð/Ð/Ð/Ð/ð0ð 0ð 0ñ 0ô 0ð 0ð 0ð 0ð 0ð 0ð 0øøøð 0ð 0ð 0ð 0õ 
ˆm˜TÑ	"Ô	"ð . aÝ”;˜q‘>”>ˆÝ˜(¥HÑ-Ô-Ð-Ð-Ð-Ð-ð.ð .ð .ñ .ô .ð .ð .ð .ð .ð .ð .øøøð .ð .ð .ð .ð ×!Ò!¥)¨IÑ"6Ô"6Ñ7Ô7€GÝ�g�sÑ#Ô#Ð#Ð#Ð#Ý”g˜hÑ'Ô'Ô0€OÝ�)˜_Ñ-Ô-ð :Ýˆi˜Ô/°Ñ9Ô9Ð9Øˆ1s$   Á,BÂBÂBÂ-,C&Ã&C*Ã-C*Ú__main__é   )r   r   r	   r
   r   r   )r   r   r   r    r!   r"   r   r#   )r+   r    r   r,   )Ú
__future__r   Úsysr   r0   r'   ÚtypingÚTr8   r   Úbackend.backendsr   Úmesonlibr   r   r*   r9   Ú__name__ÚexitÚargv© r   r   ú<module>rF      s  ðð #Ð "Ð "Ð "Ð "Ð "à €€€€€€€Ø Ð Ð Ð Ð Ð Ð Ð Ø Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø (Ð (Ð (Ð (Ð (Ð (Ø  Ð  Ð  Ð  Ð  Ð  ðð ð ð ðð ð ð ðð ð ð ð" ˆzÒÐØ€C„HˆSˆS�”˜!˜"˜"”ÑÔÑÔÐÐÐð Ðr   