diff options
author | cinap_lenrek <cinap_lenrek@localhost> | 2011-05-03 11:25:13 +0000 |
---|---|---|
committer | cinap_lenrek <cinap_lenrek@localhost> | 2011-05-03 11:25:13 +0000 |
commit | 458120dd40db6b4df55a4e96b650e16798ef06a0 (patch) | |
tree | 8f82685be24fef97e715c6f5ca4c68d34d5074ee /sys/src/cmd/python/Doc/lib/libplatform.tex | |
parent | 3a742c699f6806c1145aea5149bf15de15a0afd7 (diff) |
add hg and python
Diffstat (limited to 'sys/src/cmd/python/Doc/lib/libplatform.tex')
-rw-r--r-- | sys/src/cmd/python/Doc/lib/libplatform.tex | 221 |
1 files changed, 221 insertions, 0 deletions
diff --git a/sys/src/cmd/python/Doc/lib/libplatform.tex b/sys/src/cmd/python/Doc/lib/libplatform.tex new file mode 100644 index 000000000..810e08b63 --- /dev/null +++ b/sys/src/cmd/python/Doc/lib/libplatform.tex @@ -0,0 +1,221 @@ +\section{\module{platform} --- + Access to underlying platform's identifying data.} + +\declaremodule{standard}{platform} +\modulesynopsis{Retrieves as much platform identifying data as possible.} +\moduleauthor{Marc-Andre Lemburg}{mal@egenix.com} +\sectionauthor{Bjorn Pettersen}{bpettersen@corp.fairisaac.com} + +\versionadded{2.3} + +\begin{notice} + Specific platforms listed alphabetically, with Linux included in the + \UNIX{} section. +\end{notice} + +\subsection{Cross Platform} + +\begin{funcdesc}{architecture}{executable=sys.executable, bits='', linkage=''} + Queries the given executable (defaults to the Python interpreter + binary) for various architecture information. + + Returns a tuple \code{(bits, linkage)} which contain information about + the bit architecture and the linkage format used for the + executable. Both values are returned as strings. + + Values that cannot be determined are returned as given by the + parameter presets. If bits is given as \code{''}, the + \cfunction{sizeof(pointer)} + (or \cfunction{sizeof(long)} on Python version < 1.5.2) is used as + indicator for the supported pointer size. + + The function relies on the system's \file{file} command to do the + actual work. This is available on most if not all \UNIX{} + platforms and some non-\UNIX{} platforms and then only if the + executable points to the Python interpreter. Reasonable defaults + are used when the above needs are not met. +\end{funcdesc} + +\begin{funcdesc}{machine}{} + Returns the machine type, e.g. \code{'i386'}. + An empty string is returned if the value cannot be determined. +\end{funcdesc} + +\begin{funcdesc}{node}{} + Returns the computer's network name (may not be fully qualified!). + An empty string is returned if the value cannot be determined. +\end{funcdesc} + +\begin{funcdesc}{platform}{aliased=0, terse=0} + Returns a single string identifying the underlying platform + with as much useful information as possible. + + The output is intended to be \emph{human readable} rather than + machine parseable. It may look different on different platforms and + this is intended. + + If \var{aliased} is true, the function will use aliases for various + platforms that report system names which differ from their common + names, for example SunOS will be reported as Solaris. The + \function{system_alias()} function is used to implement this. + + Setting \var{terse} to true causes the function to return only the + absolute minimum information needed to identify the platform. +\end{funcdesc} + +\begin{funcdesc}{processor}{} + Returns the (real) processor name, e.g. \code{'amdk6'}. + + An empty string is returned if the value cannot be determined. Note + that many platforms do not provide this information or simply return + the same value as for \function{machine()}. NetBSD does this. +\end{funcdesc} + +\begin{funcdesc}{python_build}{} + Returns a tuple \code{(\var{buildno}, \var{builddate})} stating the + Python build number and date as strings. +\end{funcdesc} + +\begin{funcdesc}{python_compiler}{} + Returns a string identifying the compiler used for compiling Python. +\end{funcdesc} + +\begin{funcdesc}{python_version}{} + Returns the Python version as string \code{'major.minor.patchlevel'} + + Note that unlike the Python \code{sys.version}, the returned value + will always include the patchlevel (it defaults to 0). +\end{funcdesc} + +\begin{funcdesc}{python_version_tuple}{} + Returns the Python version as tuple \code{(\var{major}, \var{minor}, + \var{patchlevel})} of strings. + + Note that unlike the Python \code{sys.version}, the returned value + will always include the patchlevel (it defaults to \code{'0'}). +\end{funcdesc} + +\begin{funcdesc}{release}{} + Returns the system's release, e.g. \code{'2.2.0'} or \code{'NT'} + An empty string is returned if the value cannot be determined. +\end{funcdesc} + +\begin{funcdesc}{system}{} + Returns the system/OS name, e.g. \code{'Linux'}, \code{'Windows'}, + or \code{'Java'}. + An empty string is returned if the value cannot be determined. +\end{funcdesc} + +\begin{funcdesc}{system_alias}{system, release, version} + Returns \code{(\var{system}, \var{release}, \var{version})} aliased + to common marketing names used for some systems. It also does some + reordering of the information in some cases where it would otherwise + cause confusion. +\end{funcdesc} + +\begin{funcdesc}{version}{} + Returns the system's release version, e.g. \code{'\#3 on degas'}. + An empty string is returned if the value cannot be determined. +\end{funcdesc} + +\begin{funcdesc}{uname}{} + Fairly portable uname interface. Returns a tuple of strings + \code{(\var{system}, \var{node}, \var{release}, \var{version}, + \var{machine}, \var{processor})} identifying the underlying + platform. + + Note that unlike the \function{os.uname()} function this also returns + possible processor information as additional tuple entry. + + Entries which cannot be determined are set to \code{''}. +\end{funcdesc} + + +\subsection{Java Platform} + +\begin{funcdesc}{java_ver}{release='', vendor='', vminfo=('','',''), + osinfo=('','','')} + Version interface for JPython. + + Returns a tuple \code{(\var{release}, \var{vendor}, \var{vminfo}, + \var{osinfo})} with \var{vminfo} being a tuple \code{(\var{vm_name}, + \var{vm_release}, \var{vm_vendor})} and \var{osinfo} being a tuple + \code{(\var{os_name}, \var{os_version}, \var{os_arch})}. + Values which cannot be determined are set to the defaults + given as parameters (which all default to \code{''}). +\end{funcdesc} + + +\subsection{Windows Platform} + +\begin{funcdesc}{win32_ver}{release='', version='', csd='', ptype=''} + Get additional version information from the Windows Registry + and return a tuple \code{(\var{version}, \var{csd}, \var{ptype})} + referring to version number, CSD level and OS type (multi/single + processor). + + As a hint: \var{ptype} is \code{'Uniprocessor Free'} on single + processor NT machines and \code{'Multiprocessor Free'} on multi + processor machines. The \emph{'Free'} refers to the OS version being + free of debugging code. It could also state \emph{'Checked'} which + means the OS version uses debugging code, i.e. code that + checks arguments, ranges, etc. + + \begin{notice}[note] + This function only works if Mark Hammond's \module{win32all} + package is installed and (obviously) only runs on Win32 + compatible platforms. + \end{notice} +\end{funcdesc} + +\subsubsection{Win95/98 specific} + +\begin{funcdesc}{popen}{cmd, mode='r', bufsize=None} + Portable \function{popen()} interface. Find a working popen + implementation preferring \function{win32pipe.popen()}. On Windows + NT, \function{win32pipe.popen()} should work; on Windows 9x it hangs + due to bugs in the MS C library. + % This KnowledgeBase article appears to be missing... + %See also \ulink{MS KnowledgeBase article Q150956}{}. +\end{funcdesc} + + +\subsection{Mac OS Platform} + +\begin{funcdesc}{mac_ver}{release='', versioninfo=('','',''), machine=''} + Get Mac OS version information and return it as tuple + \code{(\var{release}, \var{versioninfo}, \var{machine})} with + \var{versioninfo} being a tuple \code{(\var{version}, + \var{dev_stage}, \var{non_release_version})}. + + Entries which cannot be determined are set to \code{''}. All tuple + entries are strings. + + Documentation for the underlying \cfunction{gestalt()} API is + available online at \url{http://www.rgaros.nl/gestalt/}. +\end{funcdesc} + + +\subsection{\UNIX{} Platforms} + +\begin{funcdesc}{dist}{distname='', version='', id='', + supported_dists=('SuSE','debian','redhat','mandrake')} + Tries to determine the name of the OS distribution name + Returns a tuple \code{(\var{distname}, \var{version}, \var{id})} + which defaults to the args given as parameters. +\end{funcdesc} + + +\begin{funcdesc}{libc_ver}{executable=sys.executable, lib='', + version='', chunksize=2048} + Tries to determine the libc version against which the file + executable (defaults to the Python interpreter) is linked. Returns + a tuple of strings \code{(\var{lib}, \var{version})} which default + to the given parameters in case the lookup fails. + + Note that this function has intimate knowledge of how different + libc versions add symbols to the executable is probably only + useable for executables compiled using \program{gcc}. + + The file is read and scanned in chunks of \var{chunksize} bytes. +\end{funcdesc} |