pub struct GccDylibSet {
dylibs: BTreeMap<GccTargetPair, GccOutput>,
}Expand description
Set of libgccjit dylibs that can be used by cg_gcc to compile code for a set of targets.
libgccjit requires a separate build for each (host, target) pair.
So if you are on linux-x64 and build for linux-aarch64, you will need at least:
- linux-x64 -> linux-x64 libgccjit (for building host code like proc macros)
- linux-x64 -> linux-aarch64 libgccjit (for the aarch64 target code)
Fields§
§dylibs: BTreeMap<GccTargetPair, GccOutput>Implementations§
Source§impl GccDylibSet
impl GccDylibSet
Sourcepub fn build(
builder: &Builder<'_>,
host: TargetSelection,
targets: Vec<TargetSelection>,
) -> Self
pub fn build( builder: &Builder<'_>, host: TargetSelection, targets: Vec<TargetSelection>, ) -> Self
Build a set of libgccjit dylibs that will be executed on host and will generate code for
each specified target.
Sourcepub fn install_to(&self, builder: &Builder<'_>, compiler: Compiler)
pub fn install_to(&self, builder: &Builder<'_>, compiler: Compiler)
Install the libgccjit dylibs to the corresponding target directories of the given compiler. cg_gcc know how to search for the libgccjit dylibs in these directories, according to the (host, target) pair that is being compiled by rustc and cg_gcc.
Trait Implementations§
Source§impl Clone for GccDylibSet
impl Clone for GccDylibSet
Source§fn clone(&self) -> GccDylibSet
fn clone(&self) -> GccDylibSet
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl Freeze for GccDylibSet
impl RefUnwindSafe for GccDylibSet
impl Send for GccDylibSet
impl Sync for GccDylibSet
impl Unpin for GccDylibSet
impl UnwindSafe for GccDylibSet
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Pointable for T
impl<T> Pointable for T
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 24 bytes