monorepo/build.sh

49 lines
739 B
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
RUST_ALL_TARGETS=(
"dashboard"
"ifc"
"memorycache"
"geo-types"
"fluent-ergonomics"
"cyberpunk-splash"
"screenplay"
"emseries"
"coordinates"
"flow"
"sgf"
"changeset"
)
build_rust_targets() {
local CMD=$1
local TARGETS=${@/$CMD}
for target in $TARGETS; do
MODULE=$target CMD=$CMD ./builders/rust.sh
done
}
export CARGO=`which cargo`
if [ -z "${TARGET-}" ]; then
TARGET="all"
fi
if [ -z "${CMD-}" ]; then
CMD="release"
fi
if [ "${CMD}" == "clean" ]; then
cargo clean
exit 0
fi
if [ "${TARGET}" == "all" ]; then
build_rust_targets $CMD ${RUST_ALL_TARGETS[*]}
else
build_rust_targets $CMD $TARGET
fi