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.
This commit is contained in:
committed by
Dan Gohman
parent
f02c8fd1ff
commit
ec746c3359
34
cranelift/publish-all.sh
Executable file
34
cranelift/publish-all.sh
Executable file
@@ -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
|
||||
Reference in New Issue
Block a user