# This script takes care of building your crate and packaging it for release | |
set -ex | |
main() { | |
local src=$(pwd) \ | |
stage= | |
case $TRAVIS_OS_NAME in | |
linux) | |
stage=$(mktemp -d) | |
;; | |
osx) | |
stage=$(mktemp -d -t tmp) | |
;; | |
esac | |
# This will slow down the build, but is necessary to not run out of disk space | |
cargo clean | |
cargo rustc --bin mdbook --target $TARGET --release -- -C lto | |
cp target/$TARGET/release/mdbook $stage/ | |
cd $stage | |
tar czf $src/$CRATE_NAME-$TRAVIS_TAG-$TARGET.tar.gz * | |
cd $src | |
rm -rf $stage | |
} | |
main |