|
|
|
---
|
|
|
|
short-description: Rust language integration module
|
|
|
|
authors:
|
|
|
|
- name: Dylan Baker
|
|
|
|
email: dylan@pnwbakers.com
|
|
|
|
years: [2020]
|
|
|
|
...
|
|
|
|
|
|
|
|
# Unstable Rust module
|
|
|
|
|
|
|
|
*(new in 0.57.0)*
|
|
|
|
|
|
|
|
**Note** Unstable modules make no backwards compatible API guarantees.
|
|
|
|
|
|
|
|
The rust module provides helper to integrate rust code into meson. The
|
|
|
|
goal is to make using rust in meson more pleasant, while still
|
|
|
|
remaining mesonic, this means that it attempts to make rust work more
|
|
|
|
like meson, rather than meson work more like rust.
|
|
|
|
|
|
|
|
## Functions
|
|
|
|
|
|
|
|
### test(name: string, target: library | executable, dependencies: []Dependency)
|
|
|
|
|
|
|
|
This function creates a new rust unittest target from an existing rust
|
|
|
|
based target, which may be a library or executable. It does this by
|
|
|
|
copying the sources and arguments passed to the original target and
|
|
|
|
adding the `--test` argument to the compilation, then creates a new
|
|
|
|
test target which calls that executable, using the rust test protocol.
|
|
|
|
|
|
|
|
This accepts all of the keyword arguments as the
|
|
|
|
[`test`](Reference-manual.md#test) function except `protocol`, it will set
|
|
|
|
that automatically.
|
|
|
|
|
|
|
|
Additional, test only dependencies may be passed via the dependencies
|
|
|
|
argument.
|