§
    ûµ”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mZ ddl	m
Z
 ddl	mZ ddlmZmZ dd	lmZ dd
lmZ ej        rddlmZmZ  ej        dd¬¦  «         G d„ de¦  «        ¦   «         Zej         G d„ d¦  «        ¦   «         Zej         G d„ d¦  «        ¦   «         Z G d„ de¦  «        Zdddddddddddd d!œZ G d"„ d#¦  «        Z G d$„ d%¦  «        Z i d& ed&d'gd(gg g ¬)¦  «        “d* ed*d+gd,gd-gg ¬)¦  «        “d. ed.d/gd0gg g ¬)¦  «        “d1 ed1d2gg g g ¬)¦  «        “d3 ed3d4gd5gd6gg ¬)¦  «        “d7 ed7d8gg g g ¬)¦  «        “d9 ed9d:gg g g ¬)¦  «        “d; ed;g g g g ¬)¦  «        “d< ed<d=gg g g ¬)¦  «        “d> ed>d=gg g g ¬)¦  «        “d? ed?d@gdAgg g ¬)¦  «        “dB edBg g g g ¬)¦  «        “dC edCdDgg g g ¬)¦  «        “dE edEg g g g ¬)¦  «        “dF edFdGgg dHgg ¬)¦  «        “dI edIdJgg dHgg ¬)¦  «        “dK edKg g g g ¬)¦  «        “i dL edLg g g g ¬)¦  «        “dM edMg g g g ¬)¦  «        “dN edNg g g g ¬)¦  «        “dO edOg g g g ¬)¦  «        “dP edPg g g g ¬)¦  «        “dQ edQg g g g ¬)¦  «        “dR edRdSgg g g ¬)¦  «        “dT edTdUgg g g ¬)¦  «        “dV edVg g g g ¬)¦  «        “dW edWdXgg g g ¬)¦  «        “dY edYg g g g ¬)¦  «        “dZ edZg g g g ¬)¦  «        “d[ ed[g g g g ¬)¦  «        “d\ ed\g g g g ¬)¦  «        “d] ed]g g g g ¬)¦  «        “d^ ed^g g g g ¬)¦  «        “d_ ed_g g g g ¬)¦  «        “¥ ed`g g g g ¬)¦  «         edadbgdcgg g ¬)¦  «         edddUgg g g ¬)¦  «         ededfdggdhdigg g ¬)¦  «         edjdkgdlgg g ¬)¦  «         edmdngg g g ¬)¦  «         edodUgg g g ¬)¦  «         edpg g g g ¬)¦  «         edqg g g g ¬)¦  «        drœ	¥Z!dS )sé    )ÚannotationsN©ÚPathé   )Úmlog)Úmesonlibé   )ÚDependencyExceptionÚSystemDependency)ÚPkgConfigDependency)Úthreads_factory)ÚEnvironmentÚ
PropertiesF)ÚeqÚorderc                  ó   — e Zd ZU ded<   dS )ÚUnknownFileExceptionr   ÚpathN)Ú__name__Ú
__module__Ú__qualname__Ú__annotations__© ó    ú?/usr/lib/python3/dist-packages/mesonbuild/dependencies/boost.pyr   r   W   s   € € € € € € à€J€J�J€J€Jr   r   c                  ó&   — e Zd Zdd„Zdd„Zdd„ZdS )ÚBoostIncludeDirr   r   Úversion_intÚintc                óè   — || _         || _        t          | j        dz  ¦  «        }t          | j        dz  dz  ¦  «        }t          | j        dz  ¦  «        }|› d|› d|› �| _        |› d|› �| _        d S )Ni † éd   iè  ú.Ú_)r   r   r   ÚversionÚversion_lib)Úselfr   r   ÚmajorÚminorÚpatchs         r   Ú__init__zBoostIncludeDir.__init__]   sŽ   € ØˆŒ	Ø&ˆÔÝ�DÔ$ vÑ-Ñ.Ô.ˆÝ�TÔ%¨Ñ+¨tÑ3Ñ4Ô4ˆÝ�DÔ$ sÑ*Ñ+Ô+ˆØÐ1Ð1 %Ð1Ð1¨%Ð1Ð1ˆŒØ#Ð-Ð- eÐ-Ð-ˆÔÐÐr   ÚreturnÚstrc                ó(   — d| j         › d| j        › d�S )Nz<BoostIncludeDir: z -- ú>)r$   r   ©r&   s    r   Ú__repr__zBoostIncludeDir.__repr__f   s   € ØB D¤LÐBÐB°d´iÐBÐBÐBÐBr   ÚotherÚobjectÚboolc                óv   — t          |t          ¦  «        r| j        | j        f|j        |j        fk     S t          S ©N)Ú
isinstancer   r   r   ÚNotImplemented©r&   r1   s     r   Ú__lt__zBoostIncludeDir.__lt__i   s:   € Ý�e�_Ñ-Ô-ð 	SØÔ$ d¤iÐ0°EÔ4EÀuÄzÐ3RÒRÐRÝÐr   N)r   r   r   r   ©r+   r,   ©r1   r2   r+   r3   )r   r   r   r*   r0   r9   r   r   r   r   r   [   sT   € € € € € ð.ð .ð .ð .ðCð Cð Cð Cðð ð ð ð ð r   r   c                  óþ   — e Zd ZddgZ ej        d¦  «        Z ej        d¦  «        Z ej        d¦  «        Zd$d„Z	d%d„Z
d&d„Zd&d„Zd'd„Zed%d„¦   «         Zd(d„Zd(d„Zd)d„Zd*d„Zd+d„Zd,d„Zd-d „Zd.d!„Zd.d"„Zd#S )/ÚBoostLibraryFileÚboost_pythonÚboost_numpyz(boost_[a-zA-Z]+)([0-9]*)z^s?g?y?d?p?n?$z	^[0-9_]+$r   r   c                óè  — || _         | j         j        | _        d| _        d| _        d| _        d| _        d| _        d| _        d| _        d| _	        d| _
        d| _        d| _        | j                             d¦  «        }|d         | _        |dd …         | _        d„ | j        D ¦   «         | _        d„ | j        D ¦   «         | _        d                     | j        ¦  «        | _        | j                             d	¦  «        | _        | j        d         | _        | j                             d
¦  «        r| j        dd …         | _        t-          | j        ¦  «        dk    r1d                     | j        d         | j        d         ¦  «        | _        | j        dv rd| _        n%| j        dv rd| _        nt1          | j         ¦  «        ‚| j                             d¦  «        r| j        d
k    rd| _        | j        dd …         }|                      ¦   «         r|                      |¦  «        }|sd S d| _        |D ]»}|dk    rd| _        Œt-          |¦  «        dk    r|dd …         dv r|| _        Œ7t6          j                             |¦  «        r7d|v | _        d|v | _        d|v | _	        d|v | _
        d|v | _        d|v | _        Œ�t6          j                             |¦  «        r|| _        Œ´|| _        Œ¼d S )NFÚ Tr"   r   r	   c                ó:   — g | ]}|                      ¦   «         ¯|‘ŒS r   ©Úisdigit©Ú.0Úxs     r   ú
