§
    ƒnóc«9  ã                  ó  — 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Zddl	m
Z
 ddl	mZ ddl	mZ ddl	mZ ddl	mZ dd	l	mZ dd
lmZ ddlmZmZ ej        rd dlZdd„Zdd„Z G d„ dej        ¦  «        Z G d„ d¦  «        Zd„ ZdS )é    )ÚannotationsNé   )Úbuild)Úcoredata)Úenvironment)Úmesonlib)Úmintro)Úmlog)ÚAstIDGenerator)ÚMachineChoiceÚ	OptionKeyÚparserú'argparse.ArgumentParser'ÚreturnÚNonec                óÂ   — t          j        | ¦  «         |                      ddd¬¦  «         |                      dddd¬	¦  «         |                      d
ddd¬¦  «         d S )NÚbuilddirú?ú.)ÚnargsÚdefaultz--clearcacheÚ
store_trueFz,Clear cached state (e.g. found dependencies))Úactionr   Úhelpz
--no-pagerÚstore_falseÚpagerz!Do not redirect output to a pager)r   Údestr   )r   Úregister_builtin_argumentsÚadd_argument)r   s    ú2/usr/lib/python3/dist-packages/mesonbuild/mconf.pyÚadd_argumentsr!   #   sŒ   € ÝÔ'¨Ñ/Ô/Ð/Ø
×Ò˜
¨#°sÐÑ;Ô;Ð;Ø
×Ò˜¨|ÀUØKð ñ Mô Mð Mà
×Ò˜¨]ÀØ@ð ñ Bô Bð Bð Bð Bó    ÚvalúT.AnyúT.Union[str, T.List[T.Any]]c                ó  — t          | t          ¦  «        r!t          | ¦  «                             ¦   «         S t          | t          ¦  «        r%d                     d„ | D ¦   «         ¦  «        }d|› d�S | €dS t          | ¦  «        S )Nz, c              3  ó4   K  — | ]}t          |¦  «        V — Œd S ©N)Ú	stringify)Ú.0Úis     r    ú	<genexpr>zstringify.<locals>.<genexpr>/   s(   è è € Ð0Ð0 q•i ‘l”lÐ0Ð0Ð0Ð0Ð0Ð0r"   ú[ú]Ú )Ú
isinstanceÚboolÚstrÚlowerÚlistÚjoin)r#   Úss     r    r)   r)   +   s~   € Ý�#•tÑÔð Ý�3‰xŒx�~Š~ÑÔÐÝ	�C�Ñ	Ô	ð Ø�IŠIÐ0Ð0¨CÐ0Ñ0Ô0Ñ0Ô0ˆØ�1ˆxˆxˆxˆØ	ˆØˆrå�3‰xŒxˆr"   c                  ó   — e Zd ZdS )ÚConfExceptionN)Ú__name__Ú
__module__Ú__qualname__© r"   r    r8   r8   7   s   € € € € € Ø€Dr"   r8   c                  óf   — e Zd Zd„ Zd„ Zd„ Zd„ Zdd„Zdd„Zdd„Z	d„ Z
d„ Zd„ Zdd„Zdd„Zd„ ZdS )ÚConfc                ó:  — t           j                             t           j                             |¦  «        ¦  «        | _        dt           j                             | j        ¦  «        | j        fv r)t           j                             | j        ¦  «        | _        d | _        d| _        g | _	        g | _
        g | _        g | _        t          ¦   «         | _        t           j                             t           j                             | j        d¦  «        ¦  «        rht          j        | j        ¦  «        | _        | j        j                             ¦   «         | _        t+          j        | j        ¦  «        | _        d| _        d S t           j                             t           j                             | j        t$          j        ¦  «        ¦  «        r¿t3          j        ¦   «          t           j                             t           j                             | j        ¦  «        ¦  «        | _        t7          j        | j        ddt;          ¦   «         g¬¦  «        }|                     ¦   «          t3          j        ¦   «          |j        | _        d| _        d S tA          d	|› d
