View source code
Display the source code in dmd/target.d from which this page was generated on github.
Report a bug
If you spot a problem with this page, click here to create a Bugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page. Requires a signed-in GitHub account. This works well for small changes. If you'd like to make larger changes you may want to consider using local clone.

Module dmd.target

Handles target-specific parameters

In order to allow for cross compilation, when the compiler produces a binary for a different platform than it is running on, target information needs to be abstracted. This is done in this module, primarily through Target.

Note

While DMD itself does not support cross-compilation, GDC and LDC do. Hence, this module is (sometimes heavily) modified by them, and contributors should review how their changes affect them.

See Also

- Target Triplets - LDC repository - GDC repository

Documentation

https://dlang.org/phobos/dmd_target.html

Coverage

https://codecov.io/gh/dlang/dmd/src/master/src/dmd/target.d

Structs

NameDescription
Target Describes a back-end target. At present it is incomplete, but in the future it should grow to contain most or all target machine and target O/S specific information.
TargetC Functions and variables specific to interfacing with extern(C) ABI.
TargetCPP Functions and variables specific to interface with extern(C++) ABI.
TargetObjC Functions and variables specific to interface with extern(Objective-C) ABI.
Triple Sets CPU Operating System, and optionally C/C++ runtime environment from the given triple e.g. x86_64+avx2-apple-darwin20.3.0 x86-unknown-linux-musl-clang x64-windows-msvc x64-pc-windows-msvc

Global variables

NameTypeDescription
target Target

Authors

Walter Bright

License

Boost License 1.0