KGRKJGETMRETU895U-589TY5MIGM5JGB5SDFESFREWTGR54TY
Server : Apache/2.2.17 (Unix) mod_ssl/2.2.17 OpenSSL/0.9.8e-fips-rhel5 DAV/2 PHP/5.2.17
System : Linux localhost 2.6.18-419.el5 #1 SMP Fri Feb 24 22:47:42 UTC 2017 x86_64
User : nobody ( 99)
PHP Version : 5.2.17
Disable Function : NONE
Directory :  /proc/21573/root/usr/lib/python2.4/site-packages/rpmUtils/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //proc/21573/root/usr/lib/python2.4/site-packages/rpmUtils/arch.pyc
mň
üüPc@sždkZhddddf<ddddf<ddddf<dd	d	df<d
dd
df<dd
dd
f<Zhdd
<d
d<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd	<d	d<d
d<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd <d d!<d!d<d"d#<d#d$<d$d%<d%d<d&d'<d'd<d(d<dd
<Zed)„Zd*„Zd+„Zd,„Zed-„Zed.„Z	ed/„Z
d0„Zd1„Zd2„Z
d3„Zd4„Zd5d6„ZeƒZed7„Zed8„Zed9„ZdS(:Ntx86_64tathlontsparc64vtsparctsparcv9vtsparc64tsparcv9tppc64tppcts390xts390tia64ti686ti586tgeodeti486ti386tnoarchtamd64tia32etppc64pseriestppc64iseriestsparcv8talphaev7t	alphaev68t	alphaev67talphaev6t
alphapca56t	alphaev56talphaev5t	alphaev45talphaev4talphatarmv7ltarmv6lt	armv5tejltarmv5teltsh4atsh4tsh3cCs•t|ƒ}t|ƒotd|ƒ}n|g}|djp|idƒo?x<tiƒD]*\}}||jo|i
|ƒq_q_Wn|S(NtmyarchRR(tgetBestArchtarchtisMultiLibArchtgetBaseArchtresultst
startswithtarchestitemstktvtappend(R*R-R2R1((t1/usr/lib/python2.4/site-packages/rpmUtils/arch.pytlegitMultiArchesInSameLibKs
	

cCstd||gjotSntd|ƒtd|ƒjotSn|t|ƒjp|t|ƒjotSntS(sbTake two arches and return True if it is possible that they can be
       installed together with the same nevr. Ex: arch1=i386 and arch2=i686 then
       it will return False. arch1=i386 and arch2=x86_64 will return True.
       It does not determine whether or not the arches make any sense. Just whether
       they could possibly install w/o conflictRR*N(tarch1tarch2tFalseR+tgetArchListtTrue(R6R7((R4tcanCoinstall\s&cCs]||jodSnti|ƒo4tt||ƒ}|djo|dSndSndS(Nii(R(t
targetarchR/thas_keytarchDifferencetret(R(R<R?((R4R>qs

cCs
tt|ƒS(N(R>t	canonArchR*(R*((R4tscore{scCsg|djo
t}nti|ƒpdSnti|ƒodSntit|ƒodSndS(s5returns true if arch is a multilib arch, false if notiiN(R*tNoneR@R/R=tmultilibArches(R*((R4R+~s

c
Csst|ƒdjodSn|djo
t}nt|ƒ}t|ƒ}	|	|jo5t||	ƒ}|djo|djo|SqŒn|d}x˛|dD]Ś}t||ƒ}t||ƒ}|djo|djoqĄn||jo|djo
|}qn||jo|djo
|}q6n||joqĄqĄWt||ƒ}|djodSn|S(s™ 
        return the best arch from the list for myarch if - myarch is not given,
        then return the best arch from the list for the canonArch.
    iRiN(tlentarchlistRBR(R@R)t
mybestarchtbestarchtgetBestArchFromListtbestarchchoicetthisarchR*R>tval1tval2tval(
RER(RMR*RKRLRIRFRJRG((R4RHŽs<









cCs§|p
t}n|g}x,ti|ƒot|}|i|ƒqW|ddjo|iddƒnt|ƒdjo"|d|jo|idƒn|S(NiRiRR(RJR@RER/R=R3tinsertRD(RJRE((R4R9şs
	
$cCs/ytddƒiƒ}|SWngSnXdS(sY Try to read /proc/cpuinfo ... if we can't ignore errors (ie. proc not
        mounted). s
/proc/cpuinfotrN(topent	readlinestlines(RR((R4t_try_read_cpuinfoÎscCsŕ|djoJx?tƒD]4}|idƒo|idƒdjodSqqW|Sn|djo|SnxmtƒD]b}|idƒo|idƒdjod	Sqv|id
ƒo|idƒdjodSqvqvW|S(NR
s
model names	Geode(TM)i˙˙˙˙RRtvendortAuthenticAMDRtflagstcmov(R*RStlineR.tfind(R*RX((R4tgetCanonX86Arch×s

&

&&cCs˛|djo|Snd}x?tƒD]4}|idƒdjo|idƒd}Pq%q%W|djo|Sn|idƒdjodSn|idƒdjod	Sn|S(
NRtmachinei˙˙˙˙t:isCHRP IBMRtiSeriesR(R*RBR[RSRXRYtsplit(R*R[RX((R4tgetCanonPPCArchěs

	
cCsĘx9tƒD].}|idƒo|idƒd}Pq
q
W|idƒdjo |idƒodSqrdSn|id	ƒdjo |idƒodSq¨d
Sn|idƒdjodSn|S(
NttypeR\itsun4vi˙˙˙˙RRRtsun4uRtsun4mR(RSRXR.R^t	SPARCtypeRYR*(R*RXRd((R4tgetCanonSPARCArch˙s 
	cCsŹ|djo|Snd}x9tƒD].}|idƒo|idƒd}Pq%q%W|djo|Sn|idƒdjodSn|idƒdjod	Sn|S(
NRt	vendor_idR\is
Authentic AMDi˙˙˙˙RtGenuineIntelR(R*RBRTRSRXR.R^RY(R*RTRX((R4tgetCanonX86_64Archs

	
icCs%|oltidtiƒoVyHtddƒ}|iƒ}|iƒ|i	ddƒ\}}}|SWqtqtXnti
ƒd}t|ƒdjo3|ddjo"|dd!djot|ƒSn|id	ƒot|ƒSn|id
ƒot|ƒSn|djot|ƒSn|S(Ns/etc/rpm/platformROt-iiitit86RRR(tskipRpmPlatformtostaccesstR_OKRPtftreadlineRXtcloseR^R*RTtopersystunameRDRZR.R_ReRh(RlRTRpR*RsRX((R4tgetCanonArch%s&
8
cCsVti|ƒot|Snti|ƒo&t|djotdt|ƒSndS(NRR*(RCR=R*R/tgetMultiArchInfoRB(R*((R4RvAs
!cCsW|o
|}nt}|idƒot|d}n|idƒo
d}n|S(NRiRR(R(R*R@R.RC(R(R*((R4R)Ks

cCsŢ|p
t}nti|ƒp|Sn|idƒodSn|idƒodSntd|ƒo$ti|ƒo|Sqt|Snti|ƒo=|}t|}x"|djo|}t|}q°W|SndS(sľreturns 'base' arch for myarch, if specified, or canonArch if not.
       base arch is the arch before noarch in the arches dict if myarch is not
       a key in the multilibArches.RRRRR*RN(	R(R@R/R=R.R+RCtbasearchtvalue(R(RwRx((R4R,Ys*


(RmRCR/RBR5R;R>RAR+RHR9RSRZR_ReRhRuR@RvR)R,(RhR_ReRHR>R;R+RSRZRCR9R/RAR,R)R@R5RmRuRv((R4t?s(	r˙o<		
	,							


Anon7 - 2021