U ybbP@sddlZddlZddlZddlZddlmZddlmZmZej ej Z ej ej Zej ejZej ejZdejkrej ejdZn&ejrej ej ejZneZddZeeddZejd krd d ZeeZeeZd d ZeZdZ zesej!Z Wne"k r&YnXddZ#d,ddZ$d-ddZ%ddZ&ddZ'ddZ(d.ddZ)e*dZ+e*dZ,e*dZ-d/d d!Z.d"d#Z/da0d$d%Z1d&d'Z2d(d)Z3d*d+Z4dS)0N)DistutilsPlatformError) get_platformget_host_platformZ_PYTHON_PROJECT_BASEcCs,dD]"}tjtj|d|rdSqdS)N)ZSetupz Setup.localZModulesTF)ospathisfilejoin)dfnr 8/opt/alt/python38/lib64/python3.8/distutils/sysconfig.py_is_python_source_dir+sr_homentcCs0|r,tj|tjtjtdr,tS|S)NZPCbuild)rrnormcase startswithr PREFIX)r r r r _fix_pcbuild4s rcCstr ttSttS)N) _sys_homer project_baser r r r _python_build<srcCsdtjddS)Nz%d.%d)sys version_infor r r r get_python_versionPsrcCs|dkr|rtpt}tjdkrjtrL|r.tp,tStjt dd}tj |Sdt t }tj|d|Stjdkrtrtj|dtjj tj|dStj|dStdtjdS) NposixsrcdirZIncludepythonZincluderPCzFI don't know where Python installs its C header files on platform '%s')BASE_EXEC_PREFIX BASE_PREFIXrname python_buildrrrr get_config_varnormpathr build_flagspathsepr) plat_specificprefixZincdirZ python_dirr r r get_python_incXs*      r+cCs|dkr&|r|rtpt}n |r"tp$t}tjdkrp|s8|r>d}nd}tj||dt}|r`|Stj|dSnrendstartcloseitems isinstanceupdate)r rPrVrOZdoneZnotdonerQrRrSrTZtmpvZrenamed_variablesr#valuefounditemZafterkr r r parse_makefile/s                       rmcCsVt|pt|}|rR|\}}|d|||d||d}qqRq|S)Nrr)r_r`raspangetrL)svarsrRZbegrcr r r expand_makefile_varss  *rrc CsVtjddjtjtjttjddd}t |t t dgd}|j }ia t |dS)NZ_PYTHON_SYSCONFIGDATA_NAMEz+_sysconfigdata_{abi}_{platform}_{multiarch}rCr)Zabir9Z multiarchbuild_time_varsr)rr>rorDrabiflagsr9getattrrF __import__globalslocalsrsr<rh)r#Z_temprsr r r _init_posixs rycCs~i}tddd|d<tddd|d<tdd|d<td|d<d |d <td d |d <tjtj t j |d<|a dS)NrrrBZLIBDESTZ BINLIBDESTr@Z INCLUDEPY EXT_SUFFIXz.exeZEXE.rZVERSIONZBINDIR) r0r+_impextension_suffixesrr]rrdirnameabspathr executabler<)rPr r r _init_ntsrcGs\tdkr*tdtj}|r(|niattd<ttd<td}|dk rV|td<tdt}tjdkrtrtj t }tj ||}ntj t }tj tj |td<tr tjdkr t}tj tds |tkr tj |td}tj |td<tjdkr*d dl}|t|rTg}|D]}|t|q8|StSdS) NZ_init_r* exec_prefixrzSOrrr1r)r<rwrorr#rr.rr$rr~rGr rr&isabsgetcwdrr9r:Zcustomize_config_varsappend)argsfuncrrbaser:Zvalsr#r r r r=sB       r=cCs*|dkrddl}|dtdt|S)Nrrz SO is deprecated, use EXT_SUFFIXr)warningswarnDeprecationWarningr=ro)r#rr r r r%!sr%)rN)rrN)N)N)5r|rrHrrXrutilrrrr&r*rrr. base_prefixr"base_exec_prefixr!r>rrrr~rrrurr#rrr$r'rtAttributeErrorrr+r0r;rArGrUrIr[r_rarmrrr<ryrr=r%r r r r  sZ      ( +I      jJ