+
    Ž°³jû†  ã                  ó   € R t ^ RIHt ^ RIt^ RIt^ RIt^ RIt^ RIHt ^ RI	H
t
 ^ RIHt ^ RIHt ^RIHt ^RIHtHtHt ^R	IHt ^R
IHtHtHtHtHtHt ^RIHt ^RI H!t!H"t"H#t# ^RI$H%t%H&t&H't' ]PP                  ! R4      t) ! R R]4      t*R# )z¶distutils.command.build_ext

Implements the Distutils 'build_ext' command, for building extension
modules (currently limited to C extensions, should accommodate C++
extensions ASAP).)ÚannotationsN)ÚCallable)Úlog)Ú	USER_BASE)ÚClassVar)Únewer_group)Ú	CCompilerÚnew_compilerÚshow_compilers)ÚCommand)ÚCCompilerErrorÚCompileErrorÚDistutilsErrorÚDistutilsOptionErrorÚDistutilsPlatformErrorÚDistutilsSetupError)Ú	Extension)Úcustomize_compilerÚget_config_h_filenameÚget_python_version)Úget_platformÚis_freethreadedÚis_mingwz3^[a-zA-Z_][a-zA-Z_0-9]*(\.[a-zA-Z_][a-zA-Z_0-9]*)*$c                  ó¼  € ] tR t^&t$ RtR]P                   R2tR7R8RRR]! 4        R23R9RR	R
],           3R:R;R<RRR],           3R=R>R?R@RARBRCRDRERF.t	R]
R&   . RGOtR]
R&   RRR]3.tR]
R&   R R lt]R 4       tR R ltR R ltR R ltR  tR! tR" R# ltR$ tR% t]P4                  R& 4       tR' R( ltR) tR* tR+ R, ltR- R. lt R/ R0 lt!R1 R2 lt"R3 t#R4 R5 lt$R6t%R# )HÚ	build_extz8build C/C++ extensions (compile/link to build directory)z (separated by 'z')z
plat-name=Úpz;platform name to cross-compile for, if supported [default: Ú]zinclude-dirs=ÚIz.list of directories to search for header fileszlibrary-dirs=ÚLz.directories to search for external C librariesNzHClassVar[list[tuple[str, str, str]] | list[tuple[str, str | None, str]]]Úuser_optionszClassVar[list[str]]Úboolean_optionszhelp-compilerzlist available compilerszAClassVar[list[tuple[str, str | None, str, Callable[[], object]]]]Úhelp_optionsc               ó   € V ^8„  d   QhRR/# ©é   ÚreturnÚNone© )Úformats   "Úh/home/luca/screen-checking/.venv/lib/python3.14/site-packages/setuptools/_distutils/command/build_ext.pyÚ__annotate__Úbuild_ext.__annotate__v   s   € ÷ )ñ ) Dñ )ó    c                	ó,  € R V n         R V n        R V n        R V n        RV n        R V n        R V n        R V n        R V n        R V n	        R V n
        R V n        R V n        R V n        R V n        R V n        R V n        R V n        R V n        R V n        R V n        R # )NF)Ú
extensionsÚ	build_libÚ	plat_nameÚ
build_tempÚinplaceÚpackageÚinclude_dirsÚdefineÚundefÚ	librariesÚlibrary_dirsÚrpathÚlink_objectsÚdebugÚforceÚcompilerÚswigÚswig_cppÚ	swig_optsÚuserÚparallel©Úselfs   &r)   Úinitialize_optionsÚbuild_ext.initialize_optionsv   sœ   € Ø26ˆŒØ"ˆŒØ"ˆŒØ#ˆŒØˆŒØ#'ˆŒà'+ˆÔØˆŒØˆŒ
Ø$(ˆŒØ'+ˆÔØ $ˆŒ
Ø ˆÔØˆŒ
ð #'ˆŒ
ð 15ˆŒØˆŒ	ØˆŒØ$(ˆŒØˆŒ	Ø$(ˆŽr,   c              #  óJ  "  € V P                  R4      '       g   R# V P                  '       d   Rx € R# \        P                  R8X  dF   V P                  R4      pV P                  R4      p\        P
                  P                  W4      x € R# V P                  R4      x € R# 5i)z•
Resolve Python's library directory for building extensions
that rely on a shared Python library.

See python/cpython#44264 and python/cpython#48686
ÚPy_ENABLE_SHAREDNÚ.ÚzosÚbaseÚ
platlibdirÚLIBDIR)Úget_config_varÚpython_buildÚsysÚplatformÚosÚpathÚjoin)Ú	sysconfigÚinstalled_dirÚlib_dirs   &  r)   Ú_python_lib_dirÚbuild_ext._python_lib_dir•   s„   é € ð ×'Ñ'Ð(:×;Ò;Ùà×!×!Ð!ØŠIÙä�<‰<˜5Ô ð &×4Ñ4°VÓ<ˆMØ×.Ñ.¨|Ó<ˆGÜ—'‘'—,‘,˜}Ó6Ô6ð ×*Ñ*¨8Ó4Ô4ùs   ‚+B#®A5B#c               ó   € V ^8„  d   QhRR/# r#   r'   )r(   s   "r)   r*   r+   ®   s   € ÷ ILñ IL $ñ ILr,   c           
     	ó  € ^ RI Hp V P                  RRRRRRRR 4       V P                  f   V P                  P
                  V n        V P                  P                  V n        VP                  4       pVP                  RR7      pV P                  f&   V P                  P                  ;'       g    . V n	        \        V P                  \        4      '       d/   V P                  P                  \        P                  4      V n	        \        P                   \        P"                  8w  dH   V P                  P%                  \        P&                  P)                  \        P                   R4      4       V P                  P+                  VP                  \        P&                  P                  4      4       W28w  dC   V P                  P+                  VP                  \        P&                  P                  4      4       V P-                  R4       V P-                  R4       V P.                  f   . V n        V P0                  f	   . V n        MN\        V P0                  \        4      '       d/   V P0                  P                  \        P                  4      V n        V P2                  f	   . V n        MN\        V P2                  \        4      '       d/   V P2                  P                  \        P                  4      V n        \        P4                  R	8X  Ed4   \7        4       '       Eg#   V P0                  P%                  \        P&                  P)                  \        P                   R
