Hash :
dbe3eea4
Author :
Date :
2013-01-10T23:40:26
Rename 'maint/' -> 'maintainer/', for Git's sake
Otherwise, Git gets confused by the fact that a directory ('maint')
is named like a branch, and forces me to tweak the command line to
resolve the ambiguity for it.
* maint/: Rename ...
* maintainer/: ... like this.
* Makefile.am, GNUmakefile: Adjust.
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
#!/usr/bin/env bash
# Convenience script to rename test cases in Automake.
set -e -u
me=${0##*/}
fatal () { echo "$me: $*" >&2; exit 1; }
case $# in
0) input=$(cat);;
1) input=$(cat -- "$1");;
*) fatal "too many arguments";;
esac
AWK=${AWK-awk}
SED=${SED-sed}
[[ -f automake.in && -d lib/Automake ]] \
|| fatal "can only be run from the top-level of the Automake source tree"
$SED --version 2>&1 | grep GNU >/dev/null 2>&1 \
|| fatal "GNU sed is required by this script"
# Validate and cleanup input.
input=$(
$AWK -v me="$me" "
/^#/ { next; }
(NF == 0) { next; }
(NF != 2) { print me \": wrong number of fields at line \" NR;
exit(1); }
{ printf (\"t/%s t/%s\\n\", \$1, \$2); }
" <<<"$input")
# Prepare git commit message.
exec 5>$me.git-msg
echo "tests: more significant names for some tests" >&5
echo >&5
$AWK >&5 <<<"$input" \
'{ printf ("* %s: Rename...\n* %s: ... like this.\n", $1, $2) }'
exec 5>&-
# Rename tests.
eval "$($AWK '{ printf ("git mv %s %s\n", $1, $2) }' <<<"$input")"
# Adjust the list of tests (do this conditionally, since such a
# list is not required nor used in Automake-NG.
if test -f t/list-of-tests.mk; then
$SED -e "$($AWK '{ printf ("s|^%s |%s |\n", $1, $2) }' <<<"$input")" \
-i t/list-of-tests.mk
fi
git status