<listcomp>z-BoostLibraryFile.__init__.<locals>.<listcomp>Ž   s%   € ÐAÐAÐA˜q°Q·Y²Y±[´[ÐA˜ÐAÐAÐAr   c                ó:   — g | ]}|                      ¦   «         °|‘ŒS r   rC   rE   s     r   rH   z-BoostLibraryFile.__init__.<locals>.<listcomp>�   s%   € ÐEÐEÐE˜q¸¿º¹¼ÐE˜ÐEÐEÐEr   ú-Úlibé   r   z{}_{}>   údll.aúdll.libÚsoÚdllÚdylib>   ÚarK   Úboost_Úmt>   Ú32Ú64ÚsÚgÚyÚdÚpÚn)r   ÚnameÚstaticÚtoolsetÚarchr%   rT   Úruntime_staticÚruntime_debugÚpython_debugÚdebugÚstlportÚdeprecated_iostreamsÚsplitÚbasenameÚsuffixesÚvers_rawÚjoinÚnvsuffixÚnametagsÚmod_nameÚ
startswithÚlenÚformatr   Úis_python_libÚfix_python_namer=   Úreg_abi_tagÚmatchÚreg_ver_tag)r&   r   Ú
name_partsÚtagsÚis        r   r*   zBoostLibraryFile.__init__x   s  € ØˆŒ	Ø”I”NˆŒ	ð ˆŒØˆŒØˆŒ	ØˆÔØˆŒà#ˆÔØ"ˆÔØ!ˆÔØˆŒ
ØˆŒØ$)ˆÔ!ð ”Y—_’_ SÑ)Ô)ˆ
Ø" 1œˆŒØ" 1 2 2œˆŒØAÐA D¤MÐAÑAÔAˆŒØEÐE D¤MÐEÑEÔEˆŒØŸš ¤Ñ/Ô/ˆŒØœ×+Ò+¨CÑ0Ô0ˆŒØœ aÔ(ˆŒØŒ=×#Ò# EÑ*Ô*ð 	.Ø œM¨!¨"¨"Ô-ˆDŒMõ ˆtŒ}ÑÔ Ò"Ð"Ø&Ÿ~š~¨d¬m¸AÔ.>ÀÄÈaÔ@PÑQÔQˆDÔð Œ=ÐFÐFÐFØˆDŒKˆKØŒ]˜lÐ*Ð*ØˆDŒKˆKå& t¤yÑ1Ô1Ð1ð Œ=×#Ò# HÑ-Ô-ð 	 °$´-À5Ò2HÐ2HØˆDŒKð Œ}˜Q˜R˜RÔ ˆà×ÒÑÔð 	.Ø×'Ò'¨Ñ-Ô-ˆDØð 	ØˆFð ˆŒØð 	!ð 	!ˆAØ�DŠyˆyØ�”�Ý�Q‘”˜1’�  1 2 2¤¨,Ð!6Ð!6Ø�”	�	Ý!Ô-×3Ò3°AÑ6Ô6ð 
!Ø&)¨Q h�Ô#Ø%(¨A X�Ô"Ø$'¨1 H�Ô!Ø  A˜X�”
Ø" a˜x�”Ø,/°1¨H�Ô)Ð)Ý!Ô-×3Ò3°AÑ6Ô6ð !Ø#$�Ô Ð à �”�ð	!ð 	!r   r+   r,   c                ó:   — d| j         › d| j        d›d| j        › d�S )Nz<LIB: ú z<32r.   )Úabitagrn   r   r/   s    r   r0   zBoostLibraryFile.__repr__Â   s,   € ØF˜œÐFÐF d¤mÐFÐFÐF¸$¼)ÐFÐFÐFÐFr   r1   r2   r3   c                ór  — t          |t          ¦  «        rœ| j        | j        | j        | j        | j         | j         | j         | j	        | j
        | j        | j        | j        f|j        |j        |j        |j        |j         |j         |j         |j	        |j
        |j        |j        |j        fk     S t          S r5   )r6   r=   rn   r^   r%   r`   rT   ra   rd   rb   rc   re   rf   r]   r7   r8   s     r   r9   zBoostLibraryFile.__lt__Å   sµ   € Ý�eÕ-Ñ.Ô.ð 	à”˜tœ{¨DÔ,<¸d¼iØ”G� Ô!4Ð4Ø”J� Ô 2°DÔ4EØ”˜dÔ7Ø”	ðð ” ¤¨eÔ.?ÀÄØ”H� %Ô"6Ð6Ø”K� Ô!4°eÔ6HØ”˜uÔ9Ø”
ðòð õ Ðr   c                óZ   — t          |t          ¦  «        r| j        |j        k    S t          S r5   )r6   r=   r]   r7   r8   s     r   Ú__eq__zBoostLibraryFile.__eq__Ö   s*   € Ý�eÕ-Ñ.Ô.ð 	+Ø”9 ¤
Ò*Ð*ÝÐr   r   c                ó*   — t          | j        ¦  «        S r5   )Úhashr]   r/   s    r   Ú__hash__zBoostLibraryFile.__hash__Û   s   € Ý�D”I‰ŒÐr   c                óN  — d}|| j         rdndz  }|| j        rdndz  }|dz  }|| j        rdndz  }|| j        rdndz  }|| j        rdndz  }|| j        rd	ndz  }|| j        rd
ndz  }|| j        rdndz  }|d| j        pdz   z  }|d| j	        pdz   z  }|d| j
        pdz   z  }|S )NrA   ÚSrJ   ÚMr{   rW   rX   rY   rZ   r[   r\   z???ú?Úx_xx)r^   rT   ra   rb   rc   rd   re   rf   r`   r_   r%   )r&   r|   s     r   r|   zBoostLibraryFile.abitagÞ   s  € àˆØ˜œÐ-�#�#¨#Ñ-ˆØ˜œÐ)�#�# cÑ)ˆØ�#‰ˆØ˜Ô,Ð5�#�#°#Ñ5ˆØ˜Ô+Ð4�#�#°Ñ4ˆØ˜Ô*Ð3�#�#°Ñ3ˆØ˜œÐ,�#�#¨Ñ,ˆØ˜œÐ.�#�#¨3Ñ.ˆØ˜Ô2Ð;�#�#¸Ñ;ˆØ�#˜œÐ+ eÑ,Ñ,ˆØ�#˜œÐ,¨Ñ-Ñ-ˆØ�#˜Ô)Ð3¨VÑ4Ñ4ˆØˆr   c                ó:   ‡ — t          ˆ fd„dD ¦   «         ¦  «        S )Nc              3  óL   •K  — | ]}‰j                              |¦  «        V — Œd S r5   ©r]   ro   ©rF   rG   r&   s     €r   ú	<genexpr>z,BoostLibraryFile.is_boost.<locals>.<genexpr>ð   s3   øè è € ÐLÐL¨q�4”9×'Ò'¨Ñ*Ô*ÐLÐLÐLÐLÐLÐLr   ©Ú	libboost_rS   ©Úanyr/   s   `r   Úis_boostzBoostLibraryFile.is_boostï   s'   ø€ ÝÐLÐLÐLÐLÐ4KÐLÑLÔLÑLÔLÐLr   c                óN   ‡ — t          ˆ fd„t          j        D ¦   «         ¦  «        S )Nc              3  óL   •K  — | ]}‰j                              |¦  «        V — Œd S r5   )rn   ro   r‹   s     €r   rŒ   z1BoostLibraryFile.is_python_lib.<locals>.<genexpr>ó   s3   øè è € Ð[Ð[°1�4”=×+Ò+¨AÑ.Ô.Ð[Ð[Ð[Ð[Ð[Ð[r   )r�   r=   Úboost_python_libsr/   s   `r   rr   zBoostLibraryFile.is_python_libò   s*   ø€ ÝÐ[Ð[Ð[Ð[Õ8HÔ8ZÐ[Ñ[Ô[Ñ[Ô[Ð[r   rx   úT.List[str]c                ó  ‡— g }t           j                             | j        ¦  «        }|                     d¦  «        }|                     d¦  «        Šdˆfd„}|D ]£}|                     d¦  «        r ||dd …         ¦  «         Œ+|                     ¦   «         r ||¦  «         ŒKt          |¦  «        d	k    r?|d
         j        r2|d                              ¦   «         r|d         dk    r ||¦  «         Œ�||gz  }Œ¤|‰z   | _        |S )Nr	   r   Únew_versr,   r+   ÚNonec                óÔ   •— |                       dd¦  «        } |                       dd¦  «        } |                      ¦   «         sd S t          | ¦  «        t          ‰¦  «        k    r| Šd S d S )Nr#   rA   r"   )ÚreplacerD   rp   )r—   Úcur_verss    €r   Úupdate_versz5BoostLibraryFile.fix_python_name.<locals>.update_vers  sn   ø€ à×'Ò'¨¨RÑ0Ô0ˆHØ×'Ò'¨¨RÑ0Ô0ˆHØ×#Ò#Ñ%Ô%ð Ø�Ý�8‰}Œ}�s 8™}œ}Ò,Ð,Ø#���ð -Ð,r   ÚpyrL   r   r"   )r—   r,   r+   r˜   )r=   Úreg_python_mod_splitru   rn   Úgroupro   rD   rp   )r&   rx   Ú
