+
    êhX  ã                   óð  € ^ RI t ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RI	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HtHtHt ^ RIHt ^ RIHt ^ RIHtHtH t  ^ R	I!H"t" ^ RI#t$^ RI%t%^ RI&t&^ R
I'H(t( ^RI)H*t+ ]&PX                  ! 4       R 4       t-] P\                  R 4       t/] P\                  R 4       t0]&Pb                  Pe                  R4       ! R R]4      4       t3 ! R R]34      t4R# )é    N)Ú	sysconfig©Ú	build_ext)ÚDistribution)ÚCompileErrorÚDistutilsPlatformErrorÚDistutilsSetupErrorÚUnknownFileError)Ú	Extension)Úmissing_compiler_executable)ÚTempdirManagerÚcopy_xxmodule_cÚfixup_build_ext)ÚStringIO)Úsupport)Úpy39c              #   ó  "  € V P                   pVP                  4       Vn        \        P                  ! VP                  4      Vn        ^ RIHp \        P                  pVP                  4       \        n	        \        P                  Vn	        VP
                  ;_uu_ 4        Rx € RRR4       V\        n	        W2n	        \        P                  R8X  d   \        P                  ! ^4       R# R#   + '       g   i     LP; i5i)r   r   NÚcygwin)ÚinstanceÚmkdtempÚtmp_dirÚpathÚPathÚtmp_pathÚdistutils.commandr   ÚsiteÚ	USER_BASEÚsysÚplatformÚtimeÚsleep)ÚrequestÚselfr   Úorig_user_bases   &   ÚL/usr/lib/python3/dist-packages/setuptools/_distutils/tests/test_build_ext.pyÚuser_site_dirr&   $   s›   é € à×Ñ€DØ—<‘<“>€D„LÜ—I’I˜dŸl™lÓ+€D„MÝ+ä—^‘^€Nà—\‘\“^„D„NÜŸ.™.€IÔð
 
��‹Û÷ 
ð $„D„NØ(Ôä
‡|�|�xÔÜ�
Š
�1Žñ  ÷ 
�üs   ‚BDÂ!C.Â&ADÃ.C>	Ã9Dc              #   ó^  "  € \         P                  ! V 4      ;_uu_ 4        \        W4      ;_uu_ 4       p\         P                  ! V4      ;_uu_ 4        R x € R R R 4       R R R 4       R R R 4       R #   + '       g   i     L"; i  + '       g   i     L-; i  + '       g   i     R # ; i5i©N)Úimport_helperÚCleanImportÚextension_redirectÚDirsOnSysPath)Únamer   Únew_paths   && r%   Úsafe_extension_importr/   =   sd   é € ä	×	"Ò	" 4×	(Õ	(Ü ×+Ô+¨xÜ×,Ò,¨X×6Õ6Û÷ 7÷ ,÷ 
)Ñ	(ç6×6ú÷ ,×+ú÷ 
)×	(Ð	(üsK   ‚B-¡BµB	ÁA3ÁB	Á!BÁ)
B-Á3BÁ>B	ÂBÂBÂB*	Â$	B-c              #  ón  "  € \         P                  ! 4       R8w  d   \        P                   R8w  d   Vx € R# \        P                  ! V4      ;_uu_ 4        \
        P                  P                  V 4      pRRR4       \        P                  P                  XP                  4      p\        P                  ! RR7      p\        P                  P                  V\        P                  P                  V4      4      p\        P                   ! VP                  V4       Vx € R#   + '       g   i     L´; i5i)z±
Tests will fail to tear down an extension module if it's been imported.

Before importing, copy the file to a temporary directory that won't
be cleaned up. Yield the new path.
ÚWindowsr   NÚdeleteme)Úprefix)r   Úsystemr   r)   r,   Ú	importlibÚutilÚ	find_specÚosr   ÚbasenameÚoriginÚtempfiler   ÚjoinÚshutilÚcopy)Úmodr   ÚspecÚfilenameÚ	trash_dirÚdests   &&    r%   r+   r+   E   s½   é € ô ‡‚Ó˜IÔ%¬#¯,©,¸(Ô*BØŠ
ÙÜ	×	$Ò	$ T×	*Õ	*Ü�~‰~×'Ñ'¨Ó,ˆ÷ 
+ä�w‰w×Ñ §¡Ó,€HÜ× Ò ¨
Ô3€IÜ�7‰7�<‰<˜	¤2§7¡7×#3Ñ#3°HÓ#=Ó>€DÜ
‡K‚K�—‘˜TÔ"Ø
„O÷ 
+×	*üs   ‚AD5Á D"Á6B,D5Ä"D2	Ä-D5r&   c                   ó>  a € ] tR t^Zt o R t]P                  P                  RR.4      R 4       t]	R 4       t
R tR tR tR	 tR
 tR tR tR tR tR tR t]P                  P-                  R4      ]P                  P/                  R4      R 4       4       t]P                  P-                  R4      ]P                  P/                  R4      R 4       4       t]P                  P-                  R4      ]P                  P/                  R4      R 4       4       tR tRtV tR# )ÚTestBuildExtc                ó   € \        V/ VB # r(   r   )r#   ÚargsÚkwargss   &*,r%   r   ÚTestBuildExt.build_ext\   s   € Ü˜$Ð) &Ñ)Ð)ó    Úcopy_soFc                óú  € \        4        \        V P                  4       \        P                  P                  V P                  R 4      p\        RV.4      p\        P                  R8w  dµ   V'       g   \        RV.R.R.R.R7      pM—\        P                  R8X  dƒ   \        P                  ! R4       Uu0 uF"  p\        P                  P                  V4      kK$  	  pp\        VR R	7      p\        P                  ! VR,          R