4      4       \        P"                  \        P8                  8w  dH   V P0                  P%                  \        P&                  P)                  \        P"                  R
4      4       V P:                  '       d1   \        P&                  P)                  V P<                  R4      V n        M/\        P&                  P)                  V P<                  R4      V n        V P                  P%                  \        P&                  P?                  \A        4       4      4       V P0                  P%                  \        P"                  4       V PB                  R8X  d   RpMV PB                  R,          p\        P&                  P)                  \        P                   R4      pV'       d    \        P&                  P)                  WT4      pV P0                  P%                  V4       \        PD                  R,          R8X  d‡   VPF                  '       gZ   V P0                  P%                  \        P&                  P)                  \        P8                  RR\I        4       ,           R4      4       MV P0                  P%                  R4       V P0                  P+                  V PK                  V4      4       V PL                  '       d4   V PL                  P                  R4      pV Uu. uF  qwR3NK  	  upV n&        V PN                  '       d!   V PN                  P                  R4      V n'        V PP                  f	   . V n(        M V PP                  P                  R4      V n(        V PR                  '       dä   \        P&                  P)                  \T        R4      p\        P&                  P)                  \T        R4      p	\        P&                  PW                  V4      '       d   V P                  P%                  V4       \        P&                  PW                  V	4      '       d7   V P0                  P%                  V	4       V P2                  P%                  V	4       \        V PX                  \        4      '       d    \[        V PX                  4      V n,        R# R# u upi   \\         d    \_        R4      hi ; i)!é    )rU   ÚbuildNT)Úplat_specificÚincluder7   r:   ÚntÚlibsÚDebugÚReleaseÚwin32:é   NNÚPCbuild:Né   NÚcygwinÚlibÚpythonÚconfigrI   Ú,Ú1Ú zparallel should be an integer)r/   r/   )r1   r1   )r=   r=   )r;   r;   )r<   r<   )rB   rB   )r0   r0   )0Ú	distutilsrU   Úset_undefined_optionsr3   ÚdistributionÚext_packageÚext_modulesr.   Úget_python_incr4   Ú
isinstanceÚstrÚsplitrR   ÚpathseprP   Úexec_prefixÚbase_exec_prefixÚappendrS   rT   ÚextendÚensure_string_listr7   r8   r9   Únamer   Úprefixr;   r1   Údirnamer   r0   rQ   rO   r   rX   r5   r6   r@   rA   r   ÚisdirrB   ÚintÚ
ValueErrorr   )
rD   rU   Ú
py_includeÚplat_py_includeÚsuffixÚnew_libÚdefinesÚsymbolÚuser_includeÚuser_libs
   &         r)   Úfinalize_optionsÚbuild_ext.finalize_options®   sb  € Ý'à×"Ñ"ØØ&Ø(Ø$ØØØ$Ø&ô		
ð �<‰<ÒØ×,Ñ,×8Ñ8ˆDŒLà×+Ñ+×7Ñ7ˆŒð ×-Ñ-Ó/ˆ
Ø#×2Ñ2ÀÐ2ÓFˆØ×ÑÒ$Ø $× 1Ñ 1× >Ñ >× DÐ DÀ"ˆDÔÜ�d×'Ñ'¬×-Ò-Ø $× 1Ñ 1× 7Ñ 7¼¿
¹
Ó CˆDÔô �?‰?œc×2Ñ2Ô2Ø×Ñ×$Ñ$¤R§W¡W§\¡\´#·/±/À9Ó%MÔNð 	×Ñ× Ñ  ×!1Ñ!1´"·'±'·/±/Ó!BÔCØÔ(Ø×Ñ×$Ñ$ _×%:Ñ%:¼2¿7¹7¿?¹?Ó%KÔLà×Ñ Ô,Ø×Ñ Ô/ð �>‰>Ò!ØˆDŒNØ×ÑÒ$Ø "ˆDÕÜ˜×)Ñ)¬3×/Ò/Ø $× 1Ñ 1× 7Ñ 7¼¿
¹
Ó CˆDÔà�:‰:ÒØˆD�JÜ˜Ÿ
™
¤C×(Ò(ØŸ™×)Ñ)¬"¯*©*Ó5ˆDŒJô
 �7‰7�d�?¤8§:£:ð ×Ñ×$Ñ$¤R§W¡W§\¡\´#·/±/À6Ó%JÔKÜ×#Ñ#¤s§z¡zÔ1Ø×!Ñ!×(Ñ(¬¯©¯©´c×6JÑ6JÈFÓ)SÔTØ�z�zˆzÜ"$§'¡'§,¡,¨t¯©ÀÓ"H�•ä"$§'¡'§,¡,¨t¯©À	Ó"J�”ð ×Ñ×$Ñ$¤R§W¡W§_¡_Ô5JÓ5LÓ%MÔNØ×Ñ×$Ñ$¤S×%9Ñ%9Ô:ð �~‰~ Ô(Ø ‘ð Ÿ™¨Õ+�Ü—g‘g—l‘l¤3§?¡?°IÓ>ˆGßÜŸ'™'Ÿ,™, wÓ7�Ø×Ñ×$Ñ$ WÔ-ô �<‰<˜Õ˜xÔ'Ø×)×)Ð)à×!Ñ!×(Ñ(Ü—G‘G—L‘LÜŸ
™
 E¨8Ô6HÓ6JÕ+JÈHóõð ×!Ñ!×(Ñ(¨Ô-à×Ñ× Ñ  ×!5Ñ!5°iÓ!@ÔAð �;�;ˆ;Ø—k‘k×'Ñ'¨Ó,ˆGÙ7>Ó?±w¨V C›=±wÑ?ˆDŒKð
 �:�:ˆ:ØŸ™×)Ñ)¨#Ó.ˆDŒJà�>‰>Ò!ØˆD�Nà!Ÿ^™^×1Ñ1°#Ó6ˆDŒNð �9�9ˆ9ÜŸ7™7Ÿ<™<¬	°9Ó=ˆLÜ—w‘w—|‘|¤I¨uÓ5ˆHÜ�w‰w�}‰}˜\×*Ò*Ø×!Ñ!×(Ñ(¨Ô6Ü�w‰w�}‰}˜X×&Ò&Ø×!Ñ!×(Ñ(¨Ô2Ø—
‘
×!Ñ! (Ô+ä�d—m‘m¤S×)Ò)ðLÜ # D§M¡MÓ 2�–ñ *ùò/ @øô4 ô LÜ*Ð+JÓKÐKðLús   Ø?_/ß_4 ß4`c               ó   € V ^8„  d   QhRR/# r#   r'   )r(   s   "r)   r*   r+   9  s   € ÷ E ñ E �Tñ E r,   c                	óÜ  € V P                   '       g   R # V P                  P                  4       '       dj   V P                  R4      pV P                  P                  VP                  4       ;'       g    . 4       V P                  P                  VP                  4       \        V P                  V P                  V P                  R7      V n        \        V P                  4       V P                  \!        4       8w  d&   V P                  P#                  V P                  4       \$        P&                  R8X  d-   \)        4       '       d   V P                  P+                  RR4       V P,                  e&   V P                  P/                  V P,                  4       V P0                  e1   V P0                   F   w  r#V P                  P+                  W#4       K"  	  V P2                  e/   V P2                   F  pV P                  P5                  V4       K   	  V P                  e&   V P                  P7                  V P                  4       V P                  e&   V P                  P9                  V P                  4       V P:                  e&   V P                  P=                  V P:                  4       V P>                  e&   V P                  PA                  V P>                  4       V PC                  4        R # )NÚ
build_clib)r=   Úverboser<   r`   ÚPy_GIL_DISABLEDrm   )"r.   rq   Úhas_c_librariesÚget_finalized_commandr7   r|   Úget_library_namesr8   r{   r�   r	   r=   r‘   r<   r   r0   r   Ú
initializerR   r~   r   Údefine_macror4   Úset_include_dirsr5   r6   Úundefine_macroÚset_librariesÚset_library_dirsr9   Úset_runtime_library_dirsr:   Úset_link_objectsÚbuild_extensions)rD   r�   r~   ÚvalueÚmacros   &    r)   ÚrunÚbuild_ext.run9  s  € ð ��ˆÙð
 ×Ñ×,Ñ,×.Ò.Ø×3Ñ3°LÓAˆJØ�N‰N×!Ñ! *×">Ñ">Ó"@×"FÐ"FÀBÔGØ×Ñ×$Ñ$ Z×%:Ñ%:Ô;ô %Ø—]‘]Ø—L‘LØ—*‘*ô
ˆŒô
 	˜4Ÿ=™=Ô)ð �>‰>œ\›^Ô+Ø�M‰M×$Ñ$ T§^¡^Ô4ô
 �7‰7�dŒ?œ×0Ò0Ø�M‰M×&Ñ&Ð'8¸#Ô>ð ×ÑÒ(Ø�M‰M×*Ñ*¨4×+<Ñ+<Ô=Ø�;‰;Ò"à#Ÿ{œ{‘�Ø—‘×*Ñ*¨4Ö7ñ  +à�:‰:Ò!ØŸœ�Ø—‘×,Ñ,¨UÖ3ñ $à�>‰>Ò%Ø�M‰M×'Ñ'¨¯©Ô7Ø×ÑÒ(Ø�M‰M×*Ñ*¨4×+<Ñ+<Ô=Ø�:‰:Ò!Ø�M‰M×2Ñ2°4·:±:Ô>Ø×ÑÒ(Ø�M‰M×*Ñ*¨4×+<Ñ+<Ô=ð 	×ÑÖr,   c               ó   € V ^8„  d   QhRR/# r#   r'   )r(   s   "r)   r*   r+   €  s   € ÷ V ñ V °4ñ V r,   c                óx  € \        V\        4      '       g   \        R4      h\        V4       EF  w  r#\        V\        4      '       d   K  \        V\
        4      '       d   \        V4      ^8w  d   \        R4      hVw  rE\        P                  ! RV4       \        V\        4      '       d   \        P                  V4      '       g   \        R4      h\        V\        4      '       g   \        R4      h\	        WER,          4      pR F&  pVP                  V4      pVf   K  \        W6V4       K(  	  VP                  R4      ;'       g    . Vn        R	V9   d   \        P                  ! R
4       VP                  R4      pV'       dª   . Vn        . Vn        V F•  p	\        V	\
        4      '       d   \        V	4      R9   g   \        R4      h\        V	4      ^8X  d%   VP"                  P%                  V	^ ,          4       Kh  \        V	4      ^8X  g   Kz  VP                   P%                  V	4       K—  	  W1V&   EK  	  R# )at  Ensure that the list of extensions (presumably provided as a
command option 'extensions') is valid, i.e. it is a list of
Extension objects.  We also support the old-style list of 2-tuples,
where the tuples are (ext_name, build_info), which are converted to
Extension instances here.

Raise DistutilsSetupError if the structure is invalid anywhere;
just returns otherwise.
z:'ext_modules' option must be a list of Extension instanceszMeach element of 'ext_modules' option must be an Extension instance or 2-tuplezvold-style (ext_name, build_info) tuple found in ext_modules for extension '%s' -- please convert to Extension instancezRfirst element of each tuple in 'ext_modules' must be the extension name (a string)zOsecond element of each tuple in 'ext_modules' must be a dictionary (build info)ÚsourcesNr9   Údef_filez9'def_file' element of build info dict no longer supportedÚmacrosz9'macros' element of build info dict must be 1- or 2-tuple)r4   r8   r7   Úextra_objectsÚextra_compile_argsÚextra_link_args)é   r$   )ru   Úlistr   Ú	enumerater   ÚtupleÚlenr   Úwarningrv   Úextension_name_reÚmatchÚdictÚgetÚsetattrÚruntime_library_dirsÚdefine_macrosÚundef_macrosr{   )
rD   r.   ÚiÚextÚext_nameÚ
build_infoÚkeyÚvalr§   r    s
   &&        r)   Úcheck_extensions_listÚbuild_ext.check_extensions_list€  sñ  € ô ˜*¤d×+Ò+Ü%ØLóð ô   
×+‰FˆAÜ˜#œy×)Ò)Ùô ˜c¤5×)Ò)¬S°«X¸¬]Ü)ð4óð ð
 $'Ñ ˆHä�KŠKð:ð ô	ô ˜x¬×-Ò-Ô2C×2IÑ2IÈ(×2SÒ2SÜ)ð<óð ô
 ˜j¬$×/Ò/Ü)ð8óð ô ˜H°Õ&;Ó<ˆCó�ð !—n‘n SÓ)�Ø”?Ü˜C cÖ*ñð (2§~¡~°gÓ'>×'DÐ'DÀ"ˆCÔ$Ø˜ZÔ'Ü—’ÐWÔXð  —^‘^ HÓ-ˆFßØ$&�Ô!Ø#%�Ô Û#�EÜ& u¬e×4Ò4¼¸U»ÀvÔ9MÜ1ØWóð ô ˜5“z Q”Ø×(Ñ(×/Ñ/°°aµÖ9Ü˜U› qžØ×)Ñ)×0Ñ0°Ö7ñ $ð  �qŒMóO ,r,   c                	óœ   € V P                  V P                  4       . pV P                   F  pVP                  VP                  4       K   	  V# ©N)r¿   r.   r|   r¥   )rD   Ú	filenamesrº   s   &  r)   Úget_source_filesÚbuild_ext.get_source_filesØ  sA   € Ø×"Ñ" 4§?¡?Ô3Øˆ	ð —?”?ˆCØ×Ñ˜SŸ[™[Ö)ñ #àÐr,   c                	óª   € V P                  V P                  4       V P                   Uu. uF  qP                  VP                  4      NK  	  up# u upi rÂ   )r¿   r.   Úget_ext_fullpathr~   ©rD   rº   s   & r)   Úget_outputsÚbuild_ext.get_outputsá  sB   € ð 	×"Ñ" 4§?¡?Ô3ð
 <@¿?º?ÓK¹?°C×%Ñ% c§h¡hÖ/¹?ÑKÐKùÒKs   ª#Ac               ó   € V ^8„  d   QhRR/# r#   r'   )r(   s   "r)   r*   r+   ì  s   € ÷ ,ñ , $ñ ,r,   c                	ó¤   € V P                  V P                  4       V P                  '       d   V P                  4        R # V P	                  4        R # rÂ   )r¿   r.   rB   Ú_build_extensions_parallelÚ_build_extensions_serialrC   s   &r)   rž   Úbuild_ext.build_extensionsì  s5   € à×"Ñ" 4§?¡?Ô3Ø�=�=ˆ=Ø×+Ñ+Ö-à×)Ñ)Ö+r,   c           
     	ód  € V P                   pV P                   R J d   \        P                  ! 4       p ^ RIHp Vf   V P                  4        R# X! VR7      ;_uu_ 4       pV P                   Uu. uF  qCP                  V P                  V4      NK   	  pp\        V P                  VRR7       F7  w  rFV P                  V4      ;_uu_ 4        VP                  4        RRR4       K9  	  RRR4       R#   \
         d    Rp LÈi ; iu upi   + '       g   i     Kn  ; i  + '       g   i     R# ; i)T)ÚThreadPoolExecutorN)Úmax_workersF)Ústrict)rB   rR   Ú	cpu_countÚconcurrent.futuresrÑ   ÚImportErrorrÎ   r.   ÚsubmitÚbuild_extensionÚzipÚ_filter_build_errorsÚresult)rD   ÚworkersrÑ   Úexecutorrº   ÚfuturesÚfuts   &      r)   rÍ   Ú$build_ext._build_extensions_parallelô  sô   € Ø—-‘-ˆØ�=‰=˜DÓ Ü—l’l“nˆGð	Ý=ð Š?Ø×)Ñ)Ô+Ùá¨G×4Õ4¸àFJÇoÂoóÙFU¸s—‘ × 4Ñ 4°cÖ:Áoð ð ô   §¡°À×G‘�Ø×.Ñ.¨s×3Õ3Ø—J‘J”L÷ 4Ñ3ñ H÷	 5Ñ4øô ô 	ØŠGð	üò÷ 4×3Ð3ú÷ 5×4Ð4úsG   ³C2 Á DÁ/$DÂ8DÃD
ÃDÃ2DÄDÄDÄ
DÄ	DÄD/	c                	óº   € V P                    F6  pV P                  V4      ;_uu_ 4        V P                  V4       R R R 4       K8  	  R #   + '       g   i     KM  ; irÂ   )r.   rÚ   rØ   rÈ   s   & r)   rÎ   Ú"build_ext._build_extensions_serial	  sA   € Ø—?”?ˆCØ×*Ñ*¨3×/Õ/Ø×$Ñ$ SÔ)÷ 0Ñ/ó #ß/×/Ð/ús   ©A	Á	Ac              #  	óÈ   "  €  R x € R #   \         \        \        3 d@   pTP                  '       g   h T P	                  RTP
                   RT 24        R p?R # R p?ii ; i5i)Nzbuilding extension "z
" failed: )r   r   r   ÚoptionalÚwarnr~   )rD   rº   Úes   && r)   rÚ   Úbuild_ext._filter_build_errors  sS   é € ð	FÝøÜ¤´Ð=ô 	FØ—<—<�<ØØ�I‰IÐ,¨S¯X©X¨J°jÀÀÐD×EÒEûð	Füs*   ‚A"„
 ˆA"ŠA 4AÁA"ÁAÁA"c               ó   € V ^8„  d   QhRR/# r#   r'   )r(   s   "r)   r*   r+     s   € ÷ U
ñ U
 dñ U
r,   c                	óF  € VP                   pVe   \        V\        \        34      '       g   \	        RVP
                   R24      h\        V4      pV P                  VP
                  4      pW!P                  ,           pV P                  '       g6   \        WCR4      '       g$   \        P                  ! RVP
                  4       R # \        P                  ! RVP
                  4       V P                  W!4      pVP                  ;'       g    . pVP                   R,          pVP"                   F  pVP%                  V34       K  	  \        V P&                  \(        4      '       g   Q R4       hV P&                  P+                  VV P,                  VVP.                  V P                  VVP                  R7      pVR,          V n        VP2                  '       d   VP5                  VP2                  4       VP6                  ;'       g    . pVP8                  ;'       g    V P&                  P;                  V4      p	V P&                  P=                  VVV P?                  V4      VP@                  VPB                  VV PE                  V4      V P                  V P,                  V	R	7
       R # )
Nz$in 'ext_modules' option (extension 'zD'), 'sources' must be present and must be a list of source filenamesÚnewerz$skipping '%s' extension (up-to-date)zbuilding '%s' extension:NNNz$run() must precede build_extension())Ú
output_dirr§   r4   r;   Úextra_postargsÚdepends)r7   r8   r¶   rì   Úexport_symbolsr;   r1   Útarget_lang)#r¥   ru   r¬   r®   r   r~   ÚsortedrÇ   rí   r<   r   r   r;   ÚinfoÚswig_sourcesr©   r·   r¸   r{   r=   r   Úcompiler1   r4   Ú_built_objectsr¨   r|   rª   ÚlanguageÚdetect_languageÚlink_shared_objectÚget_librariesr8   r¶   Úget_export_symbols)
rD   rº   r¥   Úext_pathrí   Ú
extra_argsr§   r6   Úobjectsrõ   s
   &&        r)   rØ   Úbuild_ext.build_extension  s(  € Ø—+‘+ˆØŠ?¤*¨W´t¼U°m×"DÒ"DÜ%Ø6°s·x±x°jð A-ð -óð ô ˜“/ˆà×(Ñ(¨¯©Ó2ˆØŸK™KÕ'ˆØ—
—
�
œk¨'¸W×EÒEÜ�IŠIÐ<¸c¿h¹hÔGÙä�HŠHÐ.°·±Ô9ð
 ×#Ñ# GÓ1ˆð  ×+Ñ+×1Ð1¨rˆ
à×"Ñ" 1Õ%ˆØ×%Ô%ˆEØ�M‰M˜5˜(Ö#ñ &ô ˜$Ÿ-™-¬×3Ò3ð 	
Ø2ó	
Ð3ð —-‘-×'Ñ'ØØ—‘ØØ×)Ñ)Ø—*‘*Ø%Ø—K‘Kð (ó 
ˆð & a�jˆÔð
 ××ÐØ�N‰N˜3×,Ñ,Ô-Ø×(Ñ(×.Ð.¨Bˆ
ð —<‘<×IÐI 4§=¡=×#@Ñ#@ÀÓ#Iˆà�‰×(Ñ(ØØØ×(Ñ(¨Ó-Ø×)Ñ)Ø!$×!9Ñ!9Ø%Ø×2Ñ2°3Ó7Ø—*‘*Ø—‘Ø ð 	)ö 	
r,   c                ó�  € . p. p/ pV P                   '       d   \        P                  ! R4       V P                   '       g#   RV P                  9   g   RVP                  9   d   RpMRpV Fy  p\        P
                  P                  V4      w  r‰V	R8X  d>   VP                  VR,           V,           4       VP                  V4       VR
,          WW&   Kh  VP                  V4       K{  	  V'       g   V# V P                  ;'       g    V P                  4       p
V
R.pVP                  V P                  4       V P                   '       d   VP                  R4       V P                  '       g   VP                  VP                  4       V F<  pWW,          p\        P                  ! RW|4       V P                  VR	WÇ.,           4       K>  	  V# )zÜWalk the list of source files in 'sources', looking for SWIG
interface (.i) files.  Run SWIG on all that are found, and
return a modified 'sources' list with SWIG source files replaced
by the generated C (or C++) files.
z/--swig-cpp is deprecated - use --swig-opts=-c++z-c++z.cppz.cz.iÚ_wrapz-pythonzswigging %s to %sz-oéÿÿÿÿ)r?   r   r°   r@   rR   rS   Úsplitextr{   r>   Ú	find_swigr|   rñ   Úspawn)rD   r¥   Ú	extensionÚnew_sourcesrò   Úswig_targetsÚ
target_extÚsourcerK   rº   r>   Úswig_cmdÚtargets   &&&          r)   rò   Úbuild_ext.swig_sourcesn  sn  € ð ˆØˆØˆð �=�=ˆ=Ü�KŠKÐIÔJð �M�MˆMØ˜$Ÿ.™.Ô(Ø˜)×-Ñ-Ô-à‰JàˆJãˆFÜŸ'™'×*Ñ*¨6Ó2‰KˆTØ�dŒ{Ø×"Ñ" 4¨'¥>°JÕ#>Ô?Ø×#Ñ# FÔ+Ø'2°2¥�Ó$à×"Ñ" 6Ö*ñ ÷ ØÐà�y‰y×,Ð,˜DŸN™NÓ,ˆØ˜)Ð$ˆØ�‰˜Ÿ™Ô'Ø�=�=ˆ=Ø�O‰O˜FÔ#ð �~�~ˆ~Ø�O‰O˜I×/Ñ/Ô0ã"ˆFØ!Õ)ˆFÜ�HŠHÐ(¨&Ô9Ø�J‰J�x 4¨Ð"8Õ8Ö9ñ #ð
 Ðr,   c                óB  € \         P                  R8X  d   R# \         P                  R8X  dX   R FO  p\         P                  P                  RV 2R4      p\         P                  P	                  V4      '       g   KM  Vu # 	  R# \        R\         P                   R24      h)	zƒReturn the name of the SWIG executable.  On Unix, this is
just "swig" -- it should be in the PATH.  Tries a bit harder on
Windows.
Úposixr>   r`   zc:\swigzswig.exez;I don't know how to find (much less run) SWIG on platform 'Ú')z1.3z1.2z1.1)rR   r~   rS   rT   Úisfiler   )rD   ÚversÚfns   &  r)   r  Úbuild_ext.find_swig¦  s€   € ô
 �7‰7�gÔÙÜ�W‰W˜Œ_ó .�Ü—W‘W—\‘\ H¨T¨FÐ"3°ZÓ@�Ü—7‘7—>‘> "×%Ô%Ø’Iñ .ñ ä(ØMÌbÏgÉgÈYÐVWÐXóð r,   c               ó    € V ^8„  d   QhRRRR/# ©r$   r»   rv   r%   r'   )r(   s   "r)   r*   r+   ½  s   € ÷ 3ñ 3¨ð 3°ñ 3r,   c                ó$  € V P                  V4      pVP                  R4      pV P                  VR,          4      pV P                  '       gT   \        P
                  P                  ! VRR V.,           !  p\        P
                  P                  V P                  V4      # RP                  V^ R 4      pV P                  R4      p\        P
                  P                  VP                  V4      4      p\        P
                  P                  Wt4      # )z‰Returns the path of the filename for a given extension.

The file is located in `build_lib` or directly in the package
(inplace option).
rI   NÚbuild_pyr   )Úget_ext_fullnamerw   Úget_ext_filenamer2   rR   rS   rT   r/   r”   ÚabspathÚget_package_dir)rD   r»   ÚfullnameÚmodpathÚfilenamer3   r  Úpackage_dirs   &&      r)   rÇ   Úbuild_ext.get_ext_fullpath½  sÑ   € ð ×(Ñ(¨Ó2ˆØ—.‘. Ó%ˆØ×(Ñ(¨°­Ó5ˆà�|�|ˆ|ô —w‘w—|’| W¨S¨b \°X°JÕ%>Ñ?ˆHÜ—7‘7—<‘< §¡°Ó9Ð9ð —(‘(˜7 1 R˜=Ó)ˆØ×-Ñ-¨jÓ9ˆÜ—g‘g—o‘o h×&>Ñ&>¸wÓ&GÓHˆô �w‰w�|‰|˜KÓ2Ð2r,   c               ó    € V ^8„  d   QhRRRR/# r  r'   )r(   s   "r)   r*   r+   Ø  s   € ÷ 1ñ 1¨ð 1°ñ 1r,   c                óV   € V P                   f   V# V P                   R,           V,           # )zKReturns the fullname of a given extension name.

Adds the `package.` prefixrI   )r3   )rD   r»   s   &&r)   r  Úbuild_ext.get_ext_fullnameØ  s'   € ð �<‰<ÒØˆOà—<‘< #Õ%¨Õ0Ð0r,   c               ó    € V ^8„  d   QhRRRR/# r  r'   )r(   s   "r)   r*   r+   á  s   € ÷ 	4ñ 	4¨ð 	4°ñ 	4r,   c                óŠ   € ^RI Hp VP                  R4      pV! R4      p\        P                  P
                  ! V!  V,           # )zŽConvert the name of an extension (eg. "foo.bar") into the name
of the file from which it will be loaded (eg. "foo/bar.so", or
"foo\bar.pyd").
©rN   rI   Ú
EXT_SUFFIX)rU   rN   rw   rR   rS   rT   )rD   r»   rN   rú   Ú
ext_suffixs   &&   r)   r  Úbuild_ext.get_ext_filenameá  s7   € õ
 	/à—>‘> #Ó&ˆÙ# LÓ1ˆ