other_tagsÚm_curÚcur_namerœ   ry   r›   s          @r   rs   z BoostLibraryFile.fix_python_nameõ   s#  ø€ ð ˆ
õ !Ô5×;Ò;¸D¼MÑJÔJˆØ—;’;˜q‘>”>ˆØ—;’;˜q‘>”>ˆð	$ð 	$ð 	$ð 	$ð 	$ð 	$ð ð 	"ð 	"ˆAØ�|Š|˜DÑ!Ô!ð "Ø�˜A˜a˜b˜bœEÑ"Ô"Ð"Ð"Ø—’‘”ð "Ø�˜A‘”��Ý�Q‘”˜1’�  1¤¤�°!°A´$·,²,±.´.�ÀQÀqÄTÈSÂ[À[Ø�˜A‘”��à˜q˜cÑ!�
�
à  8Ñ+ˆŒØÐr   rn   c                ó¼  — | j         |k    rdS |                      ¦   «         sdS t          j                             | j         ¦  «        }t          j                             |¦  «        }|r|sdS |                     d¦  «        |                     d¦  «        k    rdS |                     d¦  «        }|                     d¦  «        }|sd}|                     |¦  «        S )NTFr	   r   Ú2)rn   rr   r=   rž   ru   rŸ   ro   )r&   rn   r¡   Úm_argr›   Úarg_verss         r   Úmod_name_matchesz!BoostLibraryFile.mod_name_matches  sÔ   € ØŒ=˜HÒ$Ð$Ø�4Ø×!Ò!Ñ#Ô#ð 	Ø�5å Ô5×;Ò;¸D¼MÑJÔJˆÝ Ô5×;Ò;¸HÑEÔEˆàð 	˜Eð 	Ø�5à�;Š;�q‰>Œ>˜UŸ[š[¨™^œ^Ò+Ð+Ø�5à—;’;˜q‘>”>ˆØ—;’;˜q‘>”>ˆð ð 	ØˆHà×"Ò" 8Ñ,Ô,Ð,r   r%   c                ó.   — | j         r|sdS | j         |k    S ©NT)r%   )r&   r%   s     r   Úversion_matchesz BoostLibraryFile.version_matches/  s'   € àÔð 	 {ð 	Ø�4ØÔ ;Ò.Ð.r   r`   c                ó.   — | j         r|sdS | j         |k    S r©   )r`   )r&   r`   s     r   Úarch_matcheszBoostLibraryFile.arch_matches5  s%   € àŒyð 	 ð 	Ø�4ØŒy˜DÒ Ð r   Úvscrtc                óú   — |sdS |dv r| j          o| j         S |dv r| j          o| j        S |dv r| j         s| j         o| j         S |dv r| j         s| j         o| j        S t          j        d|› d�d¬¦  «         dS )	NT>   ú-MDú/MD>   ú-MDdú/MDd>   ú-MTú/MT>   ú-MTdú/MTdzBoost: unknown vscrt tag zR. This may cause the compilation to fail. Please consider reporting this as a bug.)Úonce)ra   rb   r^   r   Úwarning)r&   r­   s     r   Úvscrt_matcheszBoostLibraryFile.vscrt_matches;  sâ   € àð 	Ø�4Ø�NÐ"Ð"ØÔ*Ð*ÐE°4Ô3EÐ/EÐEØÐ&Ð&Ð&ØÔ*Ð*ÐA¨tÔ/AÐAØ�nÐ$Ð$ØÔ'Ð:¨t¬{¨?ÐVÀDÔDVÐ@VÐVØÐ&Ð&Ð&ØÔ'Ð:¨t¬{¨?ÐRÀÔ@RÐRåŒð  K°ð  Kð  Kð  Kð  RVð  	Wñ  	Wô  	Wð  	WØˆtr   c                óº   — g }| j         t          v rJt          | j                  }| j        r||j        z  }n
||j        z  }| j        r||j        z  }n
||j        z  }|S r5   )rn   Úboost_librariesr^   ÚsharedrT   ÚmultiÚsingle)r&   ÚargsÚlibdefs      r   Úget_compiler_argsz"BoostLibraryFile.get_compiler_argsK  sm   € ØˆØŒ=�OÐ+Ð+Ý$ T¤]Ô3ˆFØŒ{ð &Ø˜œÑ%��à˜œÑ%�ØŒwð &Ø˜œÑ$��à˜œÑ%�Øˆr   c                ó6   — | j                              ¦   «         gS r5   ©r   Úas_posixr/   s    r   Úget_link_argszBoostLibraryFile.get_link_argsY  s   € Ø”	×"Ò"Ñ$Ô$Ð%Ð%r   N)r   r   r:   r;   )r+   r   )r+   r3   )rx   r•   r+   r•   )rn   r,   r+   r3   )r%   r,   r+   r3   )r`   r,   r+   r3   )r­   r,   r+   r3   ©r+   r•   )r   r   r   r”   ÚreÚcompilerž   rt   rv   r*   r0   r9   r   r‚   Úpropertyr|   r‘   rr   rs   r§   rª   r¬   r¹   rÁ   rÅ   r   r   r   r=   r=   n   s¡  € € € € € ð (¨Ð7ÐØ%˜2œ:Ð&BÑCÔCÐà�"”*Ð.Ñ/Ô/€KØ�"”*˜\Ñ*Ô*€KðH!ð H!ð H!ð H!ðTGð Gð Gð Gðð ð ð ð"ð ð ð ð
ð ð ð ð ðð ð ñ „Xðð Mð Mð Mð Mð\ð \ð \ð \ð ð  ð  ð  ðD-ð -ð -ð -ð0/ð /ð /ð /ð!ð !ð !ð !ðð ð ð ð ð ð ð ð&ð &ð &ð &ð &ð &r   r=   c                  óˆ   ‡ — e Zd Zd*ˆ fd„Zd+d„Zd,d„Zd-d„Zd.d„Zd/d„Zd0d„Z	d1d„Z
d2d!„Zd3d"„Zd4d#„Zd4d$„Zd5d'„Zd6d)„Zˆ xZS )7ÚBoostDependencyÚenvironmentr   ÚkwargsúT.Dict[str, T.Any]r+   r˜   c                ó  •‡ — t          ¦   «                              d||d¬¦  «         |j                             t	          j        d¦  «        ¦  «        }t          |t          ¦  «        sJ ‚|                     d¦  «        ‰ _	        | 
                    dd¦  «        dk    ‰ _        d ‰ _        d|v ‰ _        t	          j        |d	¦  «        ‰ _        ‰ j        D ]J}t          |t          ¦  «        st!          d
¦  «        ‚|                     d¦  «        rt!          d¦  «        ‚ŒKg ‰ _        g ‰ _        d‰ j        v r2‰                      t)          |‰ j        i ¦  «        ¦  «        s	d‰ _        d S |j        ‰ j                 j        ‰ _        t4           
                    ‰ j        d ¦  «        ‰ _        ‰ j        j        ‰ j                 }t;          ˆ fd„dD ¦   «         ¦  «        r‰                      |¦  «         d S ‰                      ¦   «          d S )NÚboostÚcpp)ÚlanguageÚ	buildtyperd   Ú	threadingr½   r^   Úmodulesz&Boost module argument is not a string.rS   z6Boost modules must be passed without the boost_ prefixÚthreadFc              3  óJ   •K  — | ]}|‰j         j        ‰j                 v V — Œd S r5   )ÚenvÚ
propertiesÚfor_machiner‹   s     €r   rŒ   z+BoostDependency.__init__.<locals>.<genexpr>~  sM   øè è € ð Gð G¸aˆq�D”HÔ'¨Ô(8Ô9Ð9ð Gð Gð Gð Gð Gð Gr   )Úboost_includedirÚboost_librarydirÚ
boost_root) Úsuperr*   ÚcoredataÚ
get_optionr   Ú	OptionKeyr6   r,   ro   rd   ÚgetÚmultithreadingrÝ   Úexplicit_staticÚextract_as_listrÕ   r
   Úmodules_foundÚmodules_missingÚ_add_sub_dependencyr   rÚ   Úis_foundÚmachinesÚ
cpu_familyr`   Úboost_arch_maprØ   rÙ   r�   Údetect_boost_machine_fileÚdetect_roots)r&   rÌ   rÍ   rÓ   ry   ÚpropsÚ	__class__s   `     €r   r*   zBoostDependency.__init__]  s   øø€ Ý‰Œ×Ò˜ +¨vÀÐÑFÔFÐFØÔ(×3Ò3µHÔ4FÀ{Ñ4SÔ4SÑTÔTˆ	Ý˜)¥SÑ)Ô)Ð)Ð)Ð)Ø×)Ò)¨'Ñ2Ô2ˆŒ
Ø$Ÿjšj¨°gÑ>Ô>À'ÒIˆÔàˆŒØ'¨6Ð1ˆÔõ  Ô/°¸	ÑBÔBˆŒØ”ð 	dð 	dˆAÝ˜a¥Ñ%Ô%ð TÝ)Ð*RÑSÔSÐSØ�|Š|˜HÑ%Ô%ð dÝ)Ð*bÑcÔcÐcðdð  ˆÔØ!ˆÔð �t”|Ð#Ð#Ø×+Ò+­O¸KÈÔIYÐ[]Ñ,^Ô,^Ñ_Ô_ð Ø %�”Ø�ð  Ô(¨Ô)9Ô:ÔEˆŒ	Ý"×&Ò& t¤y°$Ñ7Ô7ˆŒ	ð ”Ô# DÔ$4Ô5ˆÝð Gð Gð Gð GØEðGñ Gô Gñ Gô Gð 	à×*Ò*¨5Ñ1Ô1Ð1ØˆFð 	×ÒÑÔÐÐÐr   ÚrootsúT.List[Path]Ú
use_systemr3   c                óz  — t          t          j        |¦  «        ¦  «        }|D ]–}t          j        d|                     ¦   «         › �¦  «         |                      |¦  «        }t          |d¬¦  «        }|sŒT|                      ||¦  «        }|  	                    ||¦  «        | _
        | j
        r