4       \        RV.R.R.R.R7      p\        RRRV./4      pV P                  Vn        V P#                  V4      p\%        V4       V P                  Vn        V P                  Vn        \        P*                  p\,        P.                  '       g   \1        4       \        n         VP3                  4        VP5                  4        V\        n        \7        RV P                  4      ;_uu_ 4        V P9                  V4       RRR4       \        P                  R8X  d#   V'       d   \        P:                  ! R
4       R# R# R# u upi   T\        n        i ; i  + '       g   i     L^; i)z
xxmodule.cÚxxÚwin32ú/usr/libÚz)Úlibrary_dirsÚ	librariesÚruntime_library_dirsÚlinuxz/usr/lib*/libz.so*c                 ó   € \        V 4      # r(   )Úlen)Úlib_paths   &r%   Ú<lambda>Ú-TestBuildExt.test_build_ext.<locals>.<lambda>r   s   € ¼sÀ8¼}rJ   )Úkeyz/tmp/libxx_z.soú/tmpÚxx_zr-   Úext_modulesNéÿÿÿÿ)r   r   r   r8   r   r<   r   r   r   ÚglobÚiglobÚrealpathÚsortedr=   Úcopyfiler   Úpackage_dirr   r   Ú	build_libÚ
build_tempÚstdoutr   Úverboser   Úensure_finalizedÚrunr/   Ú_test_xxÚunlink)	r#   rK   Úxx_cÚxx_extr-   Úlibz_soÚdistÚcmdÚ
old_stdouts	   &&       r%   Útest_build_extÚTestBuildExt.test_build_ext_   sÛ  € ä#Ô%Ü˜Ÿ™Ô%Ü�w‰w�|‰|˜DŸL™L¨,Ó7ˆÜ˜4 $ Ó(ˆÜ�<‰<˜7Ô"ßÜ"ØØ�FØ", Ø"˜eØ*4¨ô‘ô —‘ Ô(ä7;·z²zÐBVÔ7WóÙ7W¨t”B—G‘G×$Ñ$ TÖ*Ñ7Wð ð ô ! Ñ.LÔM�Ü—’ ¨¥Ð->Ô?ä"ØØ�FØ"( Ø%˜hØ*0¨ô�ô ˜V T¨=¸6¸(ÐCÓDˆØŸ<™<ˆÔØ�n‰n˜TÓ"ˆÜ˜ÔØŸ™ˆŒØŸ™ˆŒä—Z‘Zˆ
Ü��ˆä!›ŒCŒJð	$Ø× Ñ Ô"Ø�G‰GŒIà#ŒCŒJä" 4¨¯©×6Õ6Ø�M‰M˜'Ô"÷ 7ô �<‰<˜7Ô"§wÜ�IŠIÐ'Ö(ñ (/Ñ"ùòCøð8 $ŒC�Júç6×6ús   Â6(IÆ9 I ÈI*ÉI'É*I:	c                óÎ  € ^ RI pR F  p\        W4      '       d   K  Q h	  VP                  ^^4      ^8X  g   Q hVP                  ^^4      ^8X  g   Q hVP                  4       P	                  4       e   Q h\
        P                  '       d   RpVP                  V8X  g   Q h\        VP                  4       VP                  4      '       g   Q h\        VP                  4       VP                  4      '       g   Q h\        P                  R8X  dÓ   \        P                  ! RRVP                  .RR7      p^ RIpVP!                  V4       VP#                  R4       UUu. uFE  pR	V9   g
   R
V9   g   K  VP#                  4       ^,          ^R P#                  R4       F  pVNK  	  KG  	  pppV '       g$   VP!                  V4       RV9  d   RV9  g   Q hR# RV9   g   Q hR# R# u uppi )r   Nz/This is a template module just for instruction.rT   Úreadelfz-dT)Úuniversal_newlinesÚ
ÚRPATHÚRUNPATHÚ:rO   z
/usr/lib64r[   )ÚerrorÚfooÚnewÚrojr^   )rM   Úhasattrr}   r~   Údemor   ÚHAVE_DOCSTRINGSÚ__doc__Ú
isinstanceÚNullÚStrr   r   Ú
subprocessÚcheck_outputÚ__file__ÚpprintÚsplit)	rK   rM   ÚattrÚdocÚ
so_headersrŠ   ÚlineÚrpathÚrpathss	   &        r%   rk   ÚTestBuildExt._test_xx“   s´  € ãã2ˆDÜ˜2×$Ô$Ð$Ð$ñ 3ð �v‰v�a˜‹|˜qÔ Ð Ð Ø�v‰v�b˜"‹~ Ô#Ð#Ð#Ø�v‰v‹x�}‰}‹Ò&Ð&Ð&Ü×"×"Ð"ØCˆCØ—:‘: Ô$Ð$Ð$Ü˜"Ÿ'™'›) R§W¡W×-Ò-Ð-Ð-Ü˜"Ÿ&™&›( B§F¡F×+Ò+Ð+Ð+ä�<‰<˜7Ô"Ü#×0Ò0Ø˜D "§+¡+Ð.À4ôˆJó à�M‰M˜*Ô%ð '×,Ñ,¨TÔ2ôá2�DØ˜d”? i°4Ñ&7ô ð "ŸZ™Z›\¨!�_¨Q¨rÐ2×8Ñ8¸Ö=�Eó ñ >ñ Ù2ð ñ ÷ Ø—‘˜fÔ%à!¨Ô/°LÈÔ4NÐNÐNÑ4Nð  Ô'Ð'Ò'ñ' #ùós   ÅG!Å06G!c                ór  € \        R R/4      pV P                  V4      p\        P                  pR\        n        ^ RIHp VP                  R4      pRVR&    VP                  4        V\        n        Vf   VR MWTR&    \        VP                  4      ^ 8”  g   Q hR#   T\        n        Tf   TR i YTR&   i ; i)r-   rM   Úsunos)Ú_config_varsÚPy_ENABLE_SHAREDTN)
r   r   r   r   Údistutils.sysconfigr•   Úgetri   rV   rQ   )r#   rp   rq   Úoldr•   Úold_vars   &     r%   Útest_solaris_enable_sharedÚ'TestBuildExt.test_solaris_enable_shared¹   s¹   € Ü˜V T˜NÓ+ˆØ�n‰n˜TÓ"ˆÜ�l‰lˆàŒŒÝ4à×"Ñ"Ð#5Ó6ˆØ+/ˆÐ'Ñ(ð	;Ø× Ñ Ô"àŒCŒLØŠØ Ð!3Ñ4à3:Ð/Ò0ô �3×#Ñ#Ó$ qÔ(Ð(Ò(øð ŒCŒLØŠØ Ð!3Ñ4à3:Ð/Ò0ús   ÁB ÂB6c                óF  € ^ RI p\        RR/4      pV P                  V4      pVP                   UUUu. uF  w  rEqdNK	  	  ppppRV9   g   Q hRVn        \
        P                  P                  VP                  R4      p\
        P                  P                  VP                  R4      p	\
        P                  ! V4       \
        P                  ! V	4       VP                  4        WƒP                  9   g   Q hWƒP                  9   g   Q hW“P                  9   g   Q hR# u upppi )r   Nr-   rM   ÚuserTÚlibÚinclude)r   r   r   Úuser_optionsrž   r8   r   r<   r   Úmkdirri   rQ   r�   Úinclude_dirs)
