HEX
Server: Apache
System: FreeBSD www860.sakura.ne.jp 13.0-RELEASE-p14 FreeBSD 13.0-RELEASE-p14 #2: Mon Dec 9 13:54:55 JST 2024 root@www5301.sakura.ne.jp:/usr/obj/usr/src/amd64.amd64/sys/GENERIC amd64
User: yoyo0427 (1306)
PHP: 8.3.8
Disabled: NONE
Upload Files
File: //usr/local/lib/python3.8/distutils/__pycache__/unixccompiler.cpython-38.opt-2.pyc
U

q��a�9�@s�ddlZddlZddlZddlmZddlmZddlmZm	Z	m
Z
ddlmZm
Z
mZmZddlmZejdkrzddlZGdd	�d	e�ZdS)
�N)�	sysconfig)�newer)�	CCompiler�gen_preprocess_options�gen_lib_options)�DistutilsExecError�CompileError�LibError�	LinkError)�log�darwinc
@s�eZdZdZddgdgdgddgdgddgdd�Zejdd�d	krNd
ged
<ddd
dddgZdZdZ	dZ
dZdZdZ
ZZeZejdkr�dZd,dd�Zdd�Zd-dd�Zd.d d!�Zd"d#�Zd$d%�Zd&d'�Zd(d)�Zd/d*d+�ZdS)0�
UnixCCompilerZunixNZccz-shared�arz-cr)�preprocessor�compiler�compiler_so�compiler_cxx�	linker_so�
linker_exe�archiver�ranlib�rrz.cz.Cz.ccz.cxxz.cppz.mz.oz.az.soz.dylibz.tbdzlib%s%s�cygwinz.exec
Cs�|�d||�}|\}}}t||�}	|j|	}
|r>|
�d|g�|rN||
dd�<|r\|
�|�|
�|�|js~|dks~t||�r�|r�|�tj	�
|��z|�|
�Wn*tk
r�}zt
|��W5d}~XYnXdS)N�-or)Z_fix_compile_argsrr�extend�append�forcer�mkpath�os�path�dirname�spawnrr)�self�sourceZoutput_fileZmacrosZinclude_dirs�
extra_preargs�extra_postargs�
fixed_args�ignore�pp_optsZpp_args�msg�r*�3/usr/local/lib/python3.8/distutils/unixccompiler.py�
preprocessUs$




zUnixCCompiler.preprocessc	
Csp|j}tjdkr t�|||�}z |�|||d|g|�Wn*tk
rj}zt|��W5d}~XYnXdS)Nrr)r�sys�platform�_osx_support�compiler_fixupr!rr)	r"�obj�src�extZcc_argsr%r(rr)r*r*r+�_compileos
��
zUnixCCompiler._compilerc
Cs�|�||�\}}|j||d�}|�||�r�|�tj�|��|�|j|g||j	�|j
r�z|�|j
|g�Wq�tk
r�}zt|��W5d}~XYq�Xnt
�d|�dS)N)�
output_dir�skipping %s (up-to-date))�_fix_object_args�library_filename�
_need_linkrrrr r!r�objectsrrr	r�debug)r"r:Zoutput_libnamer5r;�target_lang�output_filenamer)r*r*r+�create_static_libzs$����	zUnixCCompiler.create_static_libc
Cs�|�||�\}}|�|||�}|\}}}t||||�}t|ttd�f�sPtd��|dk	rftj�	||�}|�
||��r�||j|d|g}|	r�dg|dd�<|
r�|
|dd�<|r�|�|�|�
tj�|��z�|tjkr�|jdd�}n|jdd�}|
dk�rr|j�rrd}tj�|d�dk�r@d}d||k�r@|d7}�q&tj�||�d	k�r\d}nd}|j||||<tjd
k�r�t�||�}|�||�Wn,tk
�r�}zt|��W5d}~XYnXnt�d|�dS)Nz%'output_dir' must be a string or Nonerz-grzc++�env��=Z	ld_so_aixrr6)r7Z
_fix_lib_argsr�
isinstance�str�type�	TypeErrorrr�joinr9r:rrr rZ
EXECUTABLErrr�basenamer-r.r/r0r!rr
rr;)r"Ztarget_descr:r=r5Z	librariesZlibrary_dirsZruntime_library_dirsZexport_symbolsr;r$r%Z
build_tempr<r&Zlib_optsZld_argsZlinker�i�offsetr)r*r*r+�link�sZ�
���

zUnixCCompiler.linkcCsd|S)N�-Lr*)r"�dirr*r*r+�library_dir_option�sz UnixCCompiler.library_dir_optioncCsd|kpd|kS)NZgcczg++r*)r"Z
compiler_namer*r*r+�_is_gcc�szUnixCCompiler._is_gcccCs�tj�t�d��}tjdd�dkr,d|Stjdd�dkrFd|Stjdd�d	krz|�|�rnd
d|gSdd|gS|�|�r�t�d�d
kr�d|Sd|Snd|SdS)N�CCrrrK�Zfreebsdz-Wl,-rpath=�zhp-uxz-Wl,+sz+sZGNULDZyesz-Wl,--enable-new-dtags,-Rz-Wl,-Rz-R)rrrGr�get_config_varr-r.rN)r"rLrr*r*r+�runtime_library_dir_option�s


z(UnixCCompiler.runtime_library_dir_optioncCsd|S)Nz-lr*)r"�libr*r*r+�library_optionszUnixCCompiler.library_optioncCs�|j|dd�}|j|dd�}|j|dd�}|j|dd�}tjdkr|t�d�}t�d|�}	|	dkrrt�t�d	��}
n
|	�	d
�}
|D�] }t
j�||�}t
j�||�}
t
j�||�}t
j�||�}tjdk�rL|�
d�s�|�
d��rL|�
d
��sLt
j�|
|d
d�|�}t
j�|
|d
d�|�}
t
j�|
|d
d�|�}t
j�|
|d
d�|�}t
j�|
��rb|
St
j�|��rx|St
j�|��r�|St
j�|�r�|Sq�dS)N�shared)Zlib_type�dylib�
xcode_stub�staticrZCFLAGSz-isysroot\s*(\S+)rOr@z/System/z/usr/z/usr/local/)r8r-r.rrR�re�searchr/Z_default_sysroot�grouprrrF�
startswith�exists)r"�dirsrTr;Zshared_fZdylib_fZxcode_stub_fZstatic_fZcflags�mZsysrootrLrVrWrYrXr*r*r+�find_library_file	sF



���
zUnixCCompiler.find_library_file)NNNNN)NrN)
NNNNNrNNNN)r)�__name__�
__module__�__qualname__Z
compiler_typeZexecutablesr-r.Zsrc_extensionsZ
obj_extensionZstatic_lib_extensionZshared_lib_extensionZdylib_lib_extensionZxcode_stub_lib_extensionZstatic_lib_formatZshared_lib_formatZdylib_lib_formatZxcode_stub_lib_formatZ
exe_extensionr,r4r>rJrMrNrSrUrar*r*r*r+r
-s`�


�
�
�
B*r
)rr-rZZ	distutilsrZdistutils.dep_utilrZdistutils.ccompilerrrrZdistutils.errorsrrr	r
rr.r/r
r*r*r*r+�<module>s