|| _         d S Œ—d S )NzChecking potential boost root T)Úreverse)Úlistr   Ú
OrderedSetr   rd   rÄ   Údetect_inc_dirsÚsortedÚdetect_lib_dirsÚ	run_checkré   rÝ   )r&   rñ   ró   ÚjÚinc_dirsÚlib_dirss         r   Úcheck_and_set_rootsz#BoostDependency.check_and_set_roots†  sÍ   € Ý•XÔ(¨Ñ/Ô/Ñ0Ô0ˆØð 	ð 	ˆAåŒJÐF¸¿
º
¹¼ÐFÐFÑGÔGÐGØ×+Ò+¨AÑ.Ô.ˆHÝ˜h°Ð5Ñ5Ô5ˆHð ð Øà×+Ò+¨A¨zÑ:Ô:ˆHØ ŸNšN¨8°XÑ>Ô>ˆDŒMØŒ}ð Ø"#�”Ø��ðð	ð 	r   rï   ú'Properties'c                ó:  — |                      d¦  «        }|�t          |t          ¦  «        sJ ‚|                      d¦  «        }|�t          |t          ¦  «        sJ ‚|r¯|r­t          |¦  «        }t          |¦  «        }|                     ¦   «         r|                     ¦   «         st          d¦  «        ‚t          j        d¦  «         t          j        d|› �¦  «         t          j        d|› �¦  «         |                      ||¦  «        S |s|rt          d¦  «        ‚|                      d	¦  «        }|sJ ‚t          j
        |¦  «        }d
„ |D ¦   «         }|r(t          d„ |D ¦   «         ¦  «        rt          d¦  «        ‚|                      |d¬¦  «         dS )z�Detect boost with values in the machine file or environment.

        The machine file values are defaulted to the environment values.
        rÛ   NrÜ   zVPaths given for boost_includedir and boost_librarydir in machine file must be absolutezTrying to find boost with:z  - boost_includedir = z  - boost_librarydir = zdBoth boost_includedir *and* boost_librarydir have to be set in your machine file (one is not enough)rÝ   c                ó,   — g | ]}t          |¦  «        ‘ŒS r   r   rE   s     r   rH   z=BoostDependency.detect_boost_machine_file.<locals>.<listcomp>¸  s   € Ð,Ð,Ð,˜Q•�a‘”Ð,Ð,Ð,r   c              3  ó@   K  — | ]}|                      ¦   «          V — Œd S r5   )Úis_absoluterE   s     r   rŒ   z<BoostDependency.detect_boost_machine_file.<locals>.<genexpr>¹  s-   è è € Ð<Ð<°˜QŸ]š]™_œ_Ð,Ð<Ð<Ð<Ð<Ð<Ð<r   z6boost_root path given in machine file must be absoluteF©ró   )râ   r6   r,   r   r  r
   r   rd   Údetect_split_rootr   Ústringlistifyr�   rÿ   )	r&   rï   ÚincdirÚlibdirÚinc_dirÚlib_dirÚrootdirÚ	raw_pathsÚpathss	            r   rí   z)BoostDependency.detect_boost_machine_file˜  sÙ  € ð —’Ð-Ñ.Ô.ˆØˆ~¥¨FµCÑ!8Ô!8ˆ~ˆ~ˆ~Ø—’Ð-Ñ.Ô.ˆØˆ~¥¨FµCÑ!8Ô!8ˆ~ˆ~ˆ~àð 	N�fð 	NÝ˜6‘l”lˆGÝ˜6‘l”lˆGà×&Ò&Ñ(Ô(ð D°×0CÒ0CÑ0EÔ0Eð DÝ)ð  +Cñ  Dô  Dð  DåŒJÐ3Ñ4Ô4Ð4ÝŒJÐ:°Ð:Ð:Ñ;Ô;Ð;ÝŒJÐ:°Ð:Ð:Ñ;Ô;Ð;à×)Ò)¨'°7Ñ;Ô;Ð;àð 	N�vð 	NÝ%ð  'Mñ  Nô  Nð  Nà—)’)˜LÑ)Ô)ˆàˆˆˆåÔ*¨7Ñ3Ô3ˆ	Ø,Ð, )Ð,Ñ,Ô,ˆØð 	`•SÐ<Ð<°eÐ<Ñ<Ô<Ñ<Ô<ð 	`Ý%Ð&^Ñ_Ô_Ð_à× Ò  °5Ð Ñ9Ô9Ð9Ð9Ð9r   rý   úT.List[BoostIncludeDir]rþ   c                ó¼  — t          j        d                     d„ |D ¦   «         ¦  «        ¦  «         t          j        d                     d„ |D ¦   «         ¦  «        ¦  «         g }|D ]2}|                      |¦  «        }|rt          j        d|› �¦  «          nŒ3t	          t          |¦  «        ¦  «        }d„ | j        D ¦   «         }|D �]}t          j        d|j        › d|j        › �¦  «         |  	                    ||j
        ¦  «        }t          j        d	¦  «         |D ]}t          j        d
|› �¦  «         Œg }	g }
|D ]0}d}|D ]!}|                     |¦  «        r
|
|gz  }
d} nŒ"|s|	|gz  }	Œ1t          j        d¦  «         g }g }|
D ]|}|                     ¦   «         }|                     ¦   «         }t          j        d                     |j        t          |¦  «        t          |¦  «        ¦  «        ¦  «         ||z  }||z  }Œ}t!          t#          j        |¦  «        ¦  «        }t!          t#          j        |¦  «        ¦  «        }d„ |
D ¦   «         | _        d„ | j        D ¦   «         | _        t	          t          | j        ¦  «        ¦  «        | _        |	| _        d„ | j        D ¦   «         | _        t	          t          | j        ¦  «        ¦  «        | _        |	sÍ|j        | _        d|j                             ¦   «         z   g| _        | xj        |z  c_        | xj        |                      ¦   «         z  c_        t!          t#          j        | j        ¦  «        ¦  «        | _        || _        t          j        d| j        › �¦  «         t          j        d| j        › �¦  «          dS t          j        d¦  «         |	D ]}t          j        d
|› �¦  «         Œ�ŒdS )Nz  - potential library dirs: {}c                ó6   — g | ]}|                      ¦   «         ‘ŒS r   )rÄ   rE   s     r   rH   z-BoostDependency.run_check.<locals>.<listcomp>¿  s    € Ð;[Ð;[Ð;[ÈQ¸A¿JºJ¹L¼LÐ;[Ð;[Ð;[r   z  - potential include dirs: {}c                ó@   — g | ]}|j                              ¦   «         ‘ŒS r   rÃ   rE   s     r   rH   z-BoostDependency.run_check.<locals>.<listcomp>À  s%   € Ð;`Ð;`Ð;`ÐRS¸A¼F¿OºOÑ<MÔ<MÐ;`Ð;`Ð;`r   z  - found boost library dir: c                ó   — g | ]}d |z   ‘ŒS )rS   r   rE   s     r   rH   z-BoostDependency.run_check.<locals>.<listcomp>Î  s   € Ð6Ð6Ð6 A�8˜a‘<Ð6Ð6Ð6r   z  - found boost z include dir: z  - filtered library list:z    - FTz
  - found:z    - {:<24} link={} comp={}c                ó   — g | ]	}|j         ‘Œ