r#   r   rp   rq   r-   ÚshortÚlabelÚoptionsrŸ   Úincls
   &         r%   Útest_user_siteÚTestBuildExt.test_user_siteÏ   sí   € Ûä˜V T˜NÓ+ˆØ�n‰n˜TÓ"ˆð 36×2BÒ2BÕCÑ2BÑ.˜D¨’4Ñ2BˆÒCØ˜Ô Ð Ð ð ˆŒô �g‰g�l‰l˜4Ÿ>™>¨5Ó1ˆÜ�w‰w�|‰|˜DŸN™N¨IÓ6ˆÜ
�Š�ŒÜ
�Š�Œð 	×ÑÔð ×&Ñ&Ô&Ð&Ð&Ø—i‘iÔÐÐØ×'Ñ'Ô'Ð'Ò'ùô' Ds   ³Dc                óÎ  € \        R R.RR7      .p\        RRRV/4      pV P                  V4      pVP                  4        \        P
                  ! \        \        34      ;_uu_ 4        VP                  4        RRR4       \        R R.RR7      .p\        RRRV/4      pV P                  V4      pVP                  4        VP                  4        R#   + '       g   i     Lb; i)	r}   ÚxxxF©Úoptionalr-   rM   r]   NT)	r   r   r   ri   ÚpytestÚraisesr
   r   rj   ©r#   Úmodulesrp   rq   s   &   r%   Útest_optional_extensionÚ$TestBuildExt.test_optional_extensionë   s»   € ô ˜U U G°eÔ<Ð=ˆÜ˜V T¨=¸'ÐBÓCˆØ�n‰n˜TÓ"ˆØ×ÑÔÜ�]Š]Ô,¬lÐ;×<Õ<Ø�G‰GŒI÷ =ô ˜U U G°dÔ;Ð<ˆÜ˜V T¨=¸'ÐBÓCˆØ�n‰n˜TÓ"ˆØ×ÑÔØ�‰Ž	÷ =×<ús   Á)CÃC$	c                ó  € \        R R.RR7      .p\        RRRV/4      pV P                  V4      pVP                  4        \        P
                  ! 4       pVP                  \        P                  P                  4       F  pWSP                  9   d   K  Q h	  \        P
                  ! RR7      pVP                  \        P                  P                  4       F  pWSP                  9   d   K  Q h	  V P                  V4      pR	Vn        VP                  4        VP                  . RO8X  g   Q hV P                  V4      pR
