cargo_wrap 0.1.0

A small rust wrapper that allows the usage of cargo as a library
Documentation
Cargo-Wrap
-------------------------------------
This crate is basically just Rust bindings for `cargo`. For now supports the following flags and features:

## Features

* Verbose logging (`--verbose`)
* Release or Debug build modes (`--release`)
* Custom job counts (`--jobs N`)
* Custom target output directories (`CARGO_TARGET_DIR`)
* Specify build targets (`--target X`)
* Feature listing and activation (`--features X`, `--no-default-features`)
* Binary/Library build selection (`--bin X`, `--lib X`)

## Installation


```shell
cargo add cargo_wrap
```
```toml
cargo_wrap = "0.1.0"
```

## Examples


### Basic Build


```rust
use cargo_wrap::{Builder, ProjectSettings};
use std::io;

fn main() -> io::Result<()> {
    let mut settings = ProjectSettings::new("/path/to/project", None, None, false);
    settings.set_release();

    let builder = Builder::new(settings, 0, Some("output.log"))?;
    builder.build()?;

    Ok(())
}
```

### Enable Features

```rust
use cargo_wrap::{Builder, ProjectSettings};
use std::io;

fn main() -> io::Result<()> {
    let mut settings = ProjectSettings::new("/path/to/project", None, None, false);
    settings.add_feature("my_feature".to_string());

    let builder = Builder::new(settings, 0, None)?;
    builder.build()?;

    Ok(())
}
```

## License

MIT