�¦  «        ‚)Nzmeson.buildé<   zmeson-privateFr/   Úninja)ÚvisitorsTz
Directory zC is neither a Meson build directory nor a project source directory.)!ÚosÚpathÚabspathÚrealpathÚ	build_dirÚbasenameÚdirnamer   Úmax_choices_line_lengthÚname_colÚ	value_colÚchoices_colÚ	descr_colÚsetÚall_subprojectsÚisdirr5   Úloadr   Úget_source_dirÚ
source_dirr   Údefault_values_onlyÚisfileÚbuild_filenamer
   Údisabler	   ÚIntrospectionInterpreterr   ÚanalyzeÚenabler8   )ÚselfrG   Úintrs      r    Ú__init__zConf.__init__<   sÛ  € ÝœŸš­¬×)9Ò)9¸)Ñ)DÔ)DÑEÔEˆŒØ�RœW×-Ò-¨d¬nÑ=Ô=¸t¼~ÐNÐNÐNÝœWŸ_š_¨T¬^Ñ<Ô<ˆDŒNØˆŒ
Ø')ˆÔ$ØˆŒØˆŒØˆÔØˆŒÝ+.©5¬5ˆÔåŒ7�=Š=�œŸš d¤n°oÑFÔFÑGÔGð 	}Ýœ D¤NÑ3Ô3ˆDŒJØ"œjÔ4×CÒCÑEÔEˆDŒOÝ$œM¨$¬.Ñ9Ô9ˆDŒMØ',ˆDÔ$Ð$Ð$ÝŒW�^Š^�BœGŸLšL¨¬½Ô9SÑTÔTÑUÔUð 	}åŒL‰NŒNˆNÝ œgŸošo­b¬g×.>Ò.>¸t¼~Ñ.NÔ.NÑOÔOˆDŒOÝÔ2°4´?ÀBÈÕ]kÑ]mÔ]mÐ\nÐoÑoÔoˆDØ�LŠL‰NŒNˆNåŒK‰MŒMˆMØ œMˆDŒMØ'+ˆDÔ$Ð$Ð$åÐ {¨YÐ {Ð {Ð {Ñ|Ô|Ð|r"   c                ó8   — | j                              ¦   «          d S r(   )r   Úclear_deps_cache©r\   s    r    Úclear_cachezConf.clear_cacheZ   s   € ØŒ×&Ò&Ñ(Ô(Ð(Ð(Ð(r"   c                ó:   — | j                              |¦  «         d S r(   )r   Úset_options)r\   Úoptionss     r    rd   zConf.set_options]   s   € ØŒ×!Ò! 'Ñ*Ô*Ð*Ð*Ð*r"   c                óV   — | j         rd S t          j        | j        | j        ¦  «         d S r(   )rU   r   ÚsaverG   ra   s    r    rg   z	Conf.save`   s.   € àÔ#ð 	ØˆFÝŒ�d”m T¤^Ñ4Ô4Ð4Ð4Ð4r"   r   r   c                óü  ‡‡— t          j        d¬¦  «        d         }t          |dz  d¦  «        }|d|z  z
  dz
  }||||dk    r|n|fŠt          | j        | j        | j        | j        ¦  «        D �]
}t          |¦  «        st          j
        d¦  «         Œ'|d         r2t          |dd	…         ¦  «        st          j
        |d         ¦  «         Œad
„ } ||d         ‰d         ¦  «        } ||d         ‰d         ¦  «        } ||d         ‰d         ¦  «        } ||d         ‰d         ¦  «        }	t          j        ||||	d¬¦  «        D ],Šˆˆfd„t          d¦  «        D ¦   «         }
t          j
        |
Ž  Œ-�Œd	S )aÚ  Do the actual printing.

        This prints the generated output in an aligned, pretty form. it aims
        for a total width of 160 characters, but will use whatever the tty
        reports it's value to be. Though this is much wider than the standard
        80 characters of terminals, and even than the newer 120, compressing
        it to those lengths makes the output hard to read.

        Each column will have a specific width, and will be line wrapped.
        )é    r   )Úfallbackr   é   é   é   r   r/   Nc                ó  ‡ ‡— t          ‰ t          j        ¦  «        r‰ j        n‰ }|                     d¦  «        rdnd}t          j        |‰|¬¦  «        }t          ‰ t          j        ¦  «        rˆ fd„|D ¦   «         }ˆfd„|D ¦   «         S )Nr-   ú r/   )Úsubsequent_indentc                óD   •— g | ]}t          j        |‰j        ¦  «        ‘ŒS r<   )r
   ÚAnsiDecoratorÚcode)r*   r+   Útexts     €r    ú
