hyb
2026-01-30 15bc7727b58bf9ca0c8f21702fa893daac232b8d
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
Ë
@ñúhÒ.ãóâ—dZddlZddlZddlZddlZddlZddlZddlmZddlm    Z    ddl
m Z ddl Z ddlZddlZddlmZddlmZd„Zej*j-d    «Gd
„d ««Zy) zTests for distutils.sysconfig.éN)Ú    sysconfig)Ú new_compiler)Ú UnixCCompiler)Útrim)Ú    swap_itemcób—tjjdt|«i|«|dz S)NÚMakefile)ÚjaracoÚpathÚbuildr)ÚrootÚcontentss  ú]H:\Change_password\venv_build\Lib\site-packages\setuptools/_distutils/tests/test_sysconfig.pyÚ _gen_makefilers*€Ü
‡KK×ѐz¤4¨£>Ð2°DÔ9Ø *Ñ ÐóÚsave_envcó’—eZdZd„Zej
j d«ej
j d«d„««Zd„Zd„Z    ej
j d«ej
j d«ej
jd    «d
„«««Z ej
j d«ej
j d «d „««Z d „Z d„Zej
j d«ej
jd«d„««Zd„Zd„Zd„Zej
j d«d„«Zej
j d«d„«Zd„Zd„Zej
j d«ej
j d«d„««Zej
j d«ej
j d«ej
j dj3«ej6j3«vd¬«d „«««Zd!„Zy")#Ú TestSysconfigcón—tj«}tjj    |«sJ‚y©N)rÚget_config_h_filenameÚosr Úisfile)ÚselfÚconfig_hs  rÚtest_get_config_h_filenamez(TestSysconfig.test_get_config_h_filenames&€Ü×2Ñ2Ó4ˆÜw‰w~‰~˜hÔ'Ð'Ñ'rzplatform.system() == 'Windows'z$sys.implementation.name != 'cpython'cón—tj«}tjj    |«sJ‚yr)rÚget_makefile_filenamerr r)rÚmakefiles  rÚtest_get_makefile_filenamez(TestSysconfig.test_get_makefile_filenames(€ô×2Ñ2Ó4ˆÜw‰w~‰~˜hÔ'Ð'Ñ'rcó^—tj«tj|¬«k7sJ‚y)N)Úprefix)rÚget_python_lib)rÚtmp_paths  rÚtest_get_python_libz!TestSysconfig.test_get_python_lib%s$€Ü×'Ñ'Ó)¬Y×-EÑ-EÈXÔ-VÒVÐVÑVrcóX—tj«}t|t«sJ‚|sJ‚yr)rÚget_config_varsÚ
isinstanceÚdict)rÚcvarss  rÚtest_get_config_varsz"TestSysconfig.test_get_config_vars(s'€Ü×)Ñ)Ó+ˆÜ˜%¤Ô&Ð&Ð&Ùˆ ‰urzsysconfig.IS_PYPYzsysconfig.python_buildzplatform.system() == "Windows"có$—tjtjd««}|j    «sJ‚|j «sJ‚tjtj ««}|jj|«sJ‚y)NÚsrcdir)    ÚpathlibÚPathrÚget_config_varÚabsoluteÚis_dirrÚparentÚsamefile)rr-rs   rÚtest_srcdir_simplez TestSysconfig.test_srcdir_simple-sj€ô
—‘œi×6Ñ6°xÓ@ÓAˆà‰Ô Ð Ð Ø}‰}ŒÐˆä—<‘<¤    × ?Ñ ?Ó AÓBˆØ‰×'Ñ'¨Ô/Ð/Ñ/rznot sysconfig.python_buildcó
—tjtjd««}|j    dd«}|j «sJ‚tj |«sJ‚tj t|««sJ‚y)Nr-ÚIncludezPython.h)r.r/rr0ÚjoinpathÚis_fileÚ_is_python_source_dirÚstr)rr-ÚPython_hs   rÚtest_srcdir_python_buildz&TestSysconfig.test_srcdir_python_build:sm€ô—‘œi×6Ñ6°xÓ@ÓAˆð—?‘? 9¨jÓ9ˆØ×ÑÔ!Ð!Ð!Ü×.Ñ.¨vÔ6Ð6Ð6Ü×.Ñ.¬s°6«{Ô;Ð;Ñ;rcóº—tjd«}tjd«5tjd«}ddd«|k(sJ‚y#1swYŒxYw)zO
        srcdir should be independent of the current working directory
        r-z..N)rr0r r/)rr-Úsrcdir2s   rÚtest_srcdir_independent_of_cwdz,TestSysconfig.test_srcdir_independent_of_cwdGsR€ô
