%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /usr/local/lib/python3.8/distutils/__pycache__/
Upload File :
Create Path :
Current File : //usr/local/lib/python3.8/distutils/__pycache__/unixccompiler.cpython-38.pyc

U

q©ßa¢9ã@s’dZddlZddlZddlZddlmZddlmZddlm	Z	m
Z
mZddlm
Z
mZmZmZddlmZejdkr~ddlZGd	d
„d
e	ƒZdS)a9distutils.unixccompiler

Contains the UnixCCompiler class, a subclass of CCompiler that handles
the "typical" Unix-style command-line C compiler:
  * macros defined with -Dname[=value]
  * macros undefined with -Uname
  * include search directories specified with -Idir
  * libraries specified with -lllib
  * library search directories specified with -Ldir
  * compile handled by 'cc' (or similar) executable with -c option:
    compiles .c to .o
  * link static library handled by 'ar' command (possibly with 'ranlib')
  * link shared library handled by 'cc -shared'
é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
ZZeZejdkrdZd,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…}|
dkrr|jrrd}tj |d¡dkr@d}d||kr@|d7}q&tj ||¡d	kr\d}nd}|j||||<tjd
krŠ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 ||¡}tjdkrL| 
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
)Ú__doc__rr-rZZ	distutilsrZdistutils.dep_utilrZdistutils.ccompilerrrrZdistutils.errorsrrr	r
rr.r/r
r*r*r*r+Ú<module>s


Zerion Mini Shell 1.0