S r   )rn   rE   s     r   rH   z-BoostDependency.run_check.<locals>.<listcomp>ò  s   € Ð!GÐ!GÐ!G° !¤*Ð!GÐ!GÐ!Gr   c                ó"   — g | ]}|d d…         ‘ŒS ©é   Nr   rE   s     r   rH   z-BoostDependency.run_check.<locals>.<listcomp>ó  s    € Ð!DÐ!DÐ!D¨A ! A B B¤%Ð!DÐ!DÐ!Dr   c                ó"   — g | ]}|d d…         ‘ŒS r  r   rE   s     r   rH   z-BoostDependency.run_check.<locals>.<listcomp>ö  s    € Ð#HÐ#HÐ#H¨a A a b b¤EÐ#HÐ#HÐ#Hr   z-Iz  - final compile args: z  - final link args:    z  - NOT found:)r   rd   rq   Údetect_librariesrù   ÚsetrÕ   r$   r   Úfilter_librariesr%   r§   rÁ   rÅ   rn   r,   rö   r   r÷   ræ   rç   rÄ   Úcompile_argsÚ_extra_compile_argsÚ	link_args)r&   rý   rþ   Úlibsry   rÕ   ÚincÚf_libsrü   Ú	not_foundÚselected_modulesÚmodÚfoundÚlÚ	comp_argsr  Úc_argsÚl_argss                     r   rû   zBoostDependency.run_check¾  s:  € ÝŒ
Ð3×:Ò:Ð;[Ð;[ÐRZÐ;[Ñ;[Ô;[Ñ\Ô\Ñ]Ô]Ð]ÝŒ
Ð3×:Ò:Ð;`Ð;`ÐW_Ð;`Ñ;`Ô;`ÑaÔaÑbÔbÐbð ˆØð 	ð 	ˆAØ×(Ò(¨Ñ+Ô+ˆDØð Ý”
Ð>¸1Ð>Ð>Ñ?Ô?Ð?ð �ðõ •c˜$‘i”iÑ Ô ˆà6Ð6¨¬Ð6Ñ6Ô6ˆØð 9	+ñ 9	+ˆCÝŒJÐO¨#¬+ÐOÐOÀSÄXÐOÐOÑPÔPÐPØ×*Ò*¨4°´ÑAÔAˆFåŒJÐ3Ñ4Ô4Ð4Øð )ð )�Ý”
˜< A˜<˜<Ñ(Ô(Ð(Ð(ð ˆIØ!ÐØð 'ð '�Ø�Øð ð �AØ×)Ò)¨#Ñ.Ô.ð Ø(¨Q¨CÑ/Ð(Ø $˜Ø˜ðð ð 'Ø # Ñ&�Iøõ ŒJ�|Ñ$Ô$Ð$ØˆIØˆIØ%ð $ð $�Ø×,Ò,Ñ.Ô.�ØŸšÑ*Ô*�Ý”
Ð9×@Ò@ÀÄÍSÐQWÉ[Ì[ÕZ]Ð^dÑZeÔZeÑfÔfÑgÔgÐgØ˜VÑ#�	Ø˜VÑ#�	�	å�XÔ0°Ñ;Ô;Ñ<Ô<ˆIÝ�XÔ0°Ñ;Ô;Ñ<Ô<ˆIà!GÐ!GÐ6FÐ!GÑ!GÔ!GˆDÔØ!DÐ!D°Ô1CÐ!DÑ!DÔ!DˆDÔÝ!'­¨DÔ,>Ñ(?Ô(?Ñ!@Ô!@ˆDÔØ#,ˆDÔ Ø#HÐ#H°4Ô3GÐ#HÑ#HÔ#HˆDÔ Ý#)­#¨dÔ.BÑ*CÔ*CÑ#DÔ#DˆDÔ ð ð 	Ø"œ{�”Ø%)¨C¬H×,=Ò,=Ñ,?Ô,?Ñ%?Ð$@�Ô!ØÐ!Ô! YÑ.Ð!Ô!ØÐ!Ô! T×%=Ò%=Ñ%?Ô%?Ñ?Ð!Ô!Ý$(­Ô)<¸TÔ=NÑ)OÔ)OÑ$PÔ$P�Ô!Ø!*�”Ý”
ÐI°dÔ6GÐIÐIÑJÔJÐJÝ”
ÐF°d´nÐFÐFÑGÔGÐGØ�t�tõ ŒJÐ'Ñ(Ô(Ð(Ø ð +ð +�Ý”
˜> C˜>˜>Ñ*Ô*Ð*Ð*ñ+ð ˆur   Úrootr   c                ó`  ‡ — g }|dz  }||dz  gz  }||dz  gz  }|                      ¦   «         rO|                     ¦   «         D ]:}|                      ¦   «         r|j                             d¦  «        sŒ1||dz  gz  }Œ;d„ |D ¦   «         }d„ |D ¦   «         }d„ |D ¦   «         }ˆ fd„|D ¦   «         S )NÚincluderÐ   zboost-c                ó:   — g | ]}|                      ¦   «         ¯|‘ŒS r   ©Úis_dirrE   s     r   rH   z3BoostDependency.detect_inc_dirs.<locals>.<listcomp>  ó%   € Ð:Ð:Ð:˜A¨q¯xªx©z¬zÐ:�aÐ:Ð:Ð:r   c                ó   — g | ]}|d z  ‘ŒS )úversion.hppr   rE   s     r   rH   z3BoostDependency.detect_inc_dirs.<locals>.<listcomp>  s   € Ð<Ð<Ð<¨A�a˜-Ñ'Ð<Ð<Ð<r   c                ó:   — g | ]}|                      ¦   «         ¯|‘ŒS r   )ÚexistsrE   s     r   rH   z3BoostDependency.detect_inc_dirs.<locals>.<listcomp>  r0  r   c                ó:   •— g | ]}‰                      |¦  «        ‘ŒS r   )Ú _include_dir_from_version_headerr‹   s     €r   rH   z3BoostDependency.detect_inc_dirs.<locals>.<listcomp>  s'   ø€ ÐMÐMÐM¸Q�×5Ò5°aÑ8Ô8ÐMÐMÐMr   )r/  Úiterdirr]   ro   )r&   r*  Ú
candidatesÚinc_rootry   s   `    r   rø   zBoostDependency.detect_inc_dirs  sñ   ø€ Øˆ
Ø˜)Ñ#ˆà�t˜g‘~Ð&Ñ&ˆ
Ø�x 'Ñ)Ð*Ñ*ˆ
Ø�?Š?ÑÔð 	,Ø×%Ò%Ñ'Ô'ð ,ð ,�Ø—x’x‘z”zð ¨¬×):Ò):¸8Ñ)DÔ)Dð ØØ˜q 7™{˜mÑ+�
�
Ø:Ð: Ð:Ñ:Ô:ˆ
Ø<Ð<°Ð<Ñ<Ô<ˆ
Ø:Ð: Ð:Ñ:Ô:ˆ
ØMÐMÐMÐMÀ*ÐMÑMÔMÐMr   c                ó  ‡‡‡— |rj| j                              | j        ¦  «        }d„ |D ¦   «         }d„ |D ¦   «         }ˆfd„|D ¦   «         }t          t	          j        |¦  «        ¦  «        }|r|S g }g }‰                     ¦   «         D ]6}|                     ¦   «         r |j         	                    d¦  «        r||gz  }Œ7|D ]M}|                     ¦   «         D ]6}|                     ¦   «         r |j         
                    d¦  «        r||gz  }Œ7ŒN| j        s||z   S ddgŠdgŠ||z   }	ˆˆfd	„|	D ¦   «         }
g }d| j        v rˆfd
„|	D ¦   «         }nd| j        v rˆfd„|	D ¦   «         }t          |¦  «        t          |
¦  «        z   S )Nc                ó,   — g | ]}t          |¦  «        ‘ŒS r   r   rE   s     r   rH   z3BoostDependency.detect_lib_dirs.<locals>.<listcomp>"  s   € Ð:Ð:Ð: q�4 ™7œ7Ð:Ð:Ð:r   c                ó^   — g | ]*}|                      ¦   «         ¯|                     ¦   «         ‘Œ+S r   )r4  ÚresolverE   s     r   rH   z3BoostDependency.detect_lib_dirs.<locals>.<listcomp>#  s-   € ÐJÐJÐJ¨1¸q¿xºx¹z¼zÐJ˜1Ÿ9š9™;œ;ÐJÐJÐJr   c                ó>   •— g | ]}t          j        |‰¦  «        ¯|‘ŒS r   )r   Úpath_is_in_root)rF   rG   r*  s     €r   rH   z3BoostDependency.detect_lib_dirs.<locals>.<listcomp>$  s,   ø€ ÐWÐWÐW µXÔ5MÈaÐQUÑ5VÔ5VÐW˜1ÐWÐWÐWr   rK   z
-linux-gnurU   Úi386rV   c                óR   •‡— g | ]"Št          ˆfd „‰‰z   D ¦   «         ¦  «        ° ‰‘Œ#S )c              3  ó*   •K  — | ]}|‰j         v V — Œd S r5   ©r]   ©rF   rY   rG   s     €r   rŒ   z=BoostDependency.detect_lib_dirs.<locals>.<listcomp>.<genexpr>A  s)   øè è € Ð1cÐ1cÀ!°!°q´v°+Ð1cÐ1cÐ1cÐ1cÐ1cÐ1cr   r�   )rF   rG   Úarch_list_32Úarch_list_64s    @€€r   rH   z3BoostDependency.detect_lib_dirs.<locals>.<listcomp>A  sB   øø€ ÐdÐdÐd˜­cÐ1cÐ1cÐ1cÐ1cÀ|ÐVbÑGbÐ1cÑ1cÔ1cÑ.cÔ.cÐd�1ÐdÐdÐdr   c                óL   •‡— g | ]Št          ˆfd „‰D ¦   «         ¦  «        ¯‰‘Œ S )c              3  ó*   •K  — | ]}|‰j         v V — Œd S r5   rC  rD  s     €r   rŒ   z=BoostDependency.detect_lib_dirs.<locals>.<listcomp>.<genexpr>E  ó)   øè è € Ð7ZÐ7ZÈ¸¸Q¼V¸Ð7ZÐ7ZÐ7ZÐ7ZÐ7ZÐ7Zr   r�   )rF   rG   rE  s    @€r   rH   z3BoostDependency.detect_lib_dirs.<locals>.<listcomp>E  ó<   øø€ Ð[Ð[Ð[ 1µCÐ7ZÐ7ZÐ7ZÐ7ZÈ\Ð7ZÑ7ZÔ7ZÑ4ZÔ4ZÐ[˜QÐ[Ð[Ð[r   c                óL   •‡— g | ]Št          ˆfd „‰D ¦   «         ¦  «        ¯‰‘Œ S )c              3  ó*   •K  — | ]}|‰j         v V — Œd S r5   rC  rD  s     €r   rŒ   z=BoostDependency.detect_lib_dirs.<locals>.<listcomp>.<genexpr>G  rI  r   r�   )rF   rG   rF  s    @€r   rH   z3BoostDependency.detect_lib_dirs.<locals>.<listcomp>G  rJ  r   )Úclib_compilerÚget_library_dirsrØ   rö   r   r÷   r7  r/  r]   ro   Úendswithr`   rù   )r&   r*  ró   Úsystem_dirs_tÚsystem_dirsÚdirsÚsubdirsry   rü   Úraw_listÚno_archÚmatching_archrE  rF  s    `          @@r   rú   zBoostDependency.detect_lib_dirs  s÷  øøø€ ð ð 	#Ø Ô.×?Ò?ÀÄÑIÔIˆMØ:Ð:¨MÐ:Ñ:Ô:ˆKØJÐJ°ÐJÑJÔJˆKØWÐWÐWÐW kÐWÑWÔWˆKÝ�xÔ2°;Ñ?Ô?Ñ@Ô@ˆKàð #Ø"Ð"ð ˆØˆØ—’‘”ð 	ð 	ˆAØ�xŠx‰zŒzð ˜aœf×/Ò/°Ñ6Ô6ð Ø˜˜‘�øð ð 	#ð 	#ˆAØ—Y’Y‘[”[ð #ð #�Ø—8’8‘:”:ð # !¤&§/¢/°,Ñ"?Ô"?ð #Ø ˜s‘N�Gøð#ð Œyð 	"Ø˜'‘>Ð!à˜f�~ˆØ�vˆà˜'‘>ˆØdÐdÐdÐdÐd˜hÐdÑdÔdˆàˆØ�4”9ÐÐØ[Ð[Ð[Ð[¨Ð[Ñ[Ô[ˆMˆMØ�T”YÐÐØ[Ð[Ð[Ð[¨Ð[Ñ[Ô[ˆMå�mÑ$Ô$¥v¨g¡¤Ñ6Ð6r   r  úT.List[BoostLibraryFile]Úlib_versr,   c                óR  ‡ ‡‡‡— dŠ	 ‰ j         j        j        t          j        d¦  «                 j        }‰ j         j        j        t          j        d¦  «                 j        }‰ j                             ||¦  «        d         Šn# t          t          t          f$ r Y nw xY wˆ fd„|D ¦   «         }ˆ fd„|D ¦   «         }ˆfd„|D ¦   «         }ˆ fd„|D ¦   «         }ˆfd	„|D ¦   «         }d
„ |D ¦   «         }‰ j        sd„ |D ¦   «         }|sg S |d         j        Šˆfd„|D ¦   «         }|S )NrA   Úb_vscrtrÓ   r   c                óB   •— g | ]}|j         ‰j         k    s‰j        °|‘ŒS r   )r^   rä   r‹   s     €r   rH   z4BoostDependency.filter_libraries.<locals>.<listcomp>[  s/   ø€ ÐWÐWÐW�a 1¤8¨t¬{Ò#:Ð#:À$ÔBVÐ#:�Ð#:Ð#:Ð#:r   c                ó4   •— g | ]}|j         ‰j        k    ¯|‘ŒS r   )rT   rã   r‹   s     €r   rH   z4BoostDependency.filter_libraries.<locals>.<listcomp>\  s(   ø€ Ð?Ð?Ð?�a 1¤4¨4Ô+>Ò#>Ð#>�Ð#>Ð#>Ð#>r   c                ó>   •— g | ]}|                      ‰¦  «        ¯|‘ŒS r   )rª   )rF   rG   rX  s     €r   rH   z4BoostDependency.filter_libraries.<locals>.<listcomp>]  s,   ø€ Ð?Ð?Ð?�a 1×#4Ò#4°XÑ#>Ô#>Ð?�Ð?Ð?Ð?r   c                óH   •— g | ]}|                      ‰j        ¦  «        ¯|‘ŒS r   )r¬   r`   r‹   s     €r   rH   z4BoostDependency.filter_libraries.<locals>.<listcomp>^  s,   ø€ Ð=Ð=Ð=�a 1§>¢>°$´)Ñ#<Ô#<Ð=�Ð=Ð=Ð=r   c                ó>   •— g | ]}|                      ‰¦  «        ¯|‘ŒS r   )r¹   )rF   rG   r­   s     €r   rH   z4BoostDependency.filter_libraries.<locals>.<listcomp>_  s*   ø€ Ð:Ð:Ð:�a 1§?¢?°5Ñ#9Ô#9Ð:�Ð:Ð:Ð:r   c                ó(   — g | ]}|j         d k    ¯|‘ŒS )rP   )rl   rE   s     r   rH   z4BoostDependency.filter_libraries.<locals>.<listcomp>`  s$   € Ð7Ð7Ð7�a 1¤:°Ò#6Ð#6�Ð#6Ð#6Ð#6r   c                ó    — g | ]}|j         °	|‘ŒS r   )rd   rE   s     r   rH   z4BoostDependency.filter_libraries.<locals>.<listcomp>e  s   € Ð3Ð3Ð3˜!¨1¬7Ð3�AÐ3Ð3Ð3r   c                ó*   •— g | ]}|j         ‰k    ¯|‘ŒS r   )r|   )rF   rG   r|   s     €r   rH   z4BoostDependency.filter_libraries.<locals>.<listcomp>l  s%   ø€ Ð6Ð6Ð6�a 1¤8¨vÒ#5Ð#5�Ð#5Ð#5Ð#5r   )rØ   rß   Úoptionsr   rá   ÚvaluerM  Úget_crt_compile_argsÚKeyErrorÚ
IndexErrorÚAttributeErrorrd   r|   )r&   r  rX  Úcrt_valrÓ   r|   r­   s   ` `  @@r   r  z BoostDependency.filter_librariesK  s�  øøøø€ àˆð	Ø”hÔ'Ô/µÔ0BÀ9Ñ0MÔ0MÔNÔTˆGØœÔ)Ô1µ(Ô2DÀ[Ñ2QÔ2QÔRÔXˆIØÔ&×;Ò;¸GÀYÑOÔOÐPQÔRˆEˆEøÝ�*¥nÐ5ð 	ð 	ð 	ØˆDð	øøøð XÐWÐWÐW˜4ÐWÑWÔWˆØ?Ð?Ð?Ð?˜4Ð?Ñ?Ô?ˆØ?Ð?Ð?Ð?˜4Ð?Ñ?Ô?ˆØ=Ð=Ð=Ð=˜4Ð=Ñ=Ô=ˆØ:Ð:Ð:Ð:˜4Ð:Ñ:Ô:ˆØ7Ð7˜4Ð7Ñ7Ô7ˆð Œzð 	4Ø3Ð3˜tÐ3Ñ3Ô3ˆDð ð 	ØˆIØ�a””ˆØ6Ð6Ð6Ð6˜4Ð6Ñ6Ô6ˆàˆs   ˆA=B ÂB ÂB r	  c                óø  ‡— t          ¦   «         }|                     ¦   «         D ]ËŠ‰                     ¦   «         sŒt          ˆfd„dD ¦   «         ¦  «        sŒ3‰j                             d¦  «        rŒN	 |                     t          ‰                     ¦   «         ¦  «        ¦  «         Œ„# t          $ r;}t          j        d                     |j        j        ¦  «        ¦  «         Y d }~ŒÄd }~ww xY wd„ |D ¦   «         S )Nc              3  óL   •K  — | ]}‰j                              |¦  «        V — Œd S r5   rŠ   )rF   rG   ry   s     €r   rŒ   z3BoostDependency.detect_libraries.<locals>.<genexpr>u  s3   øè è € ÐMÐM°�q”v×(Ò(¨Ñ+Ô+ÐMÐMÐMÐMÐMÐMr   r�   z.pdbz3Boost: ignoring unknown file {} under lib directoryc                ó:   — g | ]}|                      ¦   «         ¯|‘ŒS r   )r‘   rE   s     r   rH   z4BoostDependency.detect_libraries.<locals>.<listcomp>�  s%   € Ð0Ð0Ð0�a 1§:¢:¡<¤<Ð0�Ð0Ð0Ð0r   )r  r7  Úis_filer�   r]   rO  Úaddr=   r=  r   r   r¸   rq   r   )r&   r	  r  Úery   s       @r   r  z BoostDependency.detect_librariesp  s  ø€ Ý‰uŒuˆØ—’Ñ!Ô!ð 	hð 	hˆAØ—9’9‘;”;ð ØÝÐMÐMÐMÐMÐ5LÐMÑMÔMÑMÔMð Øð Œv�Š˜vÑ&Ô&ð ØðhØ—’Õ)¨!¯)ª)©+¬+Ñ6Ô6Ñ7Ô7Ð7Ð7øÝ'ð hð hð hÝ”ÐR×YÒYÐZ[ÔZ`ÔZeÑfÔfÑgÔgÐgÐgÐgÐgÐgÐgøøøøðhøøøð 1Ð0˜4Ð0Ñ0Ô0Ð0s   Á34B(Â(
C-Â21C(Ã(C-r
  r  c                óÐ   — d }|dz  |dz  dz  fD ]-}|                      ¦   «         r|                      |¦  «        } nŒ.|s	d| _        d S |                      |g|g¦  «        | _        d S )Nr2  rÐ   F)rm  r6  ré   rû   )r&   r
  r  Úboost_inc_dirrü   s        r   r  z!BoostDependency.detect_split_rootƒ  sŠ   € ØˆØ˜MÑ)¨7°WÑ+<¸}Ñ+LÐMð 	ð 	ˆAØ�yŠy‰{Œ{ð Ø $× EÒ EÀaÑ HÔ H�Ø�ðð ð 	Ø!ˆDŒMØˆFàŸš¨ ¸¸	ÑBÔBˆŒˆˆr   c                ó  — g }	 t          d| j        ddi¦  «        }|                     ¦   «         r,|                     dg d ¦  «        }|r|t	          |¦  «        gz  }n# t
          $ r Y nw xY wd„ | j                             ¦   «         D ¦   «         }d„ |D ¦   «         }d„ |D ¦   «         }||z  }| j        j        | j	                  
                    ¦   «         r³t	          d¦  «        }|                     ¦   «         r||gz  }t	          d	¦  «        }t	          d
¦  «        }g }|                     ¦   «         r|g |                     ¦   «         ¢z  }|                     ¦   «         r|g |                     ¦   «         ¢z  }|d„ |D ¦   «         z  }nkg }	|	t	          d¦  «        gz  }	|	t	          d¦  «        gz  }	|	t	          d¦  «        gz  }	|	t	          d¦  «        gz  }	d„ |	D ¦   «         }	d„ |	D ¦   «         }	||	z  }|                      |d¬¦  «         d S )NrÐ   ÚrequiredFÚprefixc                ó,   — g | ]}t          |¦  «        ‘ŒS r   r   rE   s     r   rH   z0BoostDependency.detect_roots.<locals>.<listcomp>ž  s   € ÐTÐTÐT •T˜!‘W”WÐTÐTÐTr   c                óD   — g | ]}|                      ¦   «         ¯|j        ‘ŒS r   )r4  ÚparentrE   s     r   rH   z0BoostDependency.detect_roots.<locals>.<listcomp>Ÿ  s'   € Ð?Ð?Ð? !°A·H²H±J´JÐ?�Q”XÐ?Ð?Ð?r   c                ó6   — g | ]}|                      ¦   «         ‘ŒS r   ©r=  rE   s     r   rH   z0BoostDependency.detect_roots.<locals>.<listcomp>   s    € Ð4Ð4Ð4 Q�Q—Y’Y‘[”[Ð4Ð4Ð4r   zC:/BoostzC:/Program Files/boostzC:/localc                ó’   — g | ]D}|j                              ¦   «                              d ¦  «        ¯.|                     ¦   «         ¯B|‘ŒES )rÐ   )r]   Úlowerro   r/  rE   s     r   rH   z0BoostDependency.detect_roots.<locals>.<listcomp>µ  sG   € ÐaÐaÐa˜A¨q¬v¯|ª|©~¬~×/HÒ/HÈÑ/QÔ/QÐaÐVW×V^ÒV^ÑV`ÔV`Ða�aÐaÐaÐar   z
/opt/localz/usr/local/opt/boostz
/usr/localz/usrc                ó:   — g | ]}|                      ¦   «         ¯|‘ŒS r   r.  rE   s     r   rH   z0BoostDependency.detect_roots.<locals>.<listcomp>À  s%   € Ð0Ð0Ð0˜ Q§X¢X¡Z¤ZÐ0�1Ð0Ð0Ð0r   c                ó6   — g | ]}|                      ¦   «         ‘ŒS r   ry  rE   s     r   rH   z0BoostDependency.detect_roots.<locals>.<listcomp>Á  s    € Ð,Ð,Ð, 1�1—9’9‘;”;Ð,Ð,Ð,r   Tr  )r   rØ   r%  Úget_pkgconfig_variabler   r
   rM  Úget_default_include_dirsrê   rÚ   Ú
is_windowsr/  r7  rÿ   )
r&   rñ   Úboost_pcrÝ   Ú	inc_pathsÚc_rootÚ
prog_filesÚlocal_boostr8  Útmps
             r   rî   zBoostDependency.detect_roots�  sr  € Øˆð	Ý*¨7°D´H¸zÈ5Ð>QÑRÔRˆHØ�~Š~ÑÔð 0Ø%×<Ò<¸XÀrÈ4ÑPÔP�
Øð 0Ø�d :Ñ.Ô.Ð/Ñ/�EøøÝ"ð 	ð 	ð 	ØˆDð	øøøð UÐT dÔ&8×&QÒ&QÑ&SÔ&SÐTÑTÔTˆ	Ø?Ð? yÐ?Ñ?Ô?ˆ	Ø4Ð4¨)Ð4Ñ4Ô4ˆ	Ø�Ñˆð Œ8Ô˜TÔ-Ô.×9Ò9Ñ;Ô;ð 	å˜*Ñ%Ô%ˆFØ�}Š}‰Œð "Ø˜&˜Ñ!�õ Ð6Ñ7Ô7ˆJå˜zÑ*Ô*ˆKàˆJØ× Ò Ñ"Ô"ð 6ØÐ5 
× 2Ò 2Ñ 4Ô 4Ð5Ñ5�
Ø×!Ò!Ñ#Ô#ð 7ØÐ6 × 3Ò 3Ñ 5Ô 5Ð6Ñ6�
àÐaÐa ÐaÑaÔaÑaˆEˆEàˆCð •D˜Ñ&Ô&Ð'Ñ'ˆCØ•DÐ/Ñ0Ô0Ð1Ñ1ˆCØ•D˜Ñ&Ô&Ð'Ñ'ˆCØ•D˜‘L”L�>Ñ!ˆCð 1Ð0˜cÐ0Ñ0Ô0ˆCØ,Ð,¨Ð,Ñ,Ô,ˆCØ�S‰LˆEà× Ò  °4Ð Ñ8Ô8Ð8Ð8Ð8s   „AA Á
A*Á)A*c                ó´   — d}| j         r |dd                     | j         ¦  «        z   z  }| j        r'|r|dz  }|dd                     | j        ¦  «        z   z  }|S )NrA   zfound: z, z | z	missing: )ræ   rk   rç   )r&   Úress     r   Úlog_detailszBoostDependency.log_detailsÆ  sp   € ØˆØÔð 	=Ø�9˜tŸyšy¨Ô);Ñ<Ô<Ñ<Ñ<ˆCØÔð 	AØð Ø�u‘�Ø�; §¢¨4Ô+?Ñ!@Ô!@Ñ@Ñ@ˆCØˆ
r   c                óF   — | j         r| j                              ¦   «         S dS )NrA   )rÝ   rÄ   r/   s    r   Úlog_infozBoostDependency.log_infoÐ  s%   € ØŒ?ð 	.Ø”?×+Ò+Ñ-Ô-Ð-Øˆrr   Úhfiler   c                ób  — |                      ¦   «         sJ ‚|                     d¬¦  «        }t          j        d|¦  «        }|s2t	          j        d|› �¦  «         t          |j        d         d¦  «        S t          |j        d         t          | 	                    d¦  «        ¦  «        ¦  «        S )Nzutf-8)Úencodingz"#define\s+BOOST_VERSION\s+([0-9]+)z+Failed to extract version information from r	   r   )
r4  Ú	read_textrÇ   Úsearchr   rd   r   Úparentsr   rŸ   )r&   rŒ  ÚrawÚms       r   r6  z0BoostDependency._include_dir_from_version_headerÕ  sœ   € ð �|Š|‰~Œ~ÐÐÐØ�oŠo wˆoÑ/Ô/ˆÝŒIÐ;¸SÑAÔAˆØð 	8ÝŒJÐLÀUÐLÐLÑMÔMÐMÝ" 5¤=°Ô#3°QÑ7Ô7Ð7Ý˜uœ}¨QÔ/µ°Q·W²W¸Q±Z´Z±´ÑAÔAÐAr   r•   c                ó   — dgS )Nz-DBOOST_ALL_NO_LIBr   r/   s    r   r  z#BoostDependency._extra_compile_argsá  s   € à$Ð%Ð%r   )rÌ   r   rÍ   rÎ   r+   r˜   )rñ   rò   ró   r3   r+   r˜   )rï   r   r+   r˜   )rý   r  rþ   rò   r+   r3   )r*  r   r+   r  )r*  r   ró   r3   r+   rò   )r  rW  rX  r,   r+   rW  )r	  r   r+   rW  )r
  r   r  r   r+   r˜   )r+   r˜   r:   )rŒ  r   r+   r   rÆ   )r   r   r   r*   rÿ   rí   rû   rø   rú   r  r  r  rî   r‰  r‹  r6  r  Ú__classcell__)rð   s   @r   rË   rË   \  sW  ø€ € € € € ð'ð 'ð 'ð 'ð 'ð 'ðRð ð ð ð$$:ð $:ð $:ð $:ðLLð Lð Lð Lð\Nð Nð Nð Nð -7ð -7ð -7ð -7ð^#ð #ð #ð #ðJ1ð 1ð 1ð 1ð&
Cð 
Cð 
Cð 
Cð59ð 59ð 59ð 59ðnð ð ð ðð ð ð ð

Bð 
Bð 
Bð 
Bð&ð &ð &ð &ð &ð &ð &ð &r   rË   Úa64Úa32Úi64Úm32Úm64Úp32Úp64Ús32Ús64Úx32Úx64)Úaarch64ÚarcÚarmÚia64ÚmipsÚmips64ÚppcÚppc64ÚsparcÚsparc64Úx86Úx86_64c                  ó   — e Zd Zd
d„Zd	S )ÚBoostLibraryr]   r,   r¼   r•   r^   r¾   r½   c                óL   — || _         || _        || _        || _        || _        d S r5   ©r]   r¼   r^   r¾   r½   )r&   r]   r¼   r^   r¾   r½   s         r   r*   zBoostLibrary.__init__  s)   € ØˆŒ	ØˆŒØˆŒØˆŒØˆŒ
ˆ
ˆ
r   N)
r]   r,   r¼   r•   r^   r•   r¾   r•   r½   r•   ©r   r   r   r*   r   r   r   r®  r®     s(   € € € € € ðð ð ð ð ð r   r®  c                  ó   — e Zd Zd	d„ZdS )
ÚBoostModuler]   r,   ÚkeyÚdescr  r•   c                ó>   — || _         || _        || _        || _        d S r5   )r]   r´  rµ  r  )r&   r]   r´  rµ  r  s        r   r*   zBoostModule.__init__	  s"   € ØˆŒ	ØˆŒØˆŒ	ØˆŒ	ˆ	ˆ	r   N)r]   r,   r´  r,   rµ  r,   r  r•   r±  r   r   r   r³  r³    s(   € € € € € ðð ð ð ð ð r   r³  Úboost_atomicz-DBOOST_ATOMIC_DYN_LINK=1z-DBOOST_ATOMIC_STATIC_LINK=1r°  Úboost_chronoz-DBOOST_CHRONO_DYN_LINK=1z-DBOOST_CHRONO_STATIC_LINK=1z-DBOOST_CHRONO_THREAD_DISABLEDÚboost_containerz-DBOOST_CONTAINER_DYN_LINK=1z-DBOOST_CONTAINER_STATIC_LINK=1Úboost_contextz-DBOOST_CONTEXT_DYN_LINK=1Úboost_contractz-DBOOST_CONTRACT_DYN_LINKz-DBOOST_CONTRACT_STATIC_LINKz -DBOOST_CONTRACT_DISABLE_THREADSÚboost_coroutinez-DBOOST_COROUTINES_DYN_LINK=1Úboost_date_timez-DBOOST_DATE_TIME_DYN_LINK=1Úboost_exceptionÚboost_fiberz-DBOOST_FIBERS_DYN_LINK=1Úboost_fiber_numaÚboost_filesystemz-DBOOST_FILESYSTEM_DYN_LINK=1z -DBOOST_FILESYSTEM_STATIC_LINK=1Úboost_graphÚboost_iostreamsz-DBOOST_IOSTREAMS_DYN_LINK=1Úboost_localeÚ	boost_logz-DBOOST_LOG_DYN_LINK=1z-DBOOST_LOG_NO_THREADSÚboost_log_setupz-DBOOST_LOG_SETUP_DYN_LINK=1Úboost_math_c99Úboost_math_c99fÚboost_math_c99lÚboost_math_tr1Úboost_math_tr1fÚboost_math_tr1lÚ	boost_mpiÚboost_nowidez-DBOOST_NOWIDE_DYN_LINK=1Úboost_prg_exec_monitorz-DBOOST_TEST_DYN_LINK=1Úboost_program_optionsÚboost_randomz-DBOOST_RANDOM_DYN_LINKÚboost_regexÚboost_serializationÚboost_stacktrace_addr2lineÚboost_stacktrace_backtraceÚboost_stacktrace_basicÚboost_stacktrace_noopÚboost_stacktrace_windbgÚboost_stacktrace_windbg_cachedÚboost_systemz-DBOOST_SYSTEM_DYN_LINK=1z-DBOOST_SYSTEM_STATIC_LINK=1Úboost_test_exec_monitorÚboost_threadz-DBOOST_THREAD_BUILD_DLL=1z-DBOOST_THREAD_USE_DLL=1z-DBOOST_THREAD_BUILD_LIB=1z-DBOOST_THREAD_USE_LIB=1Úboost_timerz-DBOOST_TIMER_DYN_LINK=1z-DBOOST_TIMER_STATIC_LINK=1Úboost_type_erasurez-DBOOST_TYPE_ERASURE_DYN_LINKÚboost_unit_test_frameworkÚ
boost_waveÚboost_wserialization)	rÙ  rÚ  rÛ  rÜ  rÝ  rÞ  rß  rà  rá  )"Ú
__future__r   rÇ   ÚdataclassesÚ	functoolsÚtypingÚTÚpathlibr   rA   r   r   Úbaser
   r   Ú	pkgconfigr   Úmiscr   ÚTYPE_CHECKINGrÌ   r   r   Ú	dataclassÚ	Exceptionr   Útotal_orderingr   r=   rË   rì   r®  r³  r»   r   r   r   ú<module>rï     sj
  ðð #Ð "Ð "Ð "Ð "Ð "à 	€	€	€	Ø Ð Ð Ð Ø Ð Ð Ð Ø Ð Ð Ð Ø Ð Ð Ð Ð Ð à Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð à 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ø *Ð *Ð *Ð *Ð *Ð *Ø !Ð !Ð !Ð !Ð !Ð !à„?ð 6Ø5Ð5Ð5Ð5Ð5Ð5Ð5Ð5ðr €Ô˜% uÐ-Ñ-Ô-ðð ð ð ð ˜9ñ ô ñ .Ô-ðð Ôðð ð ð ð ñ ô ñ Ôðð$ Ôðk&ð k&ð k&ð k&ð k&ñ k&ô k&ñ Ôðk&ðZG&ð G&ð G&ð G&ð G&Ð&ñ G&ô G&ð G&ðZ ØØØØØØØØØØØðð €ð0ð ð ð ð ñ ô ð ðð ð ð ð ñ ô ð ðnØ�L�LØØ+Ð,Ø.Ð/ØØðñ ô ðnð �L�LØØ+Ð,Ø.Ð/Ø0Ð1Øðñ ô ðnð �|�|ØØ.Ð/Ø1Ð2ØØðñ ô ðnð, �\�\ØØ,Ð-ØØØðñ ô ð-nð: �l�lØØ+Ð,Ø.Ð/Ø2Ð3Øðñ ô ð;nðH �|�|ØØ/Ð0ØØØðñ ô ðInðV �|�|ØØ.Ð/ØØØðñ ô ðWnðd �|�|ØØØØØðñ ô ðenðr �<�<ØØ+Ð,ØØØðñ ô ðsnð@ ˜˜ØØ+Ð,ØØØðñ ô ðAnðN ˜˜ØØ/Ð0Ø2Ð3ØØðñ ô ðOnð\ �<�<ØØØØØðñ ô ð]nðj �|�|ØØ.Ð/ØØØðñ ô ðknðx �L�LØØØØØðñ ô ðynðF ��ØØ(Ð)ØØ(Ð)Øðñ ô ðGnðT �|�|ØØ.Ð/ØØ(Ð)Øðñ ô ðUnðb �l�lØØØØØðñ ô ðcnð nðp �|�|ØØØØØðñ ô ðqnð~ �|�|ØØØØØðñ ô ðnðL �l�lØØØØØðñ ô ðMnðZ �|�|ØØØØØðñ ô ð[nðh �|�|ØØØØØðñ ô ðinðv ��ØØØØØðñ ô ðwnðD �L�LØØ+Ð,ØØØðñ ô ðEnðR ˜l˜lØ%Ø)Ð*ØØØðñ ô ðSnð` ˜\˜\Ø$ØØØØðñ ô ðanðn �L�LØØ)Ð*ØØØðñ ô ðonð| �<�<ØØØØØðñ ô ð}nðJ ˜<˜<Ø"ØØØØðñ ô ðKnðX ! , ,Ø)ØØØØð#ñ #ô #ðYnðf ! , ,Ø)ØØØØð#ñ #ô #ðgnðt ˜l˜lØ%ØØØØðñ ô ðunðB ˜\˜\Ø$ØØØØðñ ô ðCnðP ˜|˜|Ø&ØØØØð ñ  ô  ðQnð nð^ '3 lØ-ØØØØð'ñ 'ô 'ð !�LØØ+Ð,Ø.Ð/ØØðñ ô ð  ,˜|Ø&Ø)Ð*ØØØð ñ  ô  ð !�LØØ,Ð.HÐIØ,Ð.HÐIØØðñ ô ð  �<ØØ*Ð+Ø-Ð.ØØðñ ô ð '˜,Ø!Ø/Ð0ØØØðñ ô ð ". Ø(Ø)Ð*ØØØð"ñ "ô "ð �,ØØØØØðñ ô ð )˜LØ#ØØØØðñ ô ðO	nð nð n€€€r   