From ec746c3359656d051a0105f5b968900b46af1d0a Mon Sep 17 00:00:00 2001 From: Jakob Stoklund Olesen Date: Wed, 21 Feb 2018 15:22:59 -0800 Subject: [PATCH] Add a publish-all.sh script. Set identical version numbers on all cretonne-* crates and print "cargo publish" commands. Update all crates to version 0.1.0. --- cranelift/Cargo.toml | 12 ++++++------ cranelift/publish-all.sh | 34 ++++++++++++++++++++++++++++++++++ lib/cretonne/Cargo.toml | 3 +-- lib/filecheck/Cargo.toml | 4 ++-- lib/frontend/Cargo.toml | 5 ++--- lib/native/Cargo.toml | 5 ++--- lib/reader/Cargo.toml | 5 ++--- lib/wasm/Cargo.toml | 7 +++---- 8 files changed, 52 insertions(+), 23 deletions(-) create mode 100755 cranelift/publish-all.sh diff --git a/cranelift/Cargo.toml b/cranelift/Cargo.toml index 45b39ef0a3..fa275ca153 100644 --- a/cranelift/Cargo.toml +++ b/cranelift/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "cretonne-tools" authors = ["The Cretonne Project Developers"] -version = "0.0.0" +version = "0.1.0" description = "Binaries for testing the Cretonne library" license = "Apache-2.0" documentation = "https://cretonne.readthedocs.io/" @@ -13,11 +13,11 @@ name = "cton-util" path = "src/cton-util.rs" [dependencies] -cretonne = { path = "lib/cretonne" } -cretonne-reader = { path = "lib/reader" } -cretonne-frontend = { path = "lib/frontend" } -cretonne-wasm = { path = "lib/wasm" } -cretonne-native = { path = "lib/native" } +cretonne = { path = "lib/cretonne", version = "0.1.0" } +cretonne-reader = { path = "lib/reader", version = "0.1.0" } +cretonne-frontend = { path = "lib/frontend", version = "0.1.0" } +cretonne-wasm = { path = "lib/wasm", version = "0.1.0" } +cretonne-native = { path = "lib/native", version = "0.1.0" } filecheck = { path = "lib/filecheck" } docopt = "0.8.0" serde = "1.0.8" diff --git a/cranelift/publish-all.sh b/cranelift/publish-all.sh new file mode 100755 index 0000000000..144aa519f8 --- /dev/null +++ b/cranelift/publish-all.sh @@ -0,0 +1,34 @@ +#!/bin/bash +set -e +cd $(dirname "$0") +topdir=$(pwd) + +# All the cretonne-* crates have the same version number +# The filecheck crate version is managed independently. +version="0.1.0" + +# Update all of the Cargo.toml files. +# +# The main Cargo.toml in the top-level directory is the cretonne-tools crate which we don't publish. +echo "Updating crate versions to $version" +for crate in . lib/*; do + if [ "$crate" = "lib/filecheck" ]; then + continue + fi + # Update the version number of this crate to $version. + sed -i "" -e "s/^version = .*/version = \"$version\"/" $crate/Cargo.toml + # Update the required version number of any cretonne* dependencies. + sed -i "" -e "/^cretonne/s/version = \"[^\"]*\"/version = \"$version\"/" $crate/Cargo.toml +done + +# Update our local Cargo.lock (not checked in). +cargo update +./test-all.sh + +# Commands needed to publish. +# +# Note that libraries need to be published in topological order. + +for crate in filecheck cretonne frontend native reader wasm; do + echo cargo publish --manifest-path lib/$crate/Cargo.toml +done diff --git a/lib/cretonne/Cargo.toml b/lib/cretonne/Cargo.toml index e85779913c..042d372efc 100644 --- a/lib/cretonne/Cargo.toml +++ b/lib/cretonne/Cargo.toml @@ -1,12 +1,11 @@ [package] authors = ["The Cretonne Project Developers"] name = "cretonne" -version = "0.0.0" +version = "0.1.0" description = "Low-level code generator library" license = "Apache-2.0" documentation = "https://cretonne.readthedocs.io/" repository = "https://github.com/stoklund/cretonne" -publish = false readme = "README.md" build = "build.rs" diff --git a/lib/filecheck/Cargo.toml b/lib/filecheck/Cargo.toml index 41effb059d..c539213d29 100644 --- a/lib/filecheck/Cargo.toml +++ b/lib/filecheck/Cargo.toml @@ -1,7 +1,7 @@ [package] authors = ["The Cretonne Project Developers"] name = "filecheck" -version = "0.0.1" +version = "0.1.0" description = "Library for matching test outputs against filecheck directives" license = "Apache-2.0" repository = "https://github.com/stoklund/cretonne" @@ -11,4 +11,4 @@ documentation = "https://docs.rs/filecheck" name = "filecheck" [dependencies] -regex = "0.2.2" +regex = "0.2.6" diff --git a/lib/frontend/Cargo.toml b/lib/frontend/Cargo.toml index 704517c176..6f8e46b67c 100644 --- a/lib/frontend/Cargo.toml +++ b/lib/frontend/Cargo.toml @@ -1,16 +1,15 @@ [package] authors = ["The Cretonne Project Developers"] name = "cretonne-frontend" -version = "0.0.0" +version = "0.1.0" description = "Cretonne IL builder helper" license = "Apache-2.0" documentation = "https://cretonne.readthedocs.io/" repository = "https://github.com/stoklund/cretonne" -publish = false readme = "README.md" [lib] name = "cton_frontend" [dependencies] -cretonne = { path = "../cretonne" } +cretonne = { path = "../cretonne", version = "0.1.0" } diff --git a/lib/native/Cargo.toml b/lib/native/Cargo.toml index c7389127c6..32230306b1 100644 --- a/lib/native/Cargo.toml +++ b/lib/native/Cargo.toml @@ -1,8 +1,7 @@ [package] name = "cretonne-native" -version = "0.0.0" +version = "0.1.0" authors = ["The Cretonne Project Developers"] -publish = false description = "Support for targeting the host with Cretonne" repository = "https://github.com/stoklund/cretonne" license = "Apache-2.0" @@ -12,7 +11,7 @@ readme = "README.md" name = "cton_native" [dependencies] -cretonne = { path = "../cretonne" } +cretonne = { path = "../cretonne", version = "0.1.0" } [target.'cfg(any(target_arch = "x86", target_arch = "x86_64"))'.dependencies] raw-cpuid = "3.0.0" diff --git a/lib/reader/Cargo.toml b/lib/reader/Cargo.toml index 4ea993ab0c..47b2eb98b7 100644 --- a/lib/reader/Cargo.toml +++ b/lib/reader/Cargo.toml @@ -1,16 +1,15 @@ [package] authors = ["The Cretonne Project Developers"] name = "cretonne-reader" -version = "0.0.0" +version = "0.1.0" description = "Cretonne textual IL reader" license = "Apache-2.0" documentation = "https://cretonne.readthedocs.io/" repository = "https://github.com/stoklund/cretonne" -publish = false readme = "README.md" [lib] name = "cton_reader" [dependencies] -cretonne = { path = "../cretonne" } +cretonne = { path = "../cretonne", version = "0.1.0" } diff --git a/lib/wasm/Cargo.toml b/lib/wasm/Cargo.toml index 7947348d98..fd1fe693ae 100644 --- a/lib/wasm/Cargo.toml +++ b/lib/wasm/Cargo.toml @@ -1,8 +1,7 @@ [package] name = "cretonne-wasm" -version = "0.0.0" +version = "0.1.0" authors = ["The Cretonne Project Developers"] -publish = false description = "Translator from WebAssembly to Cretonne IL" repository = "https://github.com/stoklund/cretonne" license = "Apache-2.0" @@ -13,8 +12,8 @@ name = "cton_wasm" [dependencies] wasmparser = "0.14.1" -cretonne = { path = "../cretonne" } -cretonne-frontend = { path = "../frontend" } +cretonne = { path = "../cretonne", version = "0.1.0" } +cretonne-frontend = { path = "../frontend", version = "0.1.0" } [dev-dependencies] tempdir = "0.3.5"