Ü�w‰w�|Š|˜XÑ&¨Õ3Ð3r,   c               ó    € V ^8„  d   QhRRRR/# ©r$   rº   r   r%   z	list[str]r'   )r(   s   "r)   r*   r+   ì  s   € ÷ "ñ " ið "°Iñ "r,   c                ój  € V P                  V4      p VP                  R4       RV,           pRV,           pWAP
                  9  d   VP
                  P                  V4       VP
                  #   \         d;    RTP                  R4      P                  RR4      P	                  R4      ,           p L„i ; i)züReturn the list of symbols that a shared extension has to
export.  This either uses 'ext.export_symbols' or, if it's not
provided, "PyInit_" + module_name.  Only relevant on Windows, where
the .pyd file (DLL) must export the module "PyInit_" function.
ÚasciiÚ_ÚU_Úpunycodeó   -ó   _ÚPyInit)Ú_get_module_name_for_symbolÚencodeÚUnicodeEncodeErrorÚreplaceÚdecoderî   r{   )rD   rº   r~   r†   Úinitfunc_names   &&   r)   rù   Úbuild_ext.get_export_symbolsì  s¦   € ð ×/Ñ/°Ó4ˆð	 ð �K‰K˜Ô ð ˜4•ZˆFà  6Õ)ˆØ× 2Ñ 2Ô2Ø×Ñ×%Ñ% mÔ4Ø×!Ñ!Ð!øô "ô 	XØ˜DŸK™K¨
Ó3×;Ñ;¸DÀ$ÓG×NÑNÈwÓWÕWŠFð	Xús   “A- Á-AB2Â1B2c                	ó˜   € VP                   P                  R 4      pVR,          R8X  d   \        V4      ^8¼  d
   VR,          # VR,          # )rI   Ú__init__r   éþÿÿÿ)r~   rw   r¯   )rD   rº   Úpartss   && r)   r3  Ú%build_ext._get_module_name_for_symbol  s@   € ð —‘—‘˜sÓ#ˆØ��9˜