\        P                   R2Vn        VP                  4        R
VP                  9   g   Q hRVP                  9   g   Q hV P                  V4      pR\        P                   R2Vn        VP                  4        VP                  RR.8X  g   Q h\        V4      pRVn        VP                  4        VP                  . RO8X  g   Q hV P                  V4      pRVn        VP                  4        VP                  RR.8X  g   Q hV P                  V4      pRVn        VP                  4        VP                   RR.8X  g   Q hV P                  V4      pRVn        VP                  4        VP"                  . 8X  g   Q hV P                  V4      pRVn        VP                  4        VP"                  RR.8X  g   Q hR# )r}   r«   Fr¬   r-   rM   r]   T)Úplat_specificzmy_lib, other_lib lastlibÚ
my_lib_dirÚother_lib_dirÚoneÚtwozone two,threezone,twoÚ1Nz1 2Ú2)Úmy_libÚ	other_libÚlastlib)r¸   r¹   Úthree)r¸   rº   )r¹   rº   )r   r   r   Úfinalize_optionsr   Úget_python_incr‹   r8   r   Úpathsepr£   rR   rQ   r�   Úlink_objectsÚdefineÚundefÚ	swig_opts)r#   r±   rp   rq   Ú
py_includeÚpÚplat_py_includes   &      r%   Útest_finalize_optionsÚ"TestBuildExt.test_finalize_optionsû   sª  € ô ˜U U G°eÔ<Ð=ˆÜ˜V T¨=¸'ÐBÓCˆØ�n‰n˜TÓ"ˆØ×ÑÔä×-Ò-Ó/ˆ
Ø×!Ñ!¤"§'¡'§/¡/Ö2ˆAØ×(Ñ(Ö(Ð(Ð(ñ 3ô $×2Ò2ÀÔFˆØ ×&Ñ&¤r§w¡w§¡Ö7ˆAØ×(Ñ(Ö(Ð(Ð(ñ 8ð
 �n‰n˜TÓ"ˆØ3ˆŒØ×ÑÔØ�}‰}Ò BÔBÐBÐBð �n‰n˜TÓ"ˆØ'¬¯
©
 |°=ÐAˆÔØ×ÑÔØ˜s×/Ñ/Ô/Ð/Ð/Ø #×"2Ñ"2Ô2Ð2Ð2ð �n‰n˜TÓ"ˆØœ"Ÿ*™*˜ SÐ)ˆŒ	Ø×ÑÔØ�y‰y˜U E˜NÔ*Ð*Ð*ô ˜‹oˆØ*ˆÔØ×ÑÔØ×ÑÒ#:Ô:Ð:Ð:ð �n‰n˜TÓ"ˆØˆŒ
Ø×ÑÔØ�z‰z˜l¨LÐ9Ô9Ð9Ð9ð �n‰n˜TÓ"ˆØˆŒ	Ø×ÑÔØ�y‰y˜U E˜NÔ*Ð*Ð*ð �n‰n˜TÓ"ˆØˆŒØ×ÑÔØ�}‰} Ô"Ð"Ð"à�n‰n˜TÓ"ˆØˆŒØ×ÑÔØ�}‰}  c 
Ô*Ð*Ò*rJ   c           
     ó0  € \        4       pV P                  V4      pVP                  4        \        P                  ! \
        4      ;_uu_ 4        VP                  R 4       RRR4       R
