Target machine information (target_machine
extends build_machine
)
Provides information about the target machine -- the machine on which the compiled binary's output will run. Hence, this object should only be used while cross-compiling a compiler. See Cross-compilation.
It has the same methods as build_machine
.
When all compilation is 'native', all the methods return the same
values as build_machine
(because the build machine is the host
machine and the target machine).
Note that while cross-compiling, it simply returns the values defined
in the cross-info file. If target_machine
values are not defined in
the cross-info file, host_machine
values are returned instead.
Inherited methods
build_machine.cpu()
Returns a more specific CPU name, such as i686
, armv8l
, etc.
Signature
str cpu()
build_machine.cpu_family()
Returns the CPU family name. This table contains all known CPU families. These are guaranteed to continue working.
Signature
str cpu_family()
build_machine.endian()
returns 'big'
on big-endian systems and 'little'
on little-endian systems.
Signature
str endian()
build_machine.kernel()
Returns the name of the Operating System Kernel, such as linux
, xnu
, and
nt
. See here for more complete
list These are more specific
than system
. If this cannot be detected (for the build machine), or is not
set in the cross file (for the host machine when cross compiling), calling
this method is fatal.
Signature
(since 1.2.0)
str kernel()
build_machine.subsystem()
Returns the variant of the operating system, such as ios
and tvos
. See
here for more complete list
These are more specific than system
. If this cannot be detected (for the
build machine), or is not set in the cross file (for the host machine when
cross compiling), calling this method is fatal.
Signature
(since 1.2.0)
str subsystem()
build_machine.system()
Returns the operating system name. This table Lists all of the currently known Operating System names, these are guaranteed to continue working.
Signature
str system()
The results of the search are