Struct maturin::BuildOptions
source · [−]pub struct BuildOptions {
pub platform_tag: Option<PlatformTag>,
pub interpreter: Option<Vec<PathBuf>>,
pub bindings: Option<String>,
pub manifest_path: Option<PathBuf>,
pub out: Option<PathBuf>,
pub skip_auditwheel: bool,
pub zig: bool,
pub target: Option<String>,
pub cargo_extra_args: Vec<String>,
pub rustc_extra_args: Vec<String>,
pub universal2: bool,
}
Expand description
High level API for building wheels from a crate which is also used for the CLI
Fields
platform_tag: Option<PlatformTag>
Control the platform tag on linux.
Options are manylinux
tags (for example manylinux2014
/manylinux_2_24
)
or musllinux
tags (for example musllinux_1_2
)
and linux
for the native linux tag.
Note that manylinux1
is unsupported by the rust compiler. Wheels with the native linux
tag
will be rejected by pypi, unless they are separately validated by auditwheel
.
The default is the lowest compatible manylinux
tag, or plain linux
if nothing matched
This option is ignored on all non-linux platforms
interpreter: Option<Vec<PathBuf>>
The python versions to build wheels for, given as the names of the interpreters. Uses autodiscovery if not explicitly set.
bindings: Option<String>
Which kind of bindings to use. Possible values are pyo3, rust-cpython, cffi and bin
manifest_path: Option<PathBuf>
The path to the Cargo.toml
out: Option<PathBuf>
The directory to store the built wheels in. Defaults to a new “wheels” directory in the project’s target directory
skip_auditwheel: bool
Don’t check for manylinux compliance
zig: bool
For manylinux targets, use zig to ensure compliance for the chosen manylinux version
Default to manylinux2010/manylinux_2_12 if you do not specify an --compatibility
Make sure you installed zig with pip install maturin[zig]
target: Option<String>
The –target option for cargo
cargo_extra_args: Vec<String>
Extra arguments that will be passed to cargo as cargo rustc [...] [arg1] [arg2] -- [...]
Use as --cargo-extra-args="--my-arg"
Note that maturin invokes cargo twice: Once as cargo metadata
and then as cargo rustc
.
maturin tries to pass only the shared subset of options to cargo metadata, but this is may
be a bit flaky.
rustc_extra_args: Vec<String>
Extra arguments that will be passed to rustc as cargo rustc [...] -- [...] [arg1] [arg2]
Use as --rustc-extra-args="--my-arg"
universal2: bool
Control whether to build universal2 wheel for macOS or not. Only applies to macOS targets, do nothing otherwise.
Implementations
pub fn into_build_context(
self,
release: bool,
strip: bool,
editable: bool
) -> Result<BuildContext>
pub fn into_build_context(
self,
release: bool,
strip: bool,
editable: bool
) -> Result<BuildContext>
Tries to fill the missing metadata for a BuildContext by querying cargo and python
Trait Implementations
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Instantiate Self
from ArgMatches
, parsing the arguments as needed. Read more
Assign values from ArgMatches
to self
.
fn parse_from<I, T>(itr: I) -> Self where
I: IntoIterator<Item = T>,
T: Into<OsString> + Clone,
fn parse_from<I, T>(itr: I) -> Self where
I: IntoIterator<Item = T>,
T: Into<OsString> + Clone,
Parse from iterator, exit on error
fn try_parse_from<I, T>(itr: I) -> Result<Self, Error> where
I: IntoIterator<Item = T>,
T: Into<OsString> + Clone,
fn try_parse_from<I, T>(itr: I) -> Result<Self, Error> where
I: IntoIterator<Item = T>,
T: Into<OsString> + Clone,
Parse from iterator, return Err on error.
fn update_from<I, T>(&mut self, itr: I) where
I: IntoIterator<Item = T>,
T: Into<OsString> + Clone,
fn update_from<I, T>(&mut self, itr: I) where
I: IntoIterator<Item = T>,
T: Into<OsString> + Clone,
Update from iterator, exit on error
fn try_update_from<I, T>(&mut self, itr: I) -> Result<(), Error> where
I: IntoIterator<Item = T>,
T: Into<OsString> + Clone,
fn try_update_from<I, T>(&mut self, itr: I) -> Result<(), Error> where
I: IntoIterator<Item = T>,
T: Into<OsString> + Clone,
Update from iterator, return Err on error.
StructOpt::clap
is replaced with IntoApp::into_app
(derived as part of Parser
)
Deprecated, StructOpt::clap
replaced with IntoApp::into_app
(derive as part of
Parser
) Read more
StructOpt::from_clap
is replaced with FromArgMatches::from_arg_matches
(derived as part of Parser
)
Deprecated, StructOpt::from_clap
replaced with FromArgMatches::from_arg_matches
(derive as part of
Parser
) Read more
StructOpt::from_args
is replaced with Parser::parse
(note the change in derives)
Deprecated, StructOpt::from_args
replaced with Parser::parse
(note the change in derives)
StructOpt::from_args_safe
is replaced with Parser::try_parse
(note the change in derives)
Deprecated, StructOpt::from_args_safe
replaced with Parser::try_parse
(note the change in derives)
StructOpt::from_iter
is replaced with Parser::parse_from
(note the change in derives)
Deprecated, StructOpt::from_iter
replaced with Parser::parse_from
(note the change in derives)
fn from_iter_safe<I, T>(itr: I) -> Result<Self, Error> where
I: IntoIterator<Item = T>,
T: Into<OsString> + Clone,
fn from_iter_safe<I, T>(itr: I) -> Result<Self, Error> where
I: IntoIterator<Item = T>,
T: Into<OsString> + Clone,
StructOpt::from_iter_safe
is replaced with Parser::try_parse_from
(note the change in derives)
Deprecated, StructOpt::from_iter_safe
replaced with Parser::try_parse_from
(note the
change in derives) Read more
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
This method tests for !=
.
Auto Trait Implementations
impl RefUnwindSafe for BuildOptions
impl Send for BuildOptions
impl Sync for BuildOptions
impl Unpin for BuildOptions
impl UnwindSafe for BuildOptions
Blanket Implementations
Mutably borrows from an owned value. Read more
Compare self to key
and return true
if they are equal.