1 unstable release
0.0.0 | Oct 28, 2020 |
---|
#121 in #containing
23KB
358 lines
cargo-container
Wrap vanilla cargo rlibs/packages in generated "containers" for various ends.
Quickstart
- Clone this repository
- Open in VS Code
- Install extensions recommended by workspace
- Hit F5
This will build and run one of the example projects of example/multiplatform in Chrome
Basic Guide
cargo install cargo-container
- Author a
Container.toml
workspace instead of a regularCargo.toml
workspace- Write a
[workspace]
like you would inCargo.toml
, withmembers
(and optionallyexclude
) - Define one or more
[[build]]
sections defining whatcrates
to wrap with whattools
- Optional: specify more crates to auto-install via
[local-install]
- Write a
- Author the crates to wrap in said boilerplate
- Run
cargo container build
. This will:- Install any bin dependencies specified by
[local-install]
- Run
tools
to generate Cargo.toml projects - Generate a
Cargo.toml
alongsideContainer.toml
that references the generated dependencies - Runs
tools
to build generated Cargo.toml projects
- Install any bin dependencies specified by
- Profit!
License
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
Dependencies
~2.6–3.5MB
~72K SLoC