Add an "umbrella" crate, which seeks to provide a convenient interface.
This currently pulls in cretonne-codegen and cretonne-frontend and provides a simple prelude interface. This fixes #287.
This commit is contained in:
@@ -19,6 +19,7 @@ cretonne-frontend = { path = "lib/frontend", version = "0.4.4" }
|
||||
cretonne-wasm = { path = "lib/wasm", version = "0.4.4" }
|
||||
cretonne-native = { path = "lib/native", version = "0.4.4" }
|
||||
cretonne-filetests = { path = "lib/filetests", version = "0.4.4" }
|
||||
cretonne = { path = "lib/umbrella", version = "0.4.4" }
|
||||
filecheck = "0.2.1"
|
||||
docopt = "0.8.0"
|
||||
serde = "1.0.8"
|
||||
|
||||
@@ -27,7 +27,13 @@ cargo update
|
||||
|
||||
echo git commit -a -m "\"Bump version to $version"\"
|
||||
echo git push
|
||||
for crate in entity codegen frontend native reader wasm ; do
|
||||
for crate in entity codegen frontend native reader wasm umbrella ; do
|
||||
if [ "$crate" == "umbrella" ]; then
|
||||
dir="cretonne"
|
||||
else
|
||||
dir="$crate"
|
||||
fi
|
||||
|
||||
echo cargo publish --manifest-path "lib/$crate/Cargo.toml"
|
||||
done
|
||||
echo
|
||||
|
||||
18
lib/umbrella/Cargo.toml
Normal file
18
lib/umbrella/Cargo.toml
Normal file
@@ -0,0 +1,18 @@
|
||||
[package]
|
||||
authors = ["The Cretonne Project Developers"]
|
||||
name = "cretonne"
|
||||
version = "0.4.4"
|
||||
description = "Umbrella for commonly-used cretonne crates"
|
||||
license = "Apache-2.0"
|
||||
documentation = "https://cretonne.readthedocs.io/"
|
||||
repository = "https://github.com/cretonne/cretonne"
|
||||
readme = "README.md"
|
||||
keywords = ["compile", "compiler", "jit"]
|
||||
|
||||
[dependencies]
|
||||
cretonne-codegen = { path = "../codegen", version = "0.4.4" }
|
||||
cretonne-frontend = { path = "../frontend", version = "0.4.4" }
|
||||
|
||||
[badges]
|
||||
maintenance = { status = "experimental" }
|
||||
travis-ci = { repository = "cretonne/cretonne" }
|
||||
3
lib/umbrella/README.md
Normal file
3
lib/umbrella/README.md
Normal file
@@ -0,0 +1,3 @@
|
||||
This is an umbrella crate which contains no code of its own, but pulls in
|
||||
other cretonne library crates to provide a convenient one-line dependency
|
||||
for common use cases.
|
||||
19
lib/umbrella/src/lib.rs
Normal file
19
lib/umbrella/src/lib.rs
Normal file
@@ -0,0 +1,19 @@
|
||||
//! Cretonne umbrella crate, providing a convenient one-line dependency.
|
||||
|
||||
#![deny(missing_docs, trivial_numeric_casts, unused_extern_crates)]
|
||||
#![cfg_attr(feature = "clippy", plugin(clippy(conf_file = "../../clippy.toml")))]
|
||||
|
||||
pub extern crate cretonne_codegen;
|
||||
pub extern crate cretonne_frontend;
|
||||
|
||||
/// A prelude providing convenient access to commonly-used cretonne features. Use
|
||||
/// as `use cretonne::prelude::*`.
|
||||
pub mod prelude {
|
||||
pub use cretonne_codegen;
|
||||
pub use cretonne_codegen::entity::EntityRef;
|
||||
pub use cretonne_codegen::ir::{AbiParam, InstBuilder, Value, Ebb, Signature, CallConv};
|
||||
pub use cretonne_codegen::ir::types;
|
||||
pub use cretonne_codegen::ir::condcodes::IntCC;
|
||||
|
||||
pub use cretonne_frontend::{FunctionBuilderContext, FunctionBuilder, Variable};
|
||||
}
|
||||
Reference in New Issue
Block a user