Ô"¤s¨5£z°Q¤Ø˜•9ÐØ�R�yÐr,   c               ó    € V ^8„  d   QhRRRR/# r*  r'   )r(   s   "r)   r*   r+   
  s   € ÷ 6ñ 6 ð 6¨yñ 6r,   c                ó(  € \         P                  R8X  dÃ   \        4       '       g³   ^RIHp \        V P                  V4      '       g„   R\         P                  ^,	           \         P                  ^,	          ^ÿ,           2R\        4       ,          ,           R\        V P                  4      ,          ,           pVP                  V.,           #  VP                  # ^RIHp RpV! R4      '       dp   \        \         R	4      '       g&   \         P                  R
8X  g   \        4       '       d   RpM1R\        P                   9   d   V! R4      ^ 8w  g   V! R4      R
8X  d   RpV'       d$   V! R4      pVP                  RV,           .,           # VP                  # )z»Return the list of libraries to link against when building a
shared extension.  On most platforms, this is just 'ext.libraries';
on Windows, we add the Python library (eg. python20.dll).
rd   )ÚMSVCCompilerrj   ÚtÚ_dr%  FrH   Úgetandroidapilevelrh   TÚ_PYTHON_HOST_PLATFORMÚANDROID_API_LEVELÚMACHDEPÚ	LDVERSION)rP   rQ   r   Ú_msvccompilerrA  ru   r=   Ú
hexversionr   Úboolr;   r7   rU   rN   ÚhasattrrR   Úenviron)rD   rº   rA  Ú	pythonlibrN   Úlink_libpythonÚ	ldversions   &&     r)   rø   Úbuild_ext.get_libraries
  s;  € ô �<‰<˜7Ô"¬8¯:ª:Ý4ä˜dŸm™m¨\×:Ò:àœSŸ^™^¨rÕ1Ð2´C·N±NÀbÕ4HÈDÕ3PÐ2QÐRØœOÓ-Õ-õ.àœT $§*¡*Ó-Õ-õ.ð ð —}‘}¨	 {Õ2Ð2ð ;ðR �}‰}Ðõ/ 3à"ˆNÙÐ0×1Ò1ô œCÐ!5×6Ò6Ü—|‘| xÔ/Ü—z’zà%)‘NØ,´·