<listcomp>z9Conf.print_aligned.<locals>.wrap_text.<locals>.<listcomp>‰   s(   ø€ ÐQÐQÐQÀA�tÔ1°!°T´YÑ?Ô?ÐQÐQÐQr"   c                óZ   •— g | ]'}t          |¦  «        d ‰t          |¦  «        z
  z  z   ‘Œ(S ©ro   )r2   Úlen)r*   r+   Úwidths     €r    ru   z9Conf.print_aligned.<locals>.wrap_text.<locals>.<listcomp>Œ   s3   ø€ ÐIÐIÐI¸A�˜A™œ ¨µ°A±´©Ñ!7Ñ7ÐIÐIÐIr"   )r0   r
   rr   rt   Ú
startswithÚtextwrapÚwrap)rt   ry   ÚrawÚindentÚwrappeds   ``   r    Ú	wrap_textz%Conf.print_aligned.<locals>.wrap_text„   s�   øø€ Ý#-¨dµDÔ4FÑ#GÔ#GÐQ�d”i�iÈT�Ø #§¢¨sÑ 3Ô 3Ð;˜˜¸�Ý"œ-¨¨UÀfÐMÑMÔM�Ý˜d¥DÔ$6Ñ7Ô7ð RØQÐQÐQÐQÈÐQÑQÔQ�Gð JÐIÐIÐIÀÐIÑIÔIÐIr"   é   )Ú	fillvaluec                óF   •— g | ]}‰|         r‰|         n
d ‰|         z  ‘ŒS rw   r<   )r*   r+   Úfour_columnÚls     €€r    ru   z&Conf.print_aligned.<locals>.<listcomp>—   s3   ø€ ÐRÐRÐRÀA  1¤Ð?˜˜1œ˜¨3°¸Q´Ñ+?ÐRÐRÐRr"   é   )ÚshutilÚget_terminal_sizeÚmaxÚziprK   rL   rM   rN   Úanyr
   ÚlogÚ	itertoolsÚzip_longestÚrange)r\   Útotal_widthÚ_colÚlast_columnÚliner€   Únamer#   ÚchoiceÚdescÚitemsr„   r…   s              @@r    Úprint_alignedzConf.print_alignedi   s»  øø€ õ Ô.¸ÐAÑAÔAÀ!ÔDˆÝ�; !Ñ# RÑ(Ô(ˆØ! Q¨¡XÑ.°Ñ2ˆØ˜T 4¸Àaº¸¨¨ÈTÐRˆå˜œ t¤~°tÔ7GÈÌÑXÔXð 	!ñ 	!ˆDÝ�t‘9”9ð Ý”˜‘”�Øð �AŒwð �s 4¨¨¨¤8™}œ}ð Ý”˜˜aœÑ!Ô!Ð!ØðJð Jð Jð �9˜T !œW k°!¤nÑ5Ô5ˆDØ�)˜D œG [°¤^Ñ4Ô4ˆCØ�Y˜t Aœw¨°A¬Ñ7Ô7ˆFØ�9˜T !œW k°!¤nÑ5Ô5ˆDÝÔ*¨4°°f¸dÈbÐQÑQÔQð !ð !�ØRÐRÐRÐRÐRÍÈqÉÌÐRÑRÔR�Ý”˜%Ð Ð Ð ñ!ð;	!ð 	!r"   re   ú'coredata.KeyedOptionDictType'ú+T.Dict[str, 'coredata.KeyedOptionDictType']c                óÆ   — i }|                      ¦   «         D ]I\  }}|j        r| j                             |j        ¦  «         ||                     |j        i ¦  «        |<   ŒJ|S r(   )r—   Ú