R .p\        P                  ! \
        4      ;_uu_ 4        VP                  V4       RRR4       R.p\        P                  ! \
        4      ;_uu_ 4        VP                  V4       RRR4       R.p\        P                  ! \
        4      ;_uu_ 4        VP                  V4       RRR4       RRR.RR RR/3.pVP                  V4       V^ ,          p\        V\        4      '       g   Q hVP                  R 8X  g   Q h\        VR4      '       d   Q hRRR.RR RRRRR ./3.p\        P                  ! \
        4      ;_uu_ 4        VP                  V4       RRR4       RR.V^ ,          ^,          R&   VP                  V4       V^ ,          P                  R	.8X  g   Q hV^ ,          P                  R.8X  g   Q hR#   + '       g   i     ELÞ; i  + '       g   i     EL²; i  + '       g   i     EL‡; i  + '       g   i     EL\; i  + '       g   i     L¾; i)r}   NÚbarÚ úfoo.barÚsourcesrR   ÚsomeÚmacrosÚ3)rÍ   r}   rÍ   )zfoo-barrÎ   )rÏ   rÎ   )rº   r»   rÓ   )rº   r»   )rÓ   )r   r   rÀ   r®   r¯   r	   Úcheck_extensions_listr„   r   rR   r€   Úundef_macrosÚdefine_macros)r#   rp   rq   ÚextsÚexts   &    r%   Útest_check_extensions_listÚ'TestBuildExt.test_check_extensions_listC  s+  € Ü‹~ˆØ�n‰n˜TÓ"ˆØ×ÑÔô �]Š]Ô.×/Õ/Ø×%Ñ% eÔ,÷ 0ð
 & uÐ-ˆÜ�]Š]Ô.×/Õ/Ø×%Ñ% dÔ+÷ 0ð  Ð ˆÜ�]Š]Ô.×/Õ/Ø×%Ñ% dÔ+÷ 0ð
  Ð ˆÜ�]Š]Ô.×/Õ/Ø×%Ñ% dÔ+÷ 0ð ˜Y¨¨¨k¸5À&È%ÐPÐQÐRˆØ×!Ñ! $Ô'Ø�1�gˆÜ˜#œy×)Ò)Ð)Ð)ð
 �}‰} Ô%Ð%Ð%Ü˜3 ×'Ò'Ð'Ð'ð
 à ˜tØ Ø˜EØ˜°Ð6ð	ðð

ˆô �]Š]Ô.×/Õ/Ø×%Ñ% dÔ+÷ 0ð !+¨FÐ3ˆˆQ���
�8ÑØ×!Ñ! $Ô'Ø�A�w×#Ñ#¨ uÔ,Ð,Ð,Ø�A�w×$Ñ$¨¨Ô4Ð4Ò4÷i 0×/Ð/ú÷ 0×/Ð/ú÷ 0×/Ð/ú÷ 0×/Ð/ú÷6 0×/ús<   ÁH5ÂI	ÃIÄI1Æ=JÈ5I	É	I	ÉI.	É1J	ÊJ	c                ó¶   € \        R R.RR7      .p\        RRRV/4      pV P                  V4      pVP                  4        VP	                  4       R.8X  g   Q hR# )r}   r«   Fr¬   r-   rM   r]   N)r   r   r   ri   Úget_source_filesr°   s   &   r%   Útest_get_source_filesÚ"TestBuildExt.test_get_source_files  s[   € Ü˜U U G°eÔ<Ð=ˆÜ˜V T¨=¸'ÐBÓCˆØ�n‰n˜TÓ"ˆØ×ÑÔØ×#Ñ#Ó%¨%¨Ô0Ð0Ò0rJ   c                ó  € \        R R.RR7      \        RR.RR7      .p\        RRRV/4      pV P                  V4      pVP                  4        \        P
                  ! R	VP                  V^ ,          P                  4      4      '       g   Q h\        P
                  ! R
