diff --git a/scripts/build.bash b/scripts/build.bash new file mode 100644 index 0000000..8739e07 --- /dev/null +++ b/scripts/build.bash @@ -0,0 +1,21 @@ +#!/usr/bin/env bash +# Script for building your rust projects. +set -e + +source ci/common.bash + +# $1 {path} = Path to cross/cargo executable +CROSS=$1 +# $1 {string} = e.g. x86_64-pc-windows-msvc +TARGET_TRIPLE=$2 +# $3 {boolean} = Are we building for deployment? +RELEASE_BUILD=$3 + +required_arg $CROSS 'CROSS' +required_arg $TARGET_TRIPLE '' + +if [ -z "$RELEASE_BUILD" ]; then + $CROSS build --target $TARGET_TRIPLE +else + $CROSS build --target $TARGET_TRIPLE --release +fi \ No newline at end of file diff --git a/scripts/common.bash b/scripts/common.bash new file mode 100644 index 0000000..6b0a21a --- /dev/null +++ b/scripts/common.bash @@ -0,0 +1,6 @@ +required_arg() { + if [ -z "$1" ]; then + echo "Required argument $2 missing" + exit 1 + fi +} diff --git a/scripts/set_rust_version.bash b/scripts/set_rust_version.bash new file mode 100644 index 0000000..d822cd5 --- /dev/null +++ b/scripts/set_rust_version.bash @@ -0,0 +1,4 @@ +#!/usr/bin/env bash +set -e +rustup default $1 +rustup target add $2 diff --git a/scripts/test.bash b/scripts/test.bash new file mode 100644 index 0000000..f85e248 --- /dev/null +++ b/scripts/test.bash @@ -0,0 +1,16 @@ +#!/usr/bin/env bash +# Script for building your rust projects. +set -e + +source ci/common.bash + +# $1 {path} = Path to cross/cargo executable +CROSS=$1 +# $1 {string} = +TARGET_TRIPLE=$2 + +required_arg $CROSS 'CROSS' +required_arg $TARGET_TRIPLE '' + +$CROSS test --target $TARGET_TRIPLE +$CROSS test --target $TARGET_TRIPLE --all-features