subprojectrP   ÚaddÚ
setdefault)r\   re   ÚresultÚkÚos        r    Úsplit_options_per_subprojectz!Conf.split_options_per_subprojectš   si   € Ø>@ˆØ—M’M‘O”Oð 	7ð 	7‰DˆAˆqØŒ|ð 7ØÔ$×(Ò(¨¬Ñ6Ô6Ð6Ø56ˆF×Ò˜aœl¨BÑ/Ô/°Ñ2Ð2Øˆr"   c                óT  — t          |t          j        ¦  «        rd| j        z  |j        z   |_        nd| j        z  |z   }| j                             |¦  «         | j                             |¦  «         | j                             |¦  «         | j	                             |¦  «         d S )Nro   )
r0   r
   rr   Úprint_marginrt   rK   ÚappendrL   rM   rN   )r\   r”   ÚvalueÚchoicesÚdescrs        r    Ú	_add_linezConf._add_line¢   s    € Ý�d�DÔ.Ñ/Ô/ð 	2Ø˜dÔ/Ñ/°$´)Ñ;ˆDŒIˆIà˜Ô*Ñ*¨TÑ1ˆDØŒ×Ò˜TÑ"Ô"Ð"ØŒ×Ò˜eÑ$Ô$Ð$ØÔ×Ò Ñ(Ô(Ð(ØŒ×Ò˜eÑ$Ô$Ð$Ð$Ð$r"   c                óÞ   — t          |¦  «        }t          |¦  «        }|                      t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        |¦  «         d S r(   )r)   r©   r
   ÚgreenÚyellowÚblue)r\   r”   r¨   r¦   r§   s        r    Ú
add_optionzConf.add_option¬   sY   € Ý˜%Ñ Ô ˆÝ˜GÑ$Ô$ˆØ�Š•t”z $Ñ'Ô'­¬°UÑ);Ô);½T¼YÀwÑ=OÔ=OÐQVÑWÔWÐWÐWÐWr"   c           	     óÈ  — t          j        |¦  «        }t          j        d¦  «        }t          j        | j        rdnd¦  «        }t          j        d¦  «        }|                      dddd¦  «         |                      ||||¦  «         |                      dt	          |¦  «        z  dt	          |¦  «        z  dt	          |¦  «        z  dt	          |¦  «        z  ¦  «         d S )NÚDescriptionzDefault ValuezCurrent ValuezPossible Valuesr/   ú-)r
   ÚcyanrU   r©   rx   )r\   Útitler¨   r¦   r§   s        r    Ú	add_titlezConf.add_title±   sÉ   € Ý”	˜%Ñ Ô ˆÝ”	˜-Ñ(Ô(ˆÝ”	¨TÔ-EÐZ˜/˜/È?Ñ[Ô[ˆÝ”)Ð-Ñ.Ô.ˆØ�Š�r˜2˜r 2Ñ&Ô&Ð&Ø�Š�u˜e W¨eÑ4Ô4Ð4Ø�Š�s�S ™ZœZÑ'¨­s°5©z¬zÑ)9¸3ÅÀWÁÄÑ;MÈsÕUXÐY^ÑU_ÔU_ÑO_Ñ`Ô`Ð`Ð`Ð`r"   c                ó¬   — d| _         |                      dddd¦  «         |                      t          j        |dz   ¦  «        ddd¦  «         d| _         d S )Nr   r/   ú:r�   )r¤   r©   r
   Únormal_yellow)r\   Úsections     r    Úadd_sectionzConf.add_sectionº   sW   € ØˆÔØ�Š�r˜2˜r 2Ñ&Ô&Ð&Ø�Š•tÔ)¨'°C©-Ñ8Ô8¸"¸bÀ"ÑEÔEÐEØˆÔÐÐr"   r³   r2   c                ó\  — |sd S |r|                       |¦  «         t          j        d| j        j        t          d¦  «                 ¦  «        }t          |                     ¦   «         ¦  «        D ]¼\  }}|                     ¦   «         }| 	                    ¦   «         }|j
        r|j        r|| j        j        v rd}t          |t          j        ¦  «        r(|                     ¦   «         r|                     ¦   «         }|                      t!          |¦  «        |j        ||j        ¦  «         Œ½d S )Nzcoredata.UserFeatureOptionÚauto_featuresz<inherited from main project>)r´   ÚTÚcastr   re   r   Úsortedr—   Úprintable_valueÚas_rootÚyieldingrœ   r0   ÚUserFeatureOptionÚis_autor®   r2   Údescriptionr§   )r\   r³   re   Úautor    r¡   r¿   Úroots           r    Úprint_optionszConf.print_optionsÀ   s   € Øð 	ØˆFØð 	"Ø�NŠN˜5Ñ!Ô!Ð!ÝŒvÐ2°D´MÔ4IÍ)ÐTcÑJdÔJdÔ4eÑfÔfˆÝ˜7Ÿ=š=™?œ?Ñ+Ô+ð 	Rð 	R‰DˆAˆqØ×/Ò/Ñ1Ô1ˆOØ—9’9‘;”;ˆDØŒzð B˜aœlð B¨t°t´}Ô7LÐ/LÐ/LØ"A�Ý˜!�XÔ7Ñ8Ô8ð 9¸Q¿YºY¹[¼[ð 9Ø"&×"6Ò"6Ñ"8Ô"8�Ø�OŠO�C ™IœI q¤}°oÀqÄyÑQÔQÐQÐQð	Rð 	Rr"   r   r1   c                óÜ
  — |rt          j        ¦   «          d„ }| j        r |¦   «          t          j        d¦  «         t          j        d¦  «         t          j        d| j        ¦  «         | j        st          j        d| j        ¦  «         t          t          j        ¦  «        }t          d¦  «        t          d¦  «        h}i }i }i }t          j        t          ¦  «        }| j        j                             ¦   «         D ]e\  }	}