VP                  V^,          P                  4      4      '       g   Q hVP                  V^ ,          4      R.8X  g   Q hVP                  V^,          4      R.8X  g   Q hR# )r}   ÚaaaFr¬   u   fÃ¶Ã¶Úuuur-   rM   r]   zfoo(_d)?\..*u   fÃ¶Ã¶(_d)?\..*Ú
PyInit_fooÚPyInitU_f_1gaaN)	r   r   r   ri   ÚreÚsearchÚget_ext_filenamer-   Úget_export_symbolsr°   s   &   r%   Útest_unicode_module_namesÚ&TestBuildExt.test_unicode_module_names†  sé   € ä�e˜e˜W¨uÔ5Ü�g ˜w°Ô7ð
ˆô ˜V T¨=¸'ÐBÓCˆØ�n‰n˜TÓ"ˆØ×ÑÔÜ�yŠy˜¨#×*>Ñ*>¸wÀq½z¿¹Ó*O×PÒPÐPÐPÜ�yŠyÐ*¨C×,@Ñ,@ÀÈÅÇÁÓ,Q×RÒRÐRÐRØ×%Ñ% g¨a¥jÓ1°l°^ÔCÐCÐCØ×%Ñ% g¨a¥jÓ1Ð6FÐ5GÔGÐGÒGrJ   c                ó  € \        R R.4      \        RR.4      .p\        RRRV/4      pV P                  V4      pVP                  4        VP	                  V^ ,          4      R.8X  g   Q hVP	                  V^,          4      R.8X  g   Q hR	# )
zfoo.__init__rà   u   fÃ¶Ã¶.__init__rá   r-   rM   r]   râ   rã   N)r   r   r   ri   rç   r°   s   &   r%   Útest_export_symbols__init__Ú(TestBuildExt.test_export_symbols__init__“  s“   € ô �n u gÓ.ÜÐ&¨¨Ó0ð
ˆô ˜V T¨=¸'ÐBÓCˆØ�n‰n˜TÓ"ˆØ×ÑÔØ×%Ñ% g¨a¥jÓ1°l°^ÔCÐCÐCØ×%Ñ% g¨a¥jÓ1Ð6FÐ5GÔGÐGÒGrJ   c                ó°   € \        4       pV P                  V4      pR Vn        VP                  4        VP	                  4        VP                  R 8X  g   Q hR# )ÚunixN)r   r   Úcompilerri   rj   )r#   rp   rq   s   &  r%   Útest_compiler_optionÚ!TestBuildExt.test_compiler_option   sG   € ô ‹~ˆØ�n‰n˜TÓ"ˆØˆŒØ×ÑÔØ�‰Œ	Ø�|‰|˜vÔ%Ð%Ò%rJ   c                óš  € \        4        V P                  4       p\        P                  P	                  VR 4      pV P                  VR4       \        RV.RR7      p\        RRRV./4      pV P                  V4      p\        V4       VP                  4        \        VP                  4       4      ^8X  g   Q h\        P                  P	                  V P                  R4      Vn        \        P                  P	                  V P                  R	4      Vn        \        P                  P!                  V P                  4       4      p\        P"                  ! 4       p\        P$                  ! V4        R
Vn        VP)                  4        VP                  4       ^ ,          p\        P$                  ! V4       \        P                  P+                  V4      '       g   Q h\,        P.                  ! R4      p	VP1                  V	4      '       g   Q h\        P                  P3                  V4      p
W¦8X  g   Q hRVn        RVn        VP)                  4        VP                  4       ^ ,          p\        P                  P+                  V4      '       g   Q hVP1                  V	4      '       g   Q h\        P                  P3                  V4      p
W¥P                  8X  g   Q hVP7                  R4      pRR/Vn        VP;                  R4      p\        P                  P=                  V4      ^ ,          pWÅP                  8X  g   Q hR
Vn        \        P                  P!                  V P                  4       4      p\        P"                  ! 4       p\        P$                  ! V4        VP;                  R4      p\        P$                  ! V4       \        P                  P=                  V4      ^ ,          p\        P                  P=                  V4      R,          pVR8X  g   Q hR#   \        P$                  ! T4       i ; i  \        P$                  ! T4       i ; i)zfoo.czvoid PyInit_foo(void) {}
r}   Fr¬   r-   rM   r]   ÚbuildÚtemptTÚ
EXT_SUFFIXNÚbuild_pyrÎ   rÍ   r^   )r   r   r8   r   r<   Ú
write_filer   r   r   r   ri   rV   Úget_outputsr   re   rf   ra   ÚgetcwdÚchdirÚinplacerj   Úexistsr   Úget_config_varÚendswithÚdirnamerï   Úget_finalized_commandrd   Úget_ext_fullpathr‹   )r#   r   Úc_filerØ   rp   rq   Úother_tmp_dirÚold_wdÚso_fileÚ
ext_suffixÚso_dirrö   r   Úlastdirs   &             r%   Útest_get_outputsÚTestBuildExt.test_get_outputs«  s  € Ü#Ô%Ø—,‘,“.ˆÜ—‘—‘˜g wÓ/ˆØ�‰˜Ð <Ô=Ü˜ ˜x°%Ô8ˆÜ˜V T¨=¸3¸%Ð@ÓAˆØ�n‰n˜TÓ"ˆÜ˜ÔØ×ÑÔÜ�3—?‘?Ó$Ó%¨Ô*Ð*Ð*äŸ™Ÿ™ T§\¡\°7Ó;ˆŒÜŸ™Ÿ™ d§l¡l°GÓ<ˆŒô Ÿ™×(Ñ(¨¯©«Ó8ˆÜ—’“ˆÜ
�Š�Ôð	ØˆCŒKØ�G‰GŒIØ—o‘oÓ'¨Õ*ˆGä�HŠH�VÔÜ�w‰w�~‰~˜g×&Ò&Ð&Ð&Ü×-Ò-¨lÓ;ˆ
Ø×Ñ 
×+Ò+Ð+Ð+Ü—‘—‘ Ó)ˆØÔ&Ð&Ð&àˆŒØˆŒØ�‰Œ	Ø—/‘/Ó# AÕ&ˆÜ�w‰w�~‰~˜g×&Ò&Ð&Ð&Ø×Ñ 
×+Ò+Ð+Ð+Ü—‘—‘ Ó)ˆØŸ™Ô&Ð&Ð&ð ×,Ñ,¨ZÓ8ˆØ " E˜{ˆÔØ×#Ñ# EÓ*ˆä�w‰w�}‰}˜TÓ" 1Õ%ˆØ—}‘}Ô$Ð$Ð$ð ˆŒÜŸ™×(Ñ(¨¯©«Ó8ˆÜ—’“ˆÜ
�Š�Ôð	Ø×'Ñ'¨Ó.ˆDä�HŠH�VÔä�w‰w�}‰}˜TÓ" 1Õ%ˆÜ—'‘'—-‘- Ó% bÕ)ˆØ˜%ÔÐÒøôI �HŠH�VÕûô@ �HŠH�VÕús   Å/.P ÎP2 ÐP/Ð2Q
c                óº  € \         P                  ! R 4      p\        4       pV P                  V4      pRVn        RR/VP
                  n        RR.VP
                  n        \        P                  ! 4       p\        P                  P                  VRRRV,           4      pVP                  R4      pWV8X  g   Q hRVn        \        P                  P                  VR	4      Vn        \        P                  P                  VR	RRV,           4      pVP                  R4      pWV8X  g   Q hVP                  R