±
Ô:ñ 'Ð':Ó;¸qÔ@Ù)¨)Ó4¸Ô@à)-˜çÙ*¨;Ó7�	Ø—}‘}¨°9Õ(<Ð'=Õ=Ð=à�}‰}Ðr,   )rô   r/   r1   r=   r;   r5   r.   r<   r4   r2   r7   r8   r:   r3   rB   r0   r9   r>   r?   r@   r6   rA   )z
build-lib=Úbz(directory for compiled extension modules)zbuild-temp=rB  z1directory for temporary files (build by-products))r2   r¹   ziignore build-lib and put compiled extensions into the source directory alongside your pure Python modules)zdefine=ÚDzC preprocessor macros to define)zundef=ÚUz!C preprocessor macros to undefine)z
libraries=Úlz!external C libraries to link with)zrpath=ÚRz7directories to search for shared C libraries at runtime)zlink-objects=ÚOz2extra explicit link objects to include in the link)r;   Úgz'compile/link with debugging information)r<   Úfz2forcibly build everything (ignore file timestamps))z	compiler=Úczspecify the compiler type)z	parallel=Újznumber of parallel build jobs)úswig-cppNz)make SWIG create C++ files (default is C))z
swig-opts=Nz!list of SWIG command line options)zswig=Nzpath to the SWIG executable)rA   Nz#add user include, library and rpath)r2   r;   r<   r\  rA   )&Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__ÚdescriptionrR   rx   Úsep_byr   r   Ú__annotations__r    r
   r!   rE   ÚstaticmethodrX   rŒ   r¡   r¿   rÄ   rÉ   rž   rÍ   rÎ   Ú
