U Dx`@sdZddlZddlZddlZddlmZmZmZddlm Z ddl m Z ddl m Z ddlmZdd Ze e d edd d Ze e d edS)z> unixccompiler - can handle very long argument lists for ar. N) CompileErrorDistutilsExecErrorLibError) UnixCCompiler)replace_method)_commandline_dep_string)logc Cs|j}|ddkrFd|kr$|dd|kr6|d|dg7}||_dtjkrddlm}dtjd} d|dd} d|j} | | kr| | | } | |_d|j } | | kr| | |_ d tj |jd|f} t |d d rd d |dg}ng}z*|j |j||d|g||| dWn4tk rp}zt|}t|W5d}~XYnX|rtjdkrtddd|dgt|dd}|t|||W5QRXdS)z9Compile a single source files with a Unix-style compiler.rZaCCz-Aez-Aaz-AAOPT)get_config_vars z%s: %sZ _auto_dependsFz-MMDz-MFz.dz-odisplayNZzosZchtagz-tcZIBM1047a) compiler_soremoveosenviron sysconfigr joinsplitreplace linker_sopathbasenamegetattrspawnrstrrsysplatform subprocess check_outputopenwriter)selfobjsrcextZcc_argsZextra_postargsZpp_optsZccompr optZgcv_optZccomp_sZllink_sr depsemsgfr,D/tmp/pip-target-zr53vnty/lib/python/numpy/distutils/unixccompiler.pyUnixCCompiler__compilesJ            r._compilec CsL|||\}}|j||d}|||rs"    5  C