HEX
Server: Apache
System: Linux zacp120.webway.host 4.18.0-553.50.1.lve.el8.x86_64 #1 SMP Thu Apr 17 19:10:24 UTC 2025 x86_64
User: govancoz (1003)
PHP: 8.3.26
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: //usr/local/lib/python3.7/distutils/tests/__pycache__/test_sysconfig.cpython-37.pyc
B

!��g%+�@s�dZddlZddlZddlZddlZddlZddlZddlZddlm	Z	ddl
mZddlm
Z
ddlmZmZmZmZGdd�de
jej�Zd	d
�Zedkr�ee��dS)zTests for distutils.sysconfig.�N)�	sysconfig)�get_default_compiler)�support)�TESTFN�run_unittest�check_warnings�	swap_itemcseZdZ�fdd�Z�fdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Ze�
e�dkd�dd��Zdd�Zdd�Zdd�Ze�e�d�d�dd ��Ze�e�d!�d"kd#�d$d%��Ze�e�d!�d"kd#�d&d'��Ze�e�d!�d"kd#�d(d)��Zd*d+�Z�ZS),�SysconfigTestCasecstt|���d|_dS)N)�superr	�setUp�makefile)�self)�	__class__��:/usr/local/lib/python3.7/distutils/tests/test_sysconfig.pyrszSysconfigTestCase.setUpcs0|jdk	rt�|j�|��tt|���dS)N)r�os�unlink�cleanup_testfnr
r	�tearDown)r
)rrrrs
zSysconfigTestCase.tearDowncCs2tj�t�rt�t�ntj�t�r.t�t�dS)N)r�path�isfiler�remove�isdir�shutilZrmtree)r
rrrrsz SysconfigTestCase.cleanup_testfncCs t��}|�tj�|�|�dS)N)rZget_config_h_filename�
assertTruerrr)r
Zconfig_hrrr�test_get_config_h_filename sz,SysconfigTestCase.test_get_config_h_filenamecCs|�t��tjtd��dS)N)�prefix)ZassertNotEqualrZget_python_libr)r
rrr�test_get_python_lib$s
z%SysconfigTestCase.test_get_python_libcCs"t��}|�|t�|�|�dS)N)r�get_config_varsZassertIsInstance�dictr)r
Zcvarsrrr�test_get_config_vars+sz&SysconfigTestCase.test_get_config_varscCs�t�d�}|�tj�|�|�|�tj�|�|�tjrntj�|dd�}|�tj�	|�|�|�t�
|��n"tjdkr�|�tj�
t���|�dS)N�srcdirZIncludezPython.h�posix)r�get_config_varrrr�isabsrZpython_build�join�existsZ_is_python_source_dir�name�assertEqual�dirnameZget_makefile_filename)r
r!ZPython_hrrr�test_srcdir0s

zSysconfigTestCase.test_srcdirc	CsHt�d�}t��}zt�d�t�d�}Wdt�|�X|�||�dS)Nr!z..)rr#r�getcwd�chdirr()r
r!�cwdZsrcdir2rrr�test_srcdir_independent_of_cwdBs

z0SysconfigTestCase.test_srcdir_independent_of_cwdc
CsxGdd�d�}ddddddd	d
dd�	}|�}t���:}x(|��D]\}}|�ttj||��q@Wt�|�WdQRX|S)
Nc@seZdZdZdd�ZdS)z6SysconfigTestCase.customize_compiler.<locals>.compiler�unixc[s
||_dS)N)�exes)r
�kwrrr�set_executablesSszFSysconfigTestCase.customize_compiler.<locals>.compiler.set_executablesN)�__name__�
__module__�__qualname__Z
compiler_typer2rrrr�compilerPsr6Zsc_ar�sc_cc�sc_cxxz--sc-arflagsz--sc-cflagsz
--sc-ccshared�sc_ldshared�sc_shutil_suffix�True)	�AR�CC�CXX�ARFLAGS�CFLAGSZCCSHARED�LDSHAREDZSHLIB_SUFFIX�CUSTOMIZED_OSX_COMPILER)�
contextlib�	ExitStack�items�
enter_contextrrZ_config_vars�customize_compiler)r
r6Zsysconfig_vars�comp�cm�key�valuerrrrGNs 
z$SysconfigTestCase.customize_compilerr/z+not testing if default compiler is not unixcCs�t��dtjd<dtjd<dtjd<dtjd<d	tjd
<dtjd<d
tjd<dtjd<dtjd<|��}|�|jdd�|�|jdd�|�|jdd�|�|jdd�|�|jdd�|�|jdd�|�|jdd�|�|jd�tjd=tjd=tjd=tjd=tjd
=tjd=tjd=tjd=tjd=|��}|�|jdd �|�|jdd!�|�|jdd"�|�|jdd#�|�|jdd$�|�|jdd%�|�|jdd&�|�|jd�dS)'NZenv_arr<Zenv_ccr=Zenv_cppZCPPzenv_cxx --env-cxx-flagsr>Zenv_ldsharedrAz
--env-ldflags�LDFLAGSz
--env-arflagsr?z--env-cflagsr@z--env-cppflagsZCPPFLAGSZarchiverzenv_ar --env-arflagsZpreprocessorzenv_cpp --env-cppflagsr6z.env_cc --sc-cflags --env-cflags --env-cppflagsZcompiler_soz<env_cc --sc-cflags --env-cflags --env-cppflags --sc-ccsharedZcompiler_cxxZ
linker_exeZ	linker_soz6env_ldshared --env-ldflags --env-cflags --env-cppflagsr:zsc_ar --sc-arflagszsc_cc -Ezsc_cc --sc-cflagszsc_cc --sc-cflags --sc-ccsharedr8r7r9)rrr�environrGr(r0Zshared_lib_extension)r
rHrrr�test_customize_compilerlsf