4      p/ Vn        RR.VP
                  n        VP                  R4      p\        P                  P                  VR	RRRV,           4      pWV8X  g   Q hRVn        VP                  R4      p\        P                  P                  VRRRV,           4      pWV8X  g   Q hR# )rõ   TrÎ   ÚsrcÚlxmlz	lxml.htmlÚetreez
lxml.etreeFÚtmpdirrö   Útwistedztwisted.runner.portmapÚrunnerÚportmapN)r   rý   r   r   rû   Údistributionrd   Úpackagesr8   rù   r   r<   r  re   r   )r#   rØ   rp   rq   ÚcurdirÚwantedr   rö   s   &       r%   Útest_ext_fullpathÚTestBuildExt.test_ext_fullpathê  s“  € Ü×&Ò& |Ó4ˆô
 ‹~ˆØ�n‰n˜TÓ"ˆØˆŒØ(*¨E {ˆ×ÑÔ$Ø%+¨[Ð$9ˆ×ÑÔ!Ü—’“ˆÜ—‘—‘˜f e¨V°W¸sµ]ÓCˆØ×#Ñ# LÓ1ˆØŒ~Ðˆ~ð ˆŒÜŸ™Ÿ™ V¨XÓ6ˆŒÜ—‘—‘˜f h°¸À#½ÓFˆØ×#Ñ# LÓ1ˆØŒ~Ðˆ~ð ×,Ñ,¨ZÓ8ˆØ!ˆÔØ%.Ð0HÐ$Iˆ×ÑÔ!Ø×#Ñ#Ð$<Ó=ˆÜ—‘—‘˜f h°	¸8ÀYÐQTÅ_ÓUˆØŒ~Ðˆ~ð ˆŒØ×#Ñ#Ð$<Ó=ˆÜ—‘—‘˜f i°¸9Às½?ÓKˆØŒ~ÐŠ~rJ   zplatform.system() != "Darwin"Úsave_envc                ó*   € V P                  R R4       R# )z==N)Ú_try_compile_deployment_target©r#   s   &r%   Útest_deployment_target_defaultÚ+TestBuildExt.test_deployment_target_default  s   € ð 	×+Ñ+¨D°$Ö7rJ   c                ó¨   € \         P                  ! \        4      ;_uu_ 4        V P                  R R4       RRR4       R#   + '       g   i     R# ; i)Ú>z10.1N)r®   r¯   r   r  r  s   &r%   Útest_deployment_target_too_lowÚ+TestBuildExt.test_deployment_target_too_low  s3   € ô
 �]Š]Ô1×2Õ2Ø×/Ñ/°°VÔ<÷ 3×2×2Ò2ús   £A Á A	c                ó   € \         P                  ! R 4      pV'       dk   VP                  R4       Uu. uF  p\        V4      NK  	  ppVR;;,          ^,          uu&   RP	                  R V 4       4      pV P                  RV4       R# R# u upi )ÚMACOSX_DEPLOYMENT_TARGETÚ.c              3   ó8   "  € T F  p\        V4      x € K  	  R # 5ir(   )Ústr)Ú.0Úis   & r%   Ú	<genexpr>Ú@TestBuildExt.test_deployment_target_higher_ok.<locals>.<genexpr>*  s   é € Ð ;±¨A¤ Q§ ³ùs   ‚Ú<Nr^   )r   rý   r‹   Úintr<   r  )r#   Ú	deptargetÚxs   &  r%   Ú test_deployment_target_higher_okÚ-TestBuildExt.test_deployment_target_higher_ok  su   € ô ×,Ò,Ð-GÓHˆ	ßà)2¯©¸Ô)=Ó>Ñ)= Aœ˜QžÑ)=ˆIÐ>Ø�b�M˜QÕ‹MØŸ™Ñ ;±Ó ;Ó;ˆIØ×/Ñ/°°YÖ?ñ ùâ>s   ²Bc                óB  € Vf8   \         P                  P                  R4      '       d   \         P                  R MV\         P                  R&   \        P                  P                  R\        P                  ! RV R24      /V P                  4       \        P                  ! R4      p\        \        \        VP                  R4      R,          4      4      pVR,          R8  d   RpM\        V4      ^8¼  d   R	pMR
