Server IP : 162.213.251.212 / Your IP : 18.188.87.95 [ Web Server : LiteSpeed System : Linux business55.web-hosting.com 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024 x86_64 User : allssztx ( 535) PHP Version : 8.1.31 Disable Function : NONE Domains : 1 Domains MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /proc/self/root/usr/lib64/python3.6/distutils/__pycache__/ |
Upload File : |
3 \[@�@s�dZddlZddlZddlZddlmZmZmZddlZddl m Z mZddlm Z ddlmZddlmZmZmZmZddlmZdd lmZdd lmZdd�ZGd d�de �ZGdd�de�ZdZdZdZ dd�Z!ej"d�Z#dd�Z$dd�Z%dd�Z&dS)adistutils.cygwinccompiler Provides the CygwinCCompiler class, a subclass of UnixCCompiler that handles the Cygwin port of the GNU C compiler to Windows. It also contains the Mingw32CCompiler class which handles the mingw32 port of GCC (same as cygwin in no-cygwin mode). �N)�Popen�PIPE�check_output)�gen_preprocess_options�gen_lib_options)� UnixCCompiler)� write_file)�DistutilsExecError�CCompilerError�CompileError�UnknownFileError)�log)�LooseVersion)�find_executablecCs�tjjd�}|dkr|tj|d|d�}|dkr8dgS|dkrFdgS|d krTd gS|dkrbdgS|d krpdgStd|��dS)zaInclude the appropriate MSVC runtime library if Python was built with MSVC 7.0 or later. zMSC v.��� Z1300Zmsvcr70Z1310Zmsvcr71Z1400Zmsvcr80Z1500Zmsvcr90Z1600Zmsvcr100zUnknown MS Compiler version %s N���)�sys�version�find� ValueError)Zmsc_posZmsc_ver�r�1/usr/lib64/python3.6/distutils/cygwinccompiler.py� get_msvcr?src @sReZdZdZdZdZdZdZdZdZ dZ dd d�Zdd �Zddd�Z ddd�ZdS)�CygwinCCompilerz? Handles the Cygwin port of the GNU C compiler to Windows. �cygwinz.oz.az.dllzlib%s%sz%s%sz.exercCs�tj||||�t�\}}|jd||f�|tk rB|jd|�t�\|_|_|_ |j|j d|j|j|j f�|jdkr�d|_nd|_|jdkr�d}nd }|jd ddd d|j|fd�|jdkr�dg|_ |jd�nt�|_ dS)Nz%Python's GCC status: %s (details: %s)z�Python's pyconfig.h doesn't seem to support your compiler. Reason: %s. Compiling may fail because of undefined preprocessor macros.z: gcc %s, ld %s, dllwrap %s z2.10.90�gcc�dllwrapz2.13z-sharedz -mdll -staticzgcc -mcygwin -O -Wallzgcc -mcygwin -mdll -O -Wallzg++ -mcygwin -O -Wallzgcc -mcygwinz%s -mcygwin %s)�compiler�compiler_so�compiler_cxx� linker_exe� linker_soz2.91.57Zmsvcrtz,Consider upgrading to a newer version of gcc)r�__init__�check_config_hZdebug_print�CONFIG_H_OK�warn�get_versions�gcc_version� ld_versionZdllwrap_version� compiler_type� linker_dll�set_executables� dll_librariesr)�self�verbose�dry_run�forceZstatusZdetails� shared_optionrrrr$ds< zCygwinCCompiler.__init__cCs�|dks|dkrVy|jdd|d|g�Wq�tk rR}zt|��WYdd}~Xq�XnNy"|j|j||d|g|�Wn*tk r�}zt|��WYdd}~XnXdS)z:Compiles the source by spawning GCC and windres if needed.z.rcz.resZwindresz-iz-oN)Zspawnr rr )r/�obj�src�extZcc_args�extra_postargsZpp_opts�msgrrr�_compile�szCygwinCCompiler._compileNcCsRtj| p g�} tj|pg�}tj|p&g�}|j|j�|dk oP||jksT|jdk�rtjj|d�}tjjtjj |��\}}tjj ||d�}tjj |d|d�}dtjj |�dg}x|D]}|j|�q�W|jt ||fd |�|jd k�r| jd|g�| jd|g�n |j|�| �s*| jd �tj||||||||d| | ||| �dS)zLink the objects.Nrrz.def�libz.az LIBRARY %sZEXPORTSz writing %srz--output-libz--defz-s)�copy�extendr.Z EXECUTABLEr,�os�path�dirname�splitext�basename�join�appendZexecuterr�link)r/Ztarget_descZobjectsZoutput_filename� output_dirZ librariesZlibrary_dirsZruntime_library_dirsZexport_symbols�debugZ extra_preargsr7Z build_tempZtarget_langZtemp_dirZdll_nameZ dll_extensionZdef_fileZlib_file�contentsZsymrrrrD�s: zCygwinCCompiler.link�cCs�|dkrd}g}x�|D]�}tjjtjj|��\}}||jddgkrTtd||f��|rdtjj|�}|dkr�|jtjj||||j ��q|jtjj|||j ��qW|S)z#Adds supports for rc and res files.NrH�.rc�.resz"unknown file type '%s' (from '%s'))rJrI) r=r>r@�normcaseZsrc_extensionsrrArCrB� obj_extension)r/Zsource_filenamesZ strip_dirrEZ obj_namesZsrc_name�baser6rrr�object_filenames�s z CygwinCCompiler.object_filenames)rrr) NNNNNrNNNN)rrH)�__name__� __module__�__qualname__�__doc__r+rLZstatic_lib_extensionZshared_lib_extensionZstatic_lib_formatZshared_lib_formatZ exe_extensionr$r9rDrNrrrrrYs ; Krc@seZdZdZdZddd�ZdS)�Mingw32CCompilerz@ Handles the Mingw32 port of the GNU C compiler to Windows. Zmingw32rc Csxtj||||�|jdkr d}nd}|jdkr4d}nd}t�rFtd��|jdd d dd|j||fd �g|_t �|_dS)Nz2.13z-sharedz -mdll -staticz2.91.57z--entry _DllMain@12rHz1Cygwin gcc cannot be used with --compiler=mingw32zgcc -O -Wallzgcc -mdll -O -Wallzg++ -O -Wallrz%s %s %s)rr r!r"r#) rr$r*r)�is_cygwingccr r-r,r.r)r/r0r1r2r3Zentry_pointrrrr$s& zMingw32CCompiler.__init__N)rrr)rOrPrQrRr+r$rrrrrSsrS�okznot okZ uncertaincCs�ddlm}dtjkrtdfS|j�}y@t|�}z(d|j�krJtd|fStd|fSWd|j �XWn.t k r�}ztd ||jffSd}~XnXdS) awCheck if the current Python installation appears amenable to building extensions with GCC. Returns a tuple (status, details), where 'status' is one of the following constants: - CONFIG_H_OK: all is well, go ahead and compile - CONFIG_H_NOTOK: doesn't look good - CONFIG_H_UNCERTAIN: not sure -- unable to read pyconfig.h 'details' is a human-readable string explaining the situation. Note there are two ways to conclude "OK": either 'sys.version' contains the string "GCC" (implying that this Python was built with GCC), or the installed "pyconfig.h" contains the string "__GNUC__". r)� sysconfigZGCCzsys.version mentions 'GCC'Z__GNUC__z'%s' mentions '__GNUC__'z '%s' does not mention '__GNUC__'Nzcouldn't read '%s': %s) � distutilsrVrrr&�get_config_h_filename�open�read�CONFIG_H_NOTOK�close�OSError�CONFIG_H_UNCERTAIN�strerror)rV�fn�config_h�excrrrr%Hs r%s(\d+\.\d+(\.\d+)*)cCsl|j�d}t|�dkrdSt|dtd�j}z|j�}Wd|j�Xtj|�}|dkrZdSt |j d�j��S)z�Find the version of an executable by running `cmd` in the shell. If the command is not found, or the output does not match `RE_VERSION`, returns None. rNT)�shell�stdoutr)�splitrrrrdrZr\� RE_VERSION�searchr�group�decode)�cmd� executable�out� out_string�resultrrr�_find_exe_versionus rocCsdddg}tdd�|D��S)zg Try to find out the versions of gcc, ld and dllwrap. If not possible it returns None for it. zgcc -dumpversionzld -vzdllwrap --versioncSsg|]}t|��qSr)ro)�.0rjrrr� <listcomp>�sz get_versions.<locals>.<listcomp>)�tuple)Zcommandsrrrr(�s r(cCstddg�}|j�jd�S)z>Try to determine if the gcc that would be used is from cygwin.rz-dumpmachinescygwin)r�strip�endswith)rmrrrrT�srT)'rRr=rr;� subprocessrrr�reZdistutils.ccompilerrrZdistutils.unixccompilerrZdistutils.file_utilrZdistutils.errorsr r rrrWr Zdistutils.versionrZdistutils.spawnrrrrSr&r[r^r%�compilerfror(rTrrrr�<module>s0);1+