contextlibÚcontextmanagerrÚ   rØ   rò   r  rÇ   r  r  rù   r3  rø   Ú__static_attributes__r'   r,   r)   r   r   &   sz  ‡ ØL€Kð(   §
¡
˜|¨2Ð.€Fð 	HØQàØðÙ)›^Ð,¨Að/ð		
ð	
ð ØØ<¸vÕEð	
ð
 	<Ø<Ø@àØØ<¸vÕEð	
ð
 	SØTØAØLØ7Ø;ØGØAØ6Ø=ðS*	ð ð ó ,ò\,€OÐ(ó ð 
˜$Ð :¸NÐKðW€LÐSó õ)ð> ñ5ó ð5õ0ILõVE õNV òpò	Lõ,ò!ò**ð
 ×ÑñFó ðFõU
òn6òpõ.3õ61õ	4õ"ò*÷6ñ 6r,   r   )+Ú__doc__Ú
__future__r   re  rR   ÚrerP   Úcollections.abcr   Údistutils._logr   Úsiter   Útypingr   Ú	_modifiedr   Ú	ccompilerr   r	   r
   Úcorer   Úerrorsr   r   r   r   r   r   r  r   rU   r   r   r   Úutilr   r   r   ró   r±   r   r'   r,   r)   Ú<module>rt     sn   ðñõ #ã Û 	Û 	Û 
Ý $Ý Ý Ý å #ß ?Ñ ?Ý ÷÷ õ "ß UÑ Uß :Ñ :ð —J’JÐUÓVÐ ôZ�ö Zr,   