uawdijnntqw1x1x1
IP : 18.222.119.19
Hostname : ns1.eurodns.top
Kernel : Linux ns1.eurodns.top 4.18.0-348.7.1.lve.el7h.x86_64 #1 SMP Fri Dec 24 19:28:54 UTC 2021 x86_64
Disable Function : mail,sendmail,exec,passthru,shell_exec,system,popen,curl_multi_exec,show_source,eval,open_base
OS : Linux
PATH:
/
home
/
..
/
lib
/
python2.7
/
.
/
site-packages
/
rpmUtils
/
arch.pyc
/
/
� 8M�bc@s�ddlZddlZddlZddlZeZidHd6dId6dJd6dKd 6dLd6ZerrdMed <ni-dd6d d6dd6dd 6dd6dd6dd6dd6dd6dd6d d6d d6d d6dd 6dd6d d6dd 6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6d d6d!d 6d"d!6d#d"6dd#6d$d%6d&d$6d'd&6dd'6d(d)6dd(6dd*6dd+6d,d-6dd,6dd.6dd/6Zid0d16d2d36Zdd4�Z d5�Zd6�Zd7�Z dd8�Zdd9�Zdd:�Zd;�Zd<�Zd=�Zd>�Zd?�Zd@�ZdA�Zd2dB�Ze�ZedC�ZddD�ZddE�ZdFefdG��YZdS(Ni����Ntathlontx86_64tsparcv9vtsparc64vtsparcv9tsparc64tppctppc64ts390ts390xti686ti586tgeodeti486ti386tnoarchtamd64tia32etppc64letppc64p7tppc64pseriestppc64iseriestsparcv8tsparct alphaev68talphaev7t alphaev67talphaev6t alphapca56t alphaev56talphaev5t alphaev45talphaev4talphatarmv6ltarmv7lt armv5tejltarmv5teltarmv7hltarmv7hnltarm64taarch64tsh4tsh4atsh3tia64ttplatformithwcapcCs�t|�}t|�r*td|�}n|g}|dksN|jd�r�x9tj�D](\}}||kr[|j|�q[q[Wn|S(NtmyarchRRR(RR(tgetBestArchtisMultiLibArchtgetBaseArcht startswithtarchestitemstappend(tarchtresultstktv((s1/usr/lib/python2.7/site-packages/rpmUtils/arch.pytlegitMultiArchesInSameLibes cCsdd||gkrtStd|�td|�kr8tS|t|�ks\|t|�kr`tStS(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 conflictRR9(tFalseR3tgetArchListtTrue(tarch1tarch2((s1/usr/lib/python2.7/site-packages/rpmUtils/arch.pytcanCoinstallvs $cCsK||krdS|tkrGtt||�}|dkrC|dSdSdS(Nii(R6tarchDifference(R1t targetarchtret((s1/usr/lib/python2.7/site-packages/rpmUtils/arch.pyRD�scCs tt|�S(N(RDt canonArch(R9((s1/usr/lib/python2.7/site-packages/rpmUtils/arch.pytscore�scCsM|dkrt}n|tkr%dS|tkr5dSt|tkrIdSdS(s5returns true if arch is a multilib arch, false if notiiN(tNoneRGR6tmultilibArches(R9((s1/usr/lib/python2.7/site-packages/rpmUtils/arch.pyR3�s c CsRt|�dkrdS|dkr+t}nt|�}t|�}||kr}t||�}|dkr}|dkr}|Sn|d}x�|dD]�}t||�}t||�}|dkr�|dkr�q�n||kr�|dkr�|}q�n||kr|dkr|}qn||kr�q�q�Wt||�} | dkrNdS|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(tlenRIRGR2tgetBestArchFromListRD( tarchlistR1t mybestarchtbestarchtbestarchchoicetthisarchR9tval1tval2tval((s1/usr/lib/python2.7/site-packages/rpmUtils/arch.pyRL�s8 cCs�|st}n|g}x'|tkrAt|}|j|�qW|ddkre|jdd�nt|�dkr�|d|kr�|jd�n|S(NiRiRR(RGR6R8tinsertRK(RQRM((s1/usr/lib/python2.7/site-packages/rpmUtils/arch.pyR?�s "cCs ytdd�SWngSXdS(sY Try to read /proc/cpuinfo ... if we can't ignore errors (ie. proc not mounted). s /proc/cpuinfotrN(topen(((s1/usr/lib/python2.7/site-packages/rpmUtils/arch.pyt_try_read_cpuinfo�scCs�ytdd�j�}WndSXd}d}tjd�}d}tj�}x}|t|�|kr�tjd||�\}}||kr�||_|jt d<n||kr�|t d <n||}qTWdS( sw Read /proc/self/auxv and parse it into global dict for easier access later on, very similar to what rpm does. s/proc/self/auxvtrbNiitLLiR/R0( RWtreadtstructtcalcsizetctypestc_char_pRKtunpack_fromtvaluet_aux_vector(tdatatAT_PLATFORMtAT_HWCAPtfmtlentoffsetR/tat_typetat_val((s1/usr/lib/python2.7/site-packages/rpmUtils/arch.pyt_parse_auxv�s" cCs�|dkrPx=t�D]2}|jd�r|jd�dkrDdSPqqW|S|dkr`|Sxet�D]Z}|jd�r�|jd�dkr�d S|jd �rj|jd�dkr�dSPqjqjW|S(NRs model names Geode(TM)i����RR tvendortAuthenticAMDRtflagstcmov(RXR5tfind(R9tline((s1/usr/lib/python2.7/site-packages/rpmUtils/arch.pytgetCanonX86Arch s"$cCs&tjd�}|jd�r"|S|S(Ns%{_target_cpu}tarmv7h(trpmtexpandMacroR5(R9ttarget((s1/usr/lib/python2.7/site-packages/rpmUtils/arch.pytgetCanonARMArch#scCs�|dkr|Sd}x=t�D]2}|jd�dkr |jd�d}Pq q Wtd}|dkrw|rw|Sy6|jd�r�t|djd ��d kr�dSWnnX|dkr�|S|jd�dkr�d S|jd�dkr�dS|S(NRtmachinei����t:iR/tpowerit+iRsCHRP IBMRtiSeriesR(RIRXRotsplitRbR5tinttrstrip(R9RwRpR/((s1/usr/lib/python2.7/site-packages/rpmUtils/arch.pytgetCanonPPCArch*s, .cCs�d}x7t�D],}|jd�r|jd�d}PqqW|dkrP|S|jd�dkr|jd�rxdSdSn|jd �dkr�|jd�r�dSd Sn|jd�dkr�dS|S( NttypeRxitsun4vi����RRRtsun4uRtsun4mR(RIRXR5R|Ro(R9t SPARCtypeRp((s1/usr/lib/python2.7/site-packages/rpmUtils/arch.pytgetCanonSPARCArchHs$cCs�|dkr|Sd}x7t�D],}|jd�r |jd�d}Pq q W|dkr`|S|jd�dks�|jd�dkr�dS|jd �dkr�d S|S(NRt vendor_idRxis Authentic AMDi����RlRtGenuineIntelR(RIRXR5R|Ro(R9RkRp((s1/usr/lib/python2.7/site-packages/rpmUtils/arch.pytgetCanonX86_64Arch`s*cCs,|rqtjdtj�rqyHtdd�}|j�}|j�|jdd�\}}}|SWqqqqXntj�d}t�t |�dkr�|ddkr�|dd!dkr�t |�S|jd �r�t|�S|jd �r�t |�S|jd�rt|�S|dkr(t|�S|S( Ns/etc/rpm/platformRVt-iiitit86tarmRRR(tostaccesstR_OKRWtreadlinetcloseR|tunameRjRKRqR5RvRR�R�(tskipRpmPlatformtfRpR9Rktopersys((s1/usr/lib/python2.7/site-packages/rpmUtils/arch.pytgetCanonArchrs, 5 cCsE|tkrt|S|tkrAt|dkrAtdt|�SdS(NRR9(RJR6tgetMultiArchInfoRI(R9((s1/usr/lib/python2.7/site-packages/rpmUtils/arch.pyR��s cCsd|r|}nt}|jd�r5t|d}n|jd�r`tr`|dkr`d}n|S(NRiRRR(RGR5RJt_ppc64_native_is_best(R1R9((s1/usr/lib/python2.7/site-packages/rpmUtils/arch.pyR2�s " cCs|st}n|tkr|S|jd�r2dS|dkrBdS|jd�r\tr\dS|jd�rodS|jd�r�dS|jd �r�d Std |�r�|tkr�|St|Sn|tkr|}t|}x |dkr�|}t|}q�W|SdS( 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.RRRRRR(RrtarmhfpR�R9RN(RGR6R5R�R3RJ(R1tbasearchRa((s1/usr/lib/python2.7/site-packages/rpmUtils/arch.pyR4�s6 tArchStoragecBsDeZdZd�Zded�Zdd�Zd�Zd�Z RS(scclass for keeping track of what arch we have set and doing various permutations based on itcCsDd|_d|_d|_g|_g|_t|_|j�dS(N( RIt canonarchR�ROtcompatarchesRMR>tmultilibt setup_arch(tself((s1/usr/lib/python2.7/site-packages/rpmUtils/arch.pyt__init__�s cCs�|r||_n t|_td|j�|_td|j�|_|s�g}x9|jD].}t|�sy|dkr[|j|�q[q[W||_ntd|j�|_ t d|j�|_td|j�|_t d|j�|_dS(NR1RQRR9(R�RGR4R�R?RMR3R8R2ROR�R�R�R=tlegit_multi_arches(R�R9tarchlist_includes_compat_archtlimit_archlistta((s1/usr/lib/python2.7/site-packages/rpmUtils/arch.pyR��s cCs"|s|j}nt|d|�S(NR1(R�RL(R�RMtfromarch((s1/usr/lib/python2.7/site-packages/rpmUtils/arch.pytget_best_arch_from_list�scCst|j|�S(N(RDR�(R�R9((s1/usr/lib/python2.7/site-packages/rpmUtils/arch.pyRH�scCs|s |jStd|�S(NRQ(RMR?(R�R9((s1/usr/lib/python2.7/site-packages/rpmUtils/arch.pyt get_arch_list�sN( t__name__t __module__t__doc__R�RIR@R�R�RHR�(((s1/usr/lib/python2.7/site-packages/rpmUtils/arch.pyR��s (sathlonsx86_64sathlon(ssparcv9vssparcv9vssparc64v(ssparcv9ssparcv9ssparc64(sppcsppcsppc64(RR R(sppcsppc64sppc64(R�RsR^R\R@R�RJR6RbRIR=RCRDRHR3RLR?RXRjRqRvRR�R�R�RGR�R2R4tobjectR�(((s1/usr/lib/python2.7/site-packages/rpmUtils/arch.pyt<module>s� , (
/home/../lib/python2.7/./site-packages/rpmUtils/arch.pyc