Struct libbpf_cargo::SkeletonBuilder
source · [−]pub struct SkeletonBuilder { /* private fields */ }
Expand description
SkeletonBuilder
builds and generates a single skeleton.
This interface is meant to be used in build scripts.
Examples
use libbpf_cargo::SkeletonBuilder;
SkeletonBuilder::new()
.source("myobject.bpf.c")
.debug(true)
.clang("/opt/clang/clang")
.build_and_generate("/output/path")
.unwrap();
Implementations
sourceimpl SkeletonBuilder
impl SkeletonBuilder
pub fn new() -> Self
sourcepub fn source<P: AsRef<Path>>(&mut self, source: P) -> &mut SkeletonBuilder
pub fn source<P: AsRef<Path>>(&mut self, source: P) -> &mut SkeletonBuilder
Point the SkeletonBuilder
to a source file for compilation
Default is None
sourcepub fn obj<P: AsRef<Path>>(&mut self, obj: P) -> &mut SkeletonBuilder
pub fn obj<P: AsRef<Path>>(&mut self, obj: P) -> &mut SkeletonBuilder
Point the SkeletonBuilder
to an object file for generation
Default is None
sourcepub fn debug(&mut self, debug: bool) -> &mut SkeletonBuilder
pub fn debug(&mut self, debug: bool) -> &mut SkeletonBuilder
Turn debug output on or off
Default is off
sourcepub fn clang<P: AsRef<Path>>(&mut self, clang: P) -> &mut SkeletonBuilder
pub fn clang<P: AsRef<Path>>(&mut self, clang: P) -> &mut SkeletonBuilder
Specify which clang
binary to use
Default searchs $PATH
for clang
sourcepub fn clang_args<S: AsRef<str>>(&mut self, opts: S) -> &mut SkeletonBuilder
pub fn clang_args<S: AsRef<str>>(&mut self, opts: S) -> &mut SkeletonBuilder
Pass additional arguments to clang
when buildling BPF object file
Examples
use libbpf_cargo::SkeletonBuilder;
SkeletonBuilder::new()
.source("myobject.bpf.c")
.clang_args("-DMACRO=value -I/some/include/dir")
.build_and_generate("/output/path")
.unwrap();
sourcepub fn skip_clang_version_check(&mut self, skip: bool) -> &mut SkeletonBuilder
pub fn skip_clang_version_check(&mut self, skip: bool) -> &mut SkeletonBuilder
Specify whether or not to skip clang version check
Default is false
sourcepub fn rustfmt<P: AsRef<Path>>(&mut self, rustfmt: P) -> &mut SkeletonBuilder
pub fn rustfmt<P: AsRef<Path>>(&mut self, rustfmt: P) -> &mut SkeletonBuilder
Specify which rustfmt
binary to use
Default searches $PATH
for rustfmt
sourcepub fn build_and_generate<P: AsRef<Path>>(&mut self, output: P) -> Result<()>
pub fn build_and_generate<P: AsRef<Path>>(&mut self, output: P) -> Result<()>
Build BPF programs and generate the skeleton at path output
pub fn build(&mut self) -> Result<()>
pub fn generate<P: AsRef<Path>>(&mut self, output: P) -> Result<()>
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for SkeletonBuilder
impl Send for SkeletonBuilder
impl Sync for SkeletonBuilder
impl Unpin for SkeletonBuilder
impl UnwindSafe for SkeletonBuilder
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more