×)Ñ)¨(Ó3ˆÜ Y‰Yt‹_ñ    9Ü×.Ñ.¨xÓ8ˆG÷    9à˜Ò Ð Ñ ÷    9ð    9ús «AÁAc    ó@—Gd„d«}ddddddd    d
d œ}|«}tj«5}|j«D]/\}}|jt    t
j ||««Œ1t j|«ddd«|S#1swY|SxYw) Ncó4—eZdZdZej
Zd„Zd„Zy)ú2TestSysconfig.customize_compiler.<locals>.compilerÚunixcó—i|_yr)Úexes©rs rÚ__init__z;TestSysconfig.customize_compiler.<locals>.compiler.__init__Ws    €Ø•    rcóR—|j«D]\}}||j|<Œyr)ÚitemsrF)rÚkwÚkÚvs    rÚset_executableszBTestSysconfig.customize_compiler.<locals>.compiler.set_executablesZs(€ØŸH™H›Jò%‘DAqØ#$D—I‘I˜a’Lñ%rN)Ú__name__Ú
__module__Ú __qualname__Ú compiler_typerÚ executablesrHrN©rrÚcompilerrCSs„Ø"ˆMØ'×3Ñ3ˆKò ó %rrUÚsc_arÚsc_ccÚsc_cxxz --sc-arflagsz --sc-cflagsz --sc-ccsharedÚ sc_ldsharedÚsc_shutil_suffix)ÚARÚCCÚCXXÚARFLAGSÚCFLAGSÚCCSHAREDÚLDSHAREDÚ SHLIB_SUFFIX)Ú
contextlibÚ    ExitStackrJÚ enter_contextrrÚ _config_varsÚcustomize_compiler)rrUÚsysconfig_varsÚcompÚcmÚkeyÚvalues       rrgz TestSysconfig.customize_compilerQs«€÷        %ñ        %ðØØØ%Ø#Ø'Ø%Ø.ñ    
ˆñ‹zˆÜ × !Ñ !Ó #ð    / rØ,×2Ñ2Ó4ò P‘
UØ× Ñ ¤¬9×+AÑ+AÀ3ÈÓ!NÕOð Pä × (Ñ (¨Ô .÷    /ð
ˆ ÷     /ð
ˆ ús ±ABÂBz-not isinstance(new_compiler(), UnixCCompiler)Údisable_macos_customizationcó>—tj«dtjd<dtjd<dtjd<dtjd<d    tjd
<d tjd <d tjd<dtjd<dtjd<dtjd<|j    «}|j
ddk(sJ‚|j
ddk(sJ‚|j
ddk(sJ‚|j
ddk(sJ‚|j
ddk(sJ‚|j
ddk(sJ‚|j
d d!k(sJ‚|j d"k(sJ‚tjd#k(r|j
d$dk(sJ‚d$|j
vsJ‚tjd=tjd=tjd=tjd=tjd
=tjd =tjd=tjd=tjd=tjd=|j    «}|j
dd%k(sJ‚|j
dd&k(sJ‚|j
dd'k(sJ‚|j
dd(k(sJ‚|j
dd)k(sJ‚|j
dd*k(sJ‚|j
d d+k(sJ‚|j d"k(sJ‚d$|j
vsJ‚y),NÚenv_arr[Úenv_ccr\Úenv_cppÚCPPzenv_cxx --env-cxx-flagsr]Ú env_ldsharedraz --env-ldflagsÚLDFLAGSz --env-arflagsr^z --env-cflagsr_z--env-cppflagsÚCPPFLAGSÚ
env_ranlibÚRANLIBÚarchiverzenv_ar --env-arflagsÚ preprocessorzenv_cpp --env-cppflagsrUz"env_cc --env-cflags --env-cppflagsÚ compiler_soz0env_cc --env-cflags --env-cppflags --sc-ccsharedÚ compiler_cxxz2env_cxx --env-cxx-flags --sc-cflags --env-cppflagsÚ
linker_exeÚ    linker_soz6env_ldshared --env-ldflags --env-cflags --env-cppflagsrZÚdarwinÚranlibzsc_ar --sc-arflagszsc_cc -Ezsc_cc --sc-cflagszsc_cc --sc-cflags --sc-ccsharedzsc_cxx --sc-cflagsrWrY)    rr'rÚenvironrgrFÚshared_lib_extensionÚsysÚplatform)rris  rÚtest_customize_compilerz%TestSysconfig.test_customize_compilerqs€ô    ×!Ñ!Ô#à#Œ
‰
4ÑØ#Œ
‰
4ÑØ%Œ
‰
5ÑØ5Œ
‰
5ÑØ!/Œ
‰
:ÑØ /Œ
‰
9ÑØ /Œ
‰
9ÑØ-Œ
‰
8ÑØ!1Œ
‰
:ÑØ+Œ
‰
8Ñà×&Ñ&Ó(ˆØy‰y˜Ñ$Ð(>Ò>Ð>Ð>؏y‰y˜Ñ(Ð,DÒDÐDÐD؏y‰y˜Ñ$Ð(LÒLÐLÐL؏y‰y˜Ñ'Ø >ò
ð    
ð
ð I‰InÑ %ØCò Dð    
ð Dðy‰y˜Ñ&¨(Ò2Ð2Ð2؏y‰y˜Ñ%Ø Dò
ð    
ð
ð×(Ñ(Ð,>Ò>Ð>Ð>ä <‰<˜8Ò #Ø—9‘9˜XÑ&¨,Ò6Ð 6Ð6à 4§9¡9Ñ,Ð ,Ð,ä J‰JtÐ Ü J‰JtÐ Ü J‰JuÐ Ü J‰JuÐ Ü J‰JzÐ "Ü J‰JyÐ !Ü J‰JyÐ !Ü J‰JxÐ  Ü J‰JzÐ "Ü J‰JxÐ  à×&Ñ&Ó(ˆØy‰y˜Ñ$Ð(<Ò<Ð<Ð<؏y‰y˜Ñ(¨JÒ6Ð6Ð6؏y‰y˜Ñ$Ð(;Ò;Ð;Ð;؏y‰y˜Ñ'Ð+LÒLÐLÐL؏y‰y˜Ñ(Ð,@Ò@Ð@Ð@؏y‰y˜Ñ&¨'Ò1Ð1Ð1؏y‰y˜Ñ%¨Ò6Ð6Ð6Ø×(Ñ(Ð,>Ò>Ð>Ð>ؘtŸy™yÑ(Ð(Ñ(rcóZ—t|d«}tj|«}|dddœk(sJ‚y)Nzo
            CONFIG_ARGS=  '--arg1=optarg1' 'ENV=LIB'
            VAR=$OTHER
            OTHER=foo
            z'--arg1=optarg1' 'ENV=LIB'Úfoo©Ú CONFIG_ARGSÚOTHER©rrÚparse_makefile©rr$rÚds    rÚtest_parse_makefile_basez&TestSysconfig.test_parse_makefile_base®s:€Ü Ø ð ó
ˆô × $Ñ $ XÓ .ˆØÐ$@È5ÑQÒQÐQÑQrcóZ—t|d«}tj|«}|dddœk(sJ‚y)Nzr
            CONFIG_ARGS=  '--arg1=optarg1' 'ENV=\$$LIB'
            VAR=$OTHER
            OTHER=foo
            z'--arg1=optarg1' 'ENV=\$LIB'r†r‡rŠrŒs    rÚ"test_parse_makefile_literal_dollarz0TestSysconfig.test_parse_makefile_literal_dollarºs:€Ü Ø ð ó
ˆô × $Ñ $ XÓ .ˆØÐ$CÈeÑTÒTÐTÑTrcó°—ddl}|jd«tjd«k(sJ‚|jd«tjd«k(sJ‚y)Nrr_rt©rr0©rÚglobal_sysconfigs  rÚtest_sysconfig_modulez#TestSysconfig.test_sysconfig_moduleÆsa€Û,à×.Ñ.¨xÓ8¼I×<TÑ<TØ ó=
ò
ð    
ð
ð ×.Ñ.¨yÓ9¼Y×=UÑ=UØ ó>
ò
ð    
ñ
rz3sysconfig.get_config_var('CUSTOMIZED_OSX_COMPILER')có—ddl}tjd«rtjd«|jd«tjd«k(sJ‚|jd«tjd«k(sJ‚y)NrÚCUSTOMIZED_OSX_COMPILERzcompiler flags customizedrar\)rr0ÚpytestÚskipr“s  rÚtest_sysconfig_compiler_varsz*TestSysconfig.test_sysconfig_compiler_varsÝsu€ã,ä × #Ñ #Ð$=Ô >Ü K‰KÐ3Ô 4Ø×.Ñ.¨zÓ:¼i×>VÑ>VØ ó?
ò
ð    
ð
ð ×.Ñ.¨tÓ4¼    ×8PÑ8PÐQUÓ8VÒVÐVÑVrz*not sysconfig.get_config_var('EXT_SUFFIX')cóŠ—tjt«5tjd«ddd«y#1swYyxYw)NÚSO)r˜ÚwarnsÚDeprecationWarningrr0rGs rÚtest_SO_deprecationz!TestSysconfig.test_SO_deprecationès2€ä \‰\Ô,Ó -ñ    +Ü × $Ñ $ TÔ *÷    +÷    +ñ    +ús    š9¹AcóD—tjjdtd«i|«t    j
t j|dz gtjtjdd¬«}|j«\}}d|jk(s
Jd|z«‚y)NÚfilea[
                    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úutf-8)ÚstdoutÚstderrÚuniversal_newlinesÚencodingrzSubprocess failed: ) r
r r rÚ
subprocessÚPopenr‚Ú
executableÚPIPEÚSTDOUTÚ communicateÚ
returncode)rr$ÚpÚoutsÚerrss     rÚ.test_customize_compiler_before_get_config_varsz<TestSysconfig.test_customize_compiler_before_get_config_varsís–€ô     ‰ ×Ñàœðóð ð ô     
ô × Ñ Ü ^‰^˜X¨Ñ.Ð /Ü—?‘?Ü×$Ñ$Ø#Øô 
ˆð—]‘]“_‰
ˆˆdؐA—L‘LÒ Ð>Ð"7¸$Ñ">Ó>Ñ rcó@—tj«}i}t|d¬«5}tj||¬«}ddd«|usJ‚t|d¬«5}tj|«}ddd«t    |t
«sJ‚y#1swYŒMxYw#1swYŒ(xYw)Nr¢)r¦)Úg)rrÚopenÚparse_config_hr(r))rrÚinputÚfÚresults     rÚtest_parse_config_hz!TestSysconfig.test_parse_config_hs•€Ü×2Ñ2Ó4ˆØˆÜ ( WÔ -ð    :°Ü×-Ñ-¨a°5Ô9ˆF÷    :à˜‰ÐˆÜ ( WÔ -ð    1°Ü×-Ñ-¨aÓ0ˆF÷    1ä˜&¤$Ô'Ð'Ñ'÷     :ð    :ú÷    1ð    1ús¤BÁBÂBÂBzplatform.system() != 'Windows'có„—tjd«jd«sJ‚tjd«dk7sJ‚y)NÚ
EXT_SUFFIXz.pyd)rr0ÚendswithrGs rÚtest_win_ext_suffixz!TestSysconfig.test_win_ext_suffixs<€ô×'Ñ'¨ Ó5×>Ñ>¸vÔFÐFÐFÜ×'Ñ'¨ Ó5¸Ò?Ð?Ñ?rz    \PCbuild\z*Need sys.executable to be in a source tree)Úreasoncó®—tjj«}|j|_||_|j «|j«ddg}tjjtjjtj««}tj|itj¥d|i¥¬«}|dk(sJ‚y)zAEnsure distutils.sysconfig detects venvs from source tree builds.z-czCimport distutils.sysconfig; print(distutils.sysconfig.python_build)Ú
PYTHONPATH)ÚenvÚTrueN)r
ÚenvsÚVEnvÚ
clean_optsÚ create_optsr Ú
ensure_envÚexerr ÚdirnameÚ    distutilsÚ__file__r§Ú check_outputr€)rr$rÁÚcmdÚdistutils_pathÚouts      rÚ$test_win_build_venv_from_source_treez2TestSysconfig.test_win_build_venv_from_source_trees£€ôk‰k×ÑÓ ˆØŸ.™.ˆŒØˆŒØ ‰Ôà G‰G‹IØ Ø Qð
ˆô
Ÿ™Ÿ™¬¯©¯©¼×9KÑ9KÓ)LÓMˆÜ×%Ñ%Ø ÐAœŸ
™
ÐA L°.ÑAô
ˆðfŠ}Љ}rcóž—d„}|jtd|«tjj    tj
««sJ‚y)a5
        In portable Python installations, the sysconfig will be broken,
        pointing to the directories where the installation was built and
        not where it currently is. In this case, ensure that the missing
        directory isn't used for get_python_inc.
 
        See pypa/distutils#178.
        có8—|dk(rytj|«S)NÚ    INCLUDEPYz/does-not-existr’)Únames rÚoverridezFTestSysconfig.test_get_python_inc_missing_config_dir.<locals>.override8s€Ø{Ò"Ø(Ü×+Ñ+¨DÓ1Ð 1rr0N)Úsetattrrrr ÚexistsÚget_python_inc)rÚ monkeypatchrÕs   rÚ&test_get_python_inc_missing_config_dirz4TestSysconfig.test_get_python_inc_missing_config_dir.s;€ò    2ð
    ×ÑœIÐ'7¸ÔBäw‰w~‰~œi×6Ñ6Ó8Ô9Ð9Ñ9rN)rOrPrQrr˜ÚmarkÚskipifr r%r+Úxfailr5r=r@rgÚ usefixturesr„rŽrr•ršrŸr±r¹r½Úcasefoldr‚r©rÐrÚrTrrrrsM„ò(ð ‡[[×ÑÐ8Ó9Ø ‡[[×ÑÐ>Ó?ñ(ó@ó:ð(òWòð
 ‡[[×ÑÐ+Ó,Ø ‡[[×ÑÐ0Ó1Ø ‡[[×ÑÐ7Ó8ñ0ó9ó2ó-ð0ð ‡[[×ÑÐ+Ó,Ø ‡[[×ÑÐ4Ó5ñ    <ó6ó-ð    <ò!òð@ ‡[[×ÑÐGÓHØ ‡[[×ÑÐ:Ó;ñ9)ó<óIð9)òv
Rò
Uò
ð. ‡[[×ÑÐMÓNñWóOðWð ‡[[×ÑÐDÓEñ+óFð+ò?ò4(ð ‡[[×ÑÐ8Ó9Ø ‡[[×ÑÐ>Ó?ñ@ó@ó:ð@ð ‡[[×ÑÐ8Ó9Ø ‡[[×ÑÐ>Ó?Ø ‡[[×ÑØ×ÑÓ ¨¯©×(?Ñ(?Ó(AÐAØ;ðóñó    ó@ó:ð ó":rr)Ú__doc__rcrÊrr.r§r‚rÚdistutils.ccompilerrÚdistutils.unixccompilerrÚ jaraco.envsr
r r˜Ú jaraco.textrÚ test.supportrrrÛrÞrrTrrú<module>ræsbðÙ$ãÛÛ    ÛÛÛ
ÝÝ,Ý1ãÛ Û ÝÝ"òð
‡×јÓ$÷e:ðe:ó%ñe:r