z)SysconfigTestCase.test_customize_compilercCsXt|_t|jd�}z|�d�|�d�Wd|��Xt�|j�}|�|ddd��dS)N�wz)CONFIG_ARGS=  '--arg1=optarg1' 'ENV=LIB'
zVAR=$OTHER
OTHER=fooz'--arg1=optarg1' 'ENV=LIB'�foo)�CONFIG_ARGS�OTHER)rr�open�write�closer�parse_makefiler()r
�fd�drrr�test_parse_makefile_base�s

z*SysconfigTestCase.test_parse_makefile_basecCsXt|_t|jd�}z|�d�|�d�Wd|��Xt�|j�}|�|ddd��dS)NrOz,CONFIG_ARGS=  '--arg1=optarg1' 'ENV=\$$LIB'
zVAR=$OTHER
OTHER=fooz'--arg1=optarg1' 'ENV=\$LIB'rP)rQrR)rrrSrTrUrrVr()r
rWrXrrr�"test_parse_makefile_literal_dollar�s

z4SysconfigTestCase.test_parse_makefile_literal_dollarcCs<ddl}|�|�d�t�d��|�|�d�t�d��dS)Nrr@rL)rr(r#)r
�global_sysconfigrrr�test_sysconfig_module�s
z'SysconfigTestCase.test_sysconfig_modulerBzcompiler flags customizedcCsPddl}t�d�r|�d�|�|�d�t�d��|�|�d�t�d��dS)NrrBzcompiler flags customizedrAr=)rr#ZskipTestr()r
r[rrr�test_sysconfig_compiler_vars�s

z.SysconfigTestCase.test_sysconfig_compiler_vars�
EXT_SUFFIXNz!EXT_SUFFIX required for this testcCs|�ttjd�dS)N�SO)ZassertWarns�DeprecationWarningrr#)r
rrr�test_SO_deprecation�sz%SysconfigTestCase.test_SO_deprecationc	Cs4tdtf��|�t�d�t�d��WdQRXdS)N�r_r^)rr`r(rr#)r
rrr�
test_SO_value�szSysconfigTestCase.test_SO_valuecCs.t��}|�|d�|�|d|d�dS)Nr_r^)rrZassertIsNotNoner()r
�varsrrr�test_SO_in_vars�sz!SysconfigTestCase.test_SO_in_varsc	Csjttd��}|�t�d��WdQRXtjttj	�tgtj
tjdd�}|��\}}|�
d|jd|�dS)NrOaB                from distutils.core import Distribution
                config = Distribution().get_command_obj('config')
                # try_compile may pass or it may fail if no compiler
                # is found but it should not raise an exception.
                rc = config.try_compile('int x;')
                T)�stdout�stderrZuniversal_newlinesrzSubprocess failed: )rSr�
writelines�textwrap�dedent�
subprocess�Popen�str�sys�
executable�PIPEZSTDOUTZcommunicater(�
returncode)r
�f�pZoutsZerrsrrr�.test_customize_compiler_before_get_config_vars�sz@SysconfigTestCase.test_customize_compiler_before_get_config_vars)r3r4r5rrrrrr r*r.rG�unittestZ
skipUnlessrrNrYrZr\ZskipIfrr#r]rarcrert�
__classcell__rr)rrr	s.=
r	cCst��}|�t�t��|S)N)ruZ	TestSuiteZaddTestZ	makeSuiter	)Zsuiterrr�
test_suitesrw�__main__)�__doc__rCrrrkrnriruZ	distutilsrZdistutils.ccompilerrZdistutils.testsrZtest.supportrrrrZEnvironGuardZTestCaser	rwr3rrrr�<module>s }