yann@756: #!/bin/sh
yann@756: # Yes, this intends to be a true POSIX script file.
yann@1175: set -e
yann@756:
yann@756: myname="$0"
yann@756:
yann@1175: # Parse the tools' paths configuration
yann@1175: . "paths.mk"
yann@1175:
yann@756: doUsage() {
yann@756: cat <<_EOF_
yann@756: Usage: ${myname}
yann@756: Will renumber all patches found in , starting at , and with
yann@756: an increment of
yann@756: Eg.: patch-renumber patches/gcc/4.3.1 100 10
yann@756: _EOF_
yann@756: }
yann@756:
yann@756: [ $# -eq 3 ] || { doUsage; exit 1; }
yann@756: [ -d "${1}" ] || { doUsage; exit 1; }
yann@756:
yann@756: dir="${1}"
yann@756: cpt="${2}"
yann@756: inc="${3}"
yann@756:
yann@1192: case "$(LC_ALL=C svnversion "${dir}" 2>/dev/null)" in
yann@756: exported) CMD="mv -v";;
yann@756: *) CMD="svn mv";;
yann@756: esac
yann@756:
yann@756: for p in "${dir}"/*.patch; do
yann@756: [ -e "${p}" ] || { echo "No such file '${p}'"; exit 1; }
yann@1192: newname="$(printf "%03d-%s" \
yann@1192: "${cpt}" \
yann@1192: "$(basename "${p}" \
yann@1192: |"${sed}" -r -e 's/^[[:digit:]]+[-_]//' \
yann@1192: )" \
yann@1192: )"
yann@756: [ "${p}" = "${dir}/${newname}" ] || ${CMD} "${p}" "${dir}/${newname}"
yann@756: cpt=$((cpt+inc))
yann@756: done