pVP                   ! V!  p\#        RV P                  R,          .RV 2.R7      p\%        RRRV./4      pV P&                  Vn        V P+                  V4      pV P&                  Vn        V P&                  Vn         \0        P2                  p\4        P6                  '       g   \9        4       \0        n         VP;                  4        VP=                  4        V\0        n        R #   T\0        n        i ; i  \>         d    T PA                  R4        R # i ; i)Nr$  zdeptargetmodule.czt                    #include <AvailabilityMacros.h>

                    int dummy;

                    #if TARGET z˜ MAC_OS_X_VERSION_MIN_REQUIRED
                    #else
                    #error "Unexpected target"
                    #endif

                    r%  :r   é   N:Nr3  Nz{:02}{:01}0z{:02}{:02}00z	{:02}0000r.  z	-DTARGET=)Úextra_compile_argsr-   r]   z*Wrong deployment target during compilation)é
   r5  )!r8   Úenvironr˜   Újaracor   ró   ÚtextwrapÚdedentr   r   rý   ÚtupleÚmapr-  r‹   rV   Úformatr   r   r   rd   r   re   rf   r   rg   r   rh   r   ri   rj   r   Úfail)r#   ÚoperatorÚtargetÚtmplÚdeptarget_extrp   rq   rr   s   &&&     r%   r  Ú+TestBuildExt._try_compile_deployment_target-  sÁ  € ØŠ>Ü�z‰z�~‰~Ð8×9Ò9Ü—J‘JÐ9Ð:øà5;ŒB�J‰JÐ1Ñ2ä�‰×Ñà#¤X§_¢_ð : ð
 !)˜zð *ð
6ó 
&ðð �M‰Mô	
ô$ ×)Ò)Ð*DÓEˆÜ”sœ3 §¡¨SÓ 1°#Õ 6Ó7Ó8ˆð �"�:˜Ô à ‰Dô �6‹{˜aÔØ%‘ð #�Ø—’˜fÑ%ˆÜ!ØØ�]‰]Ð0Õ0Ð1Ø"+¨F¨8Ð 4Ð5ô
ˆô
 ˜V [°-À-ÀÐQÓRˆØŸ<™<ˆÔØ�n‰n˜TÓ"ˆØŸ™ˆŒØŸ™ˆŒð	DÜŸ™ˆJÜ—?—?�?ä%›Z””
ð(Ø×$Ñ$Ô&Ø—‘”	à'”–
ø˜Z”•
ûäô 	DØ�I‰IÐB×Cð	Dús*   Æ9G> Ç G. Ç!G> Ç.G;Ç;G> Ç>HÈH© N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   r®   ÚmarkÚparametrizers   Ústaticmethodrk   r›   r¨   r²   rÊ   rÙ   rÝ   rè   rë   rð   r	  r  ÚskipifÚusefixturesr  r!  r0  r  Ú__static_attributes__Ú__classdictcell__)Ú__classdict__s   @r%   rE   rE   Z   sF  ø‡ € ò*ð ‡[�[×Ñ˜Y¨¨Ó0ñ1)ó 1ð1)ðf ñ"(ó ð"(òJ)ò,(ò8ò F+òP:5òx1òHòHò	&ò= ò~#ðJ ‡[�[×ÑÐ7Ó8Ø‡[�[×Ñ˜ZÓ(ñ8ó )ó 9ð8ð ‡[�[×ÑÐ7Ó8Ø‡[�[×Ñ˜ZÓ(ñ=ó )ó 9ð=ð ‡[�[×ÑÐ7Ó8Ø‡[�[×Ñ˜ZÓ(ñ
@ó )ó 9ð
@÷@Dð @DrJ   rE   c                   ó2   a a€ ] tR tRt oV 3R ltRtVtV ;t# )ÚTestParallelBuildExtip  c                ó6   <€ \         SV `  ! V/ VB pR Vn        V# )T)Úsuperr   Úparallel)r#   rG   rH   r   Ú	__class__s   &*, €r%   r   ÚTestParallelBuildExt.build_extq  s%   ø€ Ü‘GÒ% tÐ6¨vÑ6ˆ	Ø!ˆ	ÔØÐrJ   rC  )rD  rE  rF  rG  r   rM  rN  Ú__classcell__)rU  rO  s   @@r%   rQ  rQ  p  s   ù‡ € ÷õ rJ   rQ  )5Ú
contextlibr_   r5   Úos.pathr8   r   rä   r=   r   r‡   r   r;   r8  r    Ú	distutilsr   Údistutils.command.build_extr   Údistutils.corer   Údistutils.errorsr   r   r	   r
   Údistutils.extensionr   Údistutils.testsr   Údistutils.tests.supportr   r   r   Úior   Újaraco.pathr7  r   r®   Útestr   Úcompatr   r)   Úfixturer&   Úcontextmanagerr/   r+   rH  rL  rE   rQ  rC  rJ   r%   Ú<module>rg     së   ðÛ Û Û Û Û Û 	Û Û Û Û 
Û Û Û Ý Ý 1Ý '÷ó õ *Ý 7ß TÑ TÝ ã Û Û Ý å )ð ‡‚Óñó ðð0 ×Ññó ðð ×Ññó ðð( ‡�×Ñ˜Ó)ôRD�>ó RDó *ðRDôj˜<ö rJ   