grthtrhthjhtyjytjytkergtrhtrjytjerhrfh4:24 29/09/2026a XC?h= ã@spdZddlZddlZz ddlZWney:ddlZYn0dd„Zdd„Zdd„Zd d „Z d d „Z d d„Z dS)zShared AIX support functions.éNcCs@tjdkrdnd}|dkr|nd}d |d|d|d||¡S) Niÿÿÿé é@ré'zaix-{:1x}{:1d}{:02d}-{:04d}-{}éé)ÚsysÚmaxsizeÚformat)ZvrtlÚbdZ_szÚ_bd©r ú1/opt/alt/python39/lib64/python3.9/_aix_support.pyÚ_aix_tagsrcCs2| d¡dd…\}}}t|dƒt|ƒt|ƒgS)NÚ.ééÿÿÿÿ)ÚsplitÚint)ÚvrmfÚvÚrZtlr r r Ú _aix_vrtlsrcCsRt gd¢¡}| d¡}| ¡ d¡}|ddkr>t|dƒnd}t|dƒ|fS)a( Return a Tuple[str, int] e.g., ['7.1.4.34', 1806] The fileset bos.rte represents the current AIX run-time level. It's VRMF and builddate reflect the current ABI levels of the runtime environment. If no builddate is found give a value that will satisfy pep425 related queries )z/usr/bin/lslppz-Lqczbos.rtezutf-8ú:rÚrr)Ú subprocessZ check_outputÚdecodeÚstriprrÚstr)Úoutr r r r Ú _aix_bos_rtes  rcCstƒ\}}tt|ƒ|ƒS)a¨ AIX filesets are identified by four decimal values: V.R.M.F. V (version) and R (release) can be retreived using ``uname`` Since 2007, starting with AIX 5.3 TL7, the M value has been included with the fileset bos.rte and represents the Technology Level (TL) of AIX. The F (Fix) value also increases, but is not relevant for comparing releases and binary compatibility. For binary compatibility the so-called builddate is needed. Again, the builddate of an AIX release is associated with bos.rte. AIX ABI compatibility is described as guaranteed at: https://www.ibm.com/ support/knowledgecenter/en/ssw_aix_72/install/binary_compatability.html For pep425 purposes the AIX platform tag becomes: "aix-{:1x}{:1d}{:02d}-{:04d}-{}".format(v, r, tl, builddate, bitsize) e.g., "aix-6107-1415-32" for AIX 6.1 TL7 bd 1415, 32-bit and, "aix-6107-1415-64" for AIX 6.1 TL7 bd 1415, 64-bit )rrr)rr r r r Ú aix_platform.s r cCs t d¡}|stdƒ‚t|d�S)NZBUILD_GNU_TYPEzBUILD_GNU_TYPE is not defined)r)Ú sysconfigÚget_config_varÚ ValueErrorr)Zgnu_typer r r Ú_aix_bgtFs r$c CsHt d¡}z t|ƒ}Wn$ttfy:td|›�ƒ‚Yn0ttƒ|ƒS)zD Return the platform_tag of the system Python was built on. Z AIX_BUILDDATEz)AIX_BUILDDATE is not defined or invalid: )r!r"rr#Ú TypeErrorrr$)Z build_dater r r Ú aix_buildtagNs  ÿr&) Ú__doc__rr!rÚ ImportErrorZ_bootsubprocessrrrr r$r&r r r r Ús