|	|v r|
||	<   Œ|	|v r|
||	<   Œ|	j        r,| j        r|	j        | j        j        vrŒ;|
||	j                 |	<   ŒL|	                     ¦   «         r|
||	<   Œf|                      d„ |                     ¦   «         D ¦   «         ¦  «        }|                      d	„ |                     ¦   «         D ¦   «         ¦  «        }|                      d
„ | j        j                             ¦   «         D ¦   «         ¦  «        }|                      d„ | j        j                             ¦   «         D ¦   «         ¦  «        }|                      d„ | j        j                             ¦   «         D ¦   «         ¦  «        }| j        p| j        j                             ¦   «         }|                      d¦  «         |                      d|d         ¦  «         |r|                      d|d         ¦  «         |                      dd„ | j        j                             ¦   «         D ¦   «         ¦  «         |                      dd„ | j        j                             ¦   «         D ¦   «         ¦  «         |                      d|                     di ¦  «        ¦  «         |r*|                      d|                     di ¦  «        ¦  «         |                     ¦   «         D ]\  }}|                      |› d�|¦  «         Œ|                      d|¦  «         |                      d|¦  «         |                      d|                     di ¦  «        ¦  «         t3          | j        ¦  «        D ]Å}|dk    rŒ	|                      d|z   ¦  «         ||v r|                      d||         ¦  «         ||v r|r|                      d||         ¦  «         ||v r|                      d||         ¦  «         ||v r|r|                      d||         ¦  «         ||v r|                      d||         ¦  «         ŒÆ|                      ¦   «          | j        rt          j        d¦  «          |¦   «          |                      ¦   «          d S )Nc                 óV   — t          j        d¦  «         t          j        d¦  «         d S )NzBThe source directory instead of the build directory was specified.zaOnly the default values for the project are printed, and all command line parameters are ignored.)r
   Úwarningr<   r"   r    Úprint_default_values_warningz5Conf.print_conf.<locals>.print_default_values_warningÓ   s*   € ÝŒLÐ]Ñ^Ô^Ð^ÝŒLÐ|Ñ}Ô}Ð}Ð}Ð}r"   r/   zCore properties:z  Source dirz  Build dir Ú	errorlogsÚstdsplitc                ó@   — i | ]\  }}|j         t          j        u ¯||“ŒS r<   )Úmachiner   ÚHOST©r*   r    Úvs      r    ú
