# HG changeset patch # User "Yann E. MORIN" # Date 1217851794 0 # Node ID 63d3f428f3026d751b849993989611ac0a59b0e2 # Parent c2212f59e1cf2869c862bfb94577f6dab5ad168d Add a new tool to renumber a patch directory. Eases maintenance when old patches are removed, or new patches added. /trunk/tools/patch-renumber.sh | 32 32 0 0 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff -r c2212f59e1cf -r 63d3f428f302 tools/patch-renumber.sh --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tools/patch-renumber.sh Mon Aug 04 12:09:54 2008 +0000 @@ -0,0 +1,32 @@ +#!/bin/sh +# Yes, this intends to be a true POSIX script file. + +myname="$0" + +doUsage() { + cat <<_EOF_ +Usage: ${myname} + Will renumber all patches found in , starting at , and with + an increment of + Eg.: patch-renumber patches/gcc/4.3.1 100 10 +_EOF_ +} + +[ $# -eq 3 ] || { doUsage; exit 1; } +[ -d "${1}" ] || { doUsage; exit 1; } + +dir="${1}" +cpt="${2}" +inc="${3}" + +case $(LC_ALL=C svnversion 2>/dev/null) in + exported) CMD="mv -v";; + *) CMD="svn mv";; +esac + +for p in "${dir}"/*.patch; do + [ -e "${p}" ] || { echo "No such file '${p}'"; exit 1; } + newname="$(printf "%03d" ${cpt})-$(basename "${p}" |sed -r -e 's/^[[:digit:]]{3}-//')" + [ "${p}" = "${dir}/${newname}" ] || ${CMD} "${p}" "${dir}/${newname}" + cpt=$((cpt+inc)) +done