£Á°èZ¨Ä…–K§‚«“ô4“ÒÙ´dîfUÙÃÅ WKbyÊ¦•êŽ…È®FÒ¿ÊÎóCozá¬S@6{Í:›œêZÌ:Š•_%:¢¾¾~;‘Ã~èŠ©ÊÇí`ÔÑ©úë™µ'5I¿fš×WO%ø9¾«¾DK|€ùÍD”Ýs]nHÕ¶ê×Ó¼ãžªéUWŸÈË%DÒÕ¬ï‘]/Åcx  ‰ï2ß]ä6G[]S£ÔÏ¯rs{úëóµmÒï#UQxo·õÞCe]"±/aÙ&Eã4ú9Jé_ÞåëdãöKë)AÞ                  ¯¹ægƒÛowÐø^d™ý½ßB7áyMä9ÜÖUã
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
<html>
a
    XC?hU                     @   s   d dl Z d dlZd dlZg dZdZdZdZd-ddZd.d	d
Zdd Z	da
dd Zdadd Zdd Zdd Zda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)d* Zd+d, ZdS )/    N)compiler_fixupcustomize_config_varscustomize_compilerget_platform_osx)CFLAGSZLDFLAGSZCPPFLAGSZ
BASECFLAGS	BLDSHAREDLDSHAREDCCCXXZ	PY_CFLAGSZ
PY_LDFLAGSZPY_CPPFLAGSZPY_CORE_CFLAGSZPY_CORE_LDFLAGS)r   r   r	   r
   Z_OSX_SUPPORT_INITIAL_c                 C   s   |d u rt jd }|t j}t j| \}}tjdkrH|dkrH| d } t j| s|D ]&}t j	|| }t j|rX|  S qXd S | S d S )NPATHZwin32z.exe)
osenvironsplitpathseppathsplitextsysplatformisfilejoin)
executabler   pathsbaseZextpf r   1/opt/alt/python39/lib64/python3.9/_osx_support.py_find_executable   s    

r   Fc                 C   s   dd l }zdd l}| }W n& tyB   tdt f d}Y n0 ||R}|rdd| |jf }nd| |jf }t	|s|
 d nd W  d    S 1 s0    Y  d S )Nr   z/tmp/_osx_support.%szw+bz%s >'%s' 2>&1z%s 2>/dev/null >'%s'zutf-8)
contextlibtempfileZNamedTemporaryFileImportErroropenr   getpidclosingnamesystemreaddecodestrip)ZcommandstringZcapture_stderrr   r   fpcmdr   r   r   _read_output7   s    
r+   c                 C   s   t | ptd| f pdS )Nz/usr/bin/xcrun -find %s )r   r+   )Ztoolnamer   r   r   _find_build_toolM   s
    r-   c                  C   s~   t d u rzda ztd} W n ty*   Y nP0 ztd|  }W |   n
|   0 |d urzd|d	dd d a t S )Nr,   z0/System/Library/CoreServices/SystemVersion.plistz=<key>ProductUserVisibleVersion</key>\s*<string>(.*?)</string>.      )
_SYSTEM_VERSIONr!   OSErrorresearchr&   closer   groupr   )r   mr   r   r   _get_system_versionV   s    
r8   c                  C   sJ   t d u rFt } | rFztdd | dD a W n tyD   da Y n0 t S )Nc                 s   s   | ]}t |V  qd S Nint.0ir   r   r   	<genexpr>       z,_get_system_version_tuple.<locals>.<genexpr>r.   r   )_SYSTEM_VERSION_TUPLEr8   tupler   
ValueErrorZosx_versionr   r   r   _get_system_version_tupleu   s    
rE   c                 C   s"   t | D ]}|tr| |= qd S r9   )list
startswith_INITPRE)_config_varskr   r   r   _remove_original_values   s    
rK   c                 C   s8   |  |d}||kr,t| | vr,|| t| < || |< d S )Nr,   )getrH   )rI   cvZnewvalueZoldvaluer   r   r   _save_modified_value   s    rN   c                 C   s   t d urt S td| f d}d}| D ]T}|dr<d}q(|drLd}q(|r(| }|dkrfda q(|dr(|d d	 a q(t d u rda t S )
Nz%s -c -E -v - </dev/nullTFz#include <...>zEnd of search listz/usr/include/z.sdk/usr/includei)_cache_default_sysrootr+   
splitlinesrG   r(   endswith)cccontentsZ
in_incdirsliner   r   r   _default_sysroot   s$    


rV   c                  C   s   t  } | rt| dkS dS )N
      F)rE   boolrD   r   r   r   _supports_universal_builds   s    r[   c                  C   s   t  } | r| dkS dS )N)   r   F)rE   rD   r   r   r   _supports_arm64_builds   s    r]   c                 C   s   dt jv r| S | d  d  }}t|s4td}n<t j|drptd|	ddf }|rpd|v rptd}|s|t
d	||krtD ]L}|| v r|t jvr| |  }|d
kr|n|d |d< t| |d| q| S )Nr	   r   ZclangZgccz'%s' --version''"'"'zllvm-gcczCannot locate working compilerr
   z++ )r   r   r   r   r-   r   basenamerG   r+   replaceSystemError_COMPILER_CONFIG_VARSrN   r   )rI   rS   ZoldccdatarM   Zcv_splitr   r   r   _find_appropriate_compiler   s,    

rf   c                 C   sV   t D ]L}|| v r|tjvr| | }tjdd|tjd}tdd|}t| || q| S )N-arch\s+\w+\sr`   )flagsz-isysroot\s*\S+)_UNIVERSAL_CONFIG_VARSr   r   r3   subASCIIrN   )rI   rM   rh   r   r   r   _remove_universal_flags  s    rl   c                 C   s   dt jv r| S td| d d urt d| d ddf }|rtD ]8}|| v rF|t jvrF| | }tdd|}t| || qF| S )	Nr	   z-arch\s+ppcr   zNecho 'int main{};' | '%s' -c -arch ppc -x c -o /dev/null /dev/null 2>/dev/nullr^   r_   z-arch\s+ppc\w*\sr`   )	r   r   r3   r4   r%   rb   ri   rj   rN   )rI   ZstatusrM   rh   r   r   r   _remove_unsupported_archs  s    
	rm   c                 C   sd   dt jv r`t jd }tD ]F}|| v rd| | v r| | }tdd|}|d | }t| || q| S )N	ARCHFLAGS-archrg   r`   )r   r   ri   r3   rj   rN   )rI   ZarchrM   rh   r   r   r   _override_all_archs:  s    

rp   c                 C   sx   |  dd}td|}|d urt|d}tj|sttD ]8}|| v r:|tjvr:| | }t	dd|}t
| || q:| S )Nr   r,   z-isysroot\s*(\S+)r/   z-isysroot\s*\S+(?:\s|$)r`   )rL   r3   r4   r6   r   r   existsri   r   rj   rN   )rI   cflagsr7   ZsdkrM   rh   r   r   r   _check_for_unavailable_sdkK  s    
rs   c           
      C   s  d }}t | } t s d }}nd|v }tdd |D }|sHdtjv rz| d}| ||d = W qH tyz   Y qY qH0 qHnFt stt	t