<dictcomp>z#Conf.print_conf.<locals>.<dictcomp>ö   sU   € ð  ?Ið  ?Ið  ?IÉÈÈ1ÐhiÔhqõ  vCô  vHð  iHð  iH¸qÀ!ð  iHð  iHð  iHr"   c                ó@   — i | ]\  }}|j         t          j        u ¯||“ŒS r<   )rÏ   r   ÚBUILDrÑ   s      r    rÓ   z#Conf.print_conf.<locals>.<dictcomp>÷   sX   € ð  @Kð  @Kð  @KÉÈÈAÐijÔirõ  wDô  wJð  jJð  jJÀÀ1ð  jJð  jJð  jJr"   c                óh   — i | ]/\  }}|                      ¦   «         ¯|j        t          j        u ¯,||“Œ0S r<   )Úis_compilerrÏ   r   rÐ   rÑ   s      r    rÓ   z#Conf.print_conf.<locals>.<dictcomp>ø   s†   € ð  Cjð  Cjð  CjÉDÈAÈqÐuv÷  vCò  vCñ  vEô  vEð  Cjð  JKô  JSõ  Wdô  Wið  Jið  JiÀ1Àað  Jið  Jið  Jir"   c                óh   — i | ]/\  }}|                      ¦   «         ¯|j        t          j        u ¯,||“Œ0S r<   )r×   rÏ   r   rÕ   rÑ   s      r    rÓ   z#Conf.print_conf.<locals>.<dictcomp>ù   s‡   € ð  Dlð  Dlð  DlÉTÈQÐPQÐvw÷  wDò  wDñ  wFô  wFð  Dlð  KLô  KTõ  Xeô  Xkð  Kkð  KkÀAÀqð  Kkð  Kkð  Kkr"   c                óB   — i | ]\  }}|                      ¦   «         ¯||“ŒS r<   )Ú
is_projectrÑ   s      r    rÓ   z#Conf.print_conf.<locals>.<dictcomp>ú   s0   € Ð<~Ð<~Ð<~ÁdÀaÈÐop×o{Òo{Ño}Ôo}Ð<~¸QÀÐ<~Ð<~Ð<~r"   zMain project optionszCore optionszBackend optionsc                óB   — i | ]\  }}|                      ¦   «         ¯||“ŒS r<   )Ú
is_backendrÑ   s      r    rÓ   z#Conf.print_conf.<locals>.<dictcomp>  s0   € Ð.pÐ.pÐ.p¹¸¸1Ðab×amÒamÑaoÔaoÐ.p¨q°!Ð.pÐ.pÐ.pr"   zBase optionsc                óB   — i | ]\  }}|                      ¦   «         ¯||“ŒS r<   )Úis_baserÑ   s      r    rÓ   z#Conf.print_conf.<locals>.<dictcomp>  s0   € Ð+jÐ+jÐ+j±T°Q¸Ð^_×^gÒ^gÑ^iÔ^iÐ+j¨A¨qÐ+jÐ+jÐ+jr"   zCompiler optionsz module optionsÚDirectorieszTesting optionszProject optionszSubproject )r
   Ústart_pagerrU   rŒ   rT   rG   rO   r   ÚBUILTIN_DIR_OPTIONSr   ÚcollectionsÚdefaultdictÚdictre   r—   Úmoduler   ÚmodulesÚ
