#! /usr/bin/env bash # Tag build2 distribution. # # Usage: tag [-t] # # -t # Toolchain only. # usage="usage: $0 [-t]" owd=`pwd` trap "{ cd $owd; exit 1; }" ERR set -o errtrace # Trap in functions. function info () { echo "$*" 1>&2; } function error () { info "$*"; exit 1; } toolchain="libbutl build2 libbpkg bpkg build2-toolchain" extras="brep" while [ $# -gt 0 ]; do case $1 in -t) extra= shift ;; *) error "unexpected $1" ;; esac done tools="$toolchain $extras" for t in $tools; do v=`cat $t/version` if [ -z "$v" ]; then error "unable to extract version from $t/version" fi git -C $t tag -a $v -m "Tag version $v" info "tagged $t $v" done info "remember to push"