| D ].}| | dkr| |d  d	kr| ||d = qdtjv r|s| tjd   } |r>d
d t| D }|sq>|d }| | dkr.| ||d = q| ||d = qd }|}dd t|D }|st| }dd t| D }|D ]B}|| dkr||d  } qn|| t
dd  } qqx|rtj|sddlm}	 |	d| |	d | S )NFTro   c                 s   s   | ]}| d r|V  qdS )	-isysrootNrG   )r=   argr   r   r   r?   y  r@   z!compiler_fixup.<locals>.<genexpr>rn   r0   r/   arm64c                 S   s   g | ]\}}| d r|qS rt   ru   r=   r>   xr   r   r   
<listcomp>  r@   z"compiler_fixup.<locals>.<listcomp>r   rt   c                 S   s   g | ]\}}| d r|qS rx   ru   ry   r   r   r   r{     r@   c                 S   s   g | ]\}}| d r|qS rx   ru   ry   r   r   r   r{     r@   )logz4Compiling with an SDK that doesn't seem to exist: %sz$Please check your Xcode installation)rF   r[   anyr   r   indexrC   r]   reversedrangelenr   	enumerater   isdirZ	distutilsr|   warn)
Zcompiler_soZcc_argsZ	stripArchZstripSysrootr~   idxindicesZsysrootZargvarr|   r   r   r   r   f  sZ    	



r   c                 C   s"   t  st|  t|  t|  | S r9   )r[   rl   rp   rs   rI   r   r   r   r     s
    r   c                 C   s   t |  t|  t|  | S r9   )rf   rm   rp   r   r   r   r   r     s    	r   c                 C   s  |  dd}t p|}|p|}|r|}d}|  td |  dd}|rz$tdd |ddd	 D }W q ty   d
}Y q0 nd
}|dkrDd| v rDd}td|}tt	t
|}t|dkr|d }nj|dkrd}n\|dkrd}nN|dkrd}n>|dkrd}n.|dkr$d}n|dkr4d}ntd|f n<|dkr`tjdkrd}n |dv rtjdkr|d }nd!}|||fS )"NZMACOSX_DEPLOYMENT_TARGETr,   Zmacosxr   c                 s   s   | ]}t |V  qd S r9   r:   r<   r   r   r   r?     r@   z#get_platform_osx.<locals>.<genexpr>r.   r   r0   )rX   r   rW   ro   Zfatz-arch\s+(\S+)r/   )rw   x86_64Z
universal2)i386ppc)r   r   Zintel)r   r   r   Zfat3)ppc64r   Zfat64)r   r   r   r   Z	universalz%Don't know machine value for archs=%rr   l        r   )ZPowerPCZPower_Macintoshr   r   )rL   r8   rH   rB   r   rC   r(   r3   findallsortedsetr   r   maxsize)rI   ZosnamereleasemachineZmacverZ
macreleaserr   Zarchsr   r   r   r     sX    



$






r   )N)F)r   r3   r   __all__ri   rd   rH   r   r+   r-   r1   r8   rA   rE   rK   rN   rP   rV   r[   r]   rf   rl   rm   rp   rs   r   r   r   r   r   r   r   r   <module>   s8   


	

>(Q)