is_builtinr¢   r   Úis_cross_buildr¹   rÇ   Úgetr¾   rP   r˜   Ú"print_nondefault_buildtype_options)r\   r   rË   Údir_option_namesÚtest_option_namesÚdir_optionsÚtest_optionsÚcore_optionsÚmodule_optionsr    rÒ   Úhost_core_optionsÚbuild_core_optionsÚhost_compiler_optionsÚbuild_compiler_optionsÚproject_optionsÚshow_build_optionsÚmodÚmod_optionsrœ   s                       r    Ú
print_confzConf.print_confÏ   s1  € Øð 	ÝÔÑÔÐð	~ð 	~ð 	~ð Ô#ð 	Ø(Ð(Ñ*Ô*Ð*ÝŒH�R‰LŒLˆLåŒÐ#Ñ$Ô$Ð$ÝŒ� ¤Ñ1Ô1Ð1ØÔ'ð 	5ÝŒH�^ T¤^Ñ4Ô4Ð4å�xÔ;Ñ<Ô<ÐÝ& {Ñ3Ô3Ý& zÑ2Ô2ð4Ðð 79ˆØ79ˆØ79ˆÝFQÔF]Õ^bÑFcÔFcˆØ”MÔ)×/Ò/Ñ1Ô1ð 	$ð 	$‰DˆAˆqØÐ$Ð$Ð$Ø!"�˜A‘�ØÐ'Ð'Ð'Ø"#�˜Q‘�Ø”ð $ð ”:ð  !¤(°$´*Ô2DÐ"DÐ"DØØ./�˜qœxÔ(¨Ñ+Ð+Ø—’‘”ð $Ø"#�˜Q‘øà ×=Ò=ð  ?Ið  ?IÐP\×PbÒPbÑPdÔPdð  ?Iñ  ?Iô  ?Iñ  Jô  JÐØ!×>Ò>ð  @Kð  @KÐQ]×QcÒQcÑQeÔQeð  @Kñ  @Kô  @Kñ  Lô  LÐØ $× AÒ Að  Cjð  CjÐTXÔTaÔTi×ToÒToÑTqÔTqð  Cjñ  Cjô  Cjñ  !kô  !kÐØ!%×!BÒ!Bð  Dlð  DlÐUYÔUbÔUj×UpÒUpÑUrÔUrð  Dlñ  Dlô  Dlñ  "mô  "mÐØ×;Ò;Ð<~Ð<~ÈdÌmÔNc×NiÒNiÑNkÔNkÐ<~Ñ<~Ô<~ÑÔˆØ!Ô5Ð`¸¼Ô9O×9^Ò9^Ñ9`Ô9`Ðà×ÒÐ/Ñ0Ô0Ð0Ø×Ò˜>Ð+<¸RÔ+@ÑAÔAÐAØð 	;Ø×Ò˜rÐ#5°bÔ#9Ñ:Ô:Ð:Ø×ÒÐ,Ð.pÐ.pÀÄÔ@U×@[Ò@[Ñ@]Ô@]Ð.pÑ.pÔ.pÑqÔqÐqØ×Ò˜>Ð+jÐ+j¸T¼]Ô=R×=XÒ=XÑ=ZÔ=ZÐ+jÑ+jÔ+jÑkÔkÐkØ×ÒÐ-Ð/D×/HÒ/HÈÈRÑ/PÔ/PÑQÔQÐQØð 	GØ×Ò˜rÐ#9×#=Ò#=¸bÀ"Ñ#EÔ#EÑFÔFÐFØ .× 4Ò 4Ñ 6Ô 6ð 	Eð 	EÑˆC�Ø×Ò #Ð6Ð6Ð6¸ÑDÔDÐDÐDØ×Ò˜=¨+Ñ6Ô6Ð6Ø×ÒÐ,¨lÑ;Ô;Ð;Ø×ÒÐ,¨o×.AÒ.AÀ"ÀbÑ.IÔ.IÑJÔJÐJÝ  Ô!5Ñ6Ô6ð 	Sð 	SˆJØ˜RÒÐØØ×Ò˜]¨ZÑ7Ñ8Ô8Ð8ØÐ.Ð.Ð.Ø×"Ò" >Ð3DÀZÔ3PÑQÔQÐQØÐ/Ð/Ð/Ð4FÐ/Ø×"Ò" 2Ð'9¸*Ô'EÑFÔFÐFØÐ2Ð2Ð2Ø×"Ò"Ð#5Ð7LÈZÔ7XÑYÔYÐYØÐ3Ð3Ð3Ð8JÐ3Ø×"Ò" 2Ð'=¸jÔ'IÑJÔJÐJØ˜_Ð,Ð,Ø×"Ò"Ð#4°oÀjÔ6QÑRÔRÐRøØ×ÒÑÔÐð Ô#ð 	+ÝŒH�R‰LŒLˆLØ(Ð(Ñ*Ô*Ð*à×/Ò/Ñ1Ô1Ð1Ð1Ð1r"   c                óø   — | j                              ¦   «         }|sd S t          j        d¦  «         t          j        d¦  «         |D ]1}t          j        |d         d›|d         d›|d         d›�¦  «         Œ2d S )NzL
The following option(s) have a different value than the build type default
z                current   defaultr   Ú21r   Ú10r�   )r   Úget_nondefault_buildtype_argsr
   rŒ   )r\   ÚmismatchingÚms      r    rê   z'Conf.print_nondefault_buildtype_options"  s•   € Ø”m×AÒAÑCÔCˆØð 	ØˆFÝŒÐaÑbÔbÐbÝŒÐ3Ñ4Ô4Ð4Øð 	5ð 	5ˆAÝŒH˜˜!œÐ3Ð3  1¤Ð3Ð3¨!¨A¬$Ð3Ð3Ð3Ñ4Ô4Ð4Ð4ð	5ð 	5r"   N)r   r   )re   r™   r   rš   )r³   r2   re   r™   r   r   )r   r1   )r9   r:   r;   r^   rb   rd   rg   r˜   r¢   r©   r®   r´   r¹   rÇ   rù   rê   r<   r"   r    r>   r>   ;   s  € € € € € ð}ð }ð }ð<)ð )ð )ð+ð +ð +ð5ð 5ð 5ð/!ð /!ð /!ð /!ðbð ð ð ð%ð %ð %ð %ðXð Xð Xð
að að aðð ð ðRð Rð Rð RðQ2ð Q2ð Q2ð Q2ðf5ð 5ð 5ð 5ð 5r"   r>   c                ób  — t          j        | ¦  «         t          j                             t          j                             | j        ¦  «        ¦  «        }d }	 t          |¦  «        }|j        r| 	                    | j
        ¦  «         dS d}| j        r2|                     | j        ¦  «         t          j        || ¦  «         d}n8| j        r|                     ¦   «          d}n| 	                    | j
        ¦  «         |rW|                     ¦   «          t#          j        |j         |j        j        j        ¦  «         t#          j        |j        g ¦  «         nW# t.          $ r?}t1          j        d¦  «         |�"|j        �t#          j        |j        |g¦  «         |‚d }~wt4          $ r Y nw xY wdS )Nr   FTz(Meson configurator encountered an error:)r   Úparse_cmd_line_optionsrC   rD   rE   rF   r   r>   rU   rù   r   Úcmd_line_optionsrd   Úupdate_cmd_line_fileÚ
clearcacherb   rg   r	   Úupdate_build_optionsr   r   Úinfo_dirÚwrite_meson_info_filer8   r
   rŒ   ÚBrokenPipeError)re   r   Úcrg   Úes        r    Úrunr  +  s¢  € ÝÔ# GÑ,Ô,Ð,ÝŒw�Š�rœw×/Ò/°Ô0@ÑAÔAÑBÔB€HØ€AðÝ�‰NŒNˆØÔ ð 	Ø�LŠL˜œÑ'Ô'Ð'Ø�1àˆØÔ#ð 	(Ø�MŠM˜'Ô2Ñ3Ô3Ð3ÝÔ)¨(°GÑ<Ô<Ð<ØˆDˆDØÔð 	(Ø�MŠM‰OŒOˆOØˆDˆDà�LŠL˜œÑ'Ô'Ð'Øð 	6Ø�FŠF‰HŒHˆHÝÔ'¨¬
°A´GÔ4GÔ4PÑQÔQÐQÝÔ(¨¬°"Ñ5Ô5Ð5øøÝð ð ð ÝŒÐ;Ñ<Ô<Ð<Øˆ=˜QœWÐ0ÝÔ(¨¬°1°#Ñ6Ô6Ð6ØˆøøøøÝð ð ð àˆðøøøð ˆ1s%   Á0E ÂCE Å
F,Å":FÆF,Æ+F,)r   r   r   r   )r#   r$   r   r%   )Ú
__future__r   r�   r‡   rC   r{   Útypingr¼   râ   r/   r   r   r   r   r	   r
   Úastr   r   r   ÚTYPE_CHECKINGÚargparser!   r)   ÚMesonExceptionr8   r>   r  r<   r"   r    ú<module>r     s¤  ðð #Ð "Ð "Ð "Ð "Ð "à Ð Ð Ð Ø €€€Ø 	€	€	€	Ø €€€Ø Ð Ð Ð Ø Ð Ð Ð à Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø .Ð .Ð .Ð .Ð .Ð .Ð .Ð .à„?ð Ø€O€O€OðBð Bð Bð Bð	ð 	ð 	ð 	ð	ð 	ð 	ð 	ð 	�HÔ+ñ 	ô 	ð 	ðn5ð n5ð n5ð n5ð n5ñ n5ô n5ð n5ð` ð  ð  ð  ð  r"   