diff options
author | Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> | 2012-01-04 22:23:32 +0000 |
---|---|---|
committer | Luiz Capitulino <lcapitulino@redhat.com> | 2012-01-18 10:23:39 -0200 |
commit | 9737383beb515a583fdb6f2aafa631fcd6797068 (patch) | |
tree | 4df78bd780f52f27adf156e11aff578177c95833 /scripts/check-qerror.sh | |
parent | aba2107a2649f3eeab4422efa17dbd06929abccd (diff) |
qerror: add check-qerror.sh to verify alphabetical order
We're supposed to keep qerror definitions and table entries in
alphabetical order. In practice this is not checked.
I haven't found a nice way to integrate this into the makefile yet but
we can at least have this script which verifies that qerrors are in
alphabetical order.
Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
Diffstat (limited to 'scripts/check-qerror.sh')
-rwxr-xr-x | scripts/check-qerror.sh | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/scripts/check-qerror.sh b/scripts/check-qerror.sh new file mode 100755 index 0000000000..af7fbd5249 --- /dev/null +++ b/scripts/check-qerror.sh @@ -0,0 +1,22 @@ +#!/bin/sh +# This script verifies that qerror definitions and table entries are +# alphabetically ordered. + +check_order() { + errmsg=$1 + shift + + # sort -C verifies order but does not print a message. sort -c does print a + # message. These options are both in POSIX. + if ! "$@" | sort -C; then + echo "$errmsg" + "$@" | sort -c + exit 1 + fi + return 0 +} + +check_order 'Definitions in qerror.h must be in alphabetical order:' \ + grep '^#define QERR_' qerror.h +check_order 'Entries in qerror.c:qerror_table must be in alphabetical order:' \ + sed -n '/^static.*qerror_table\[\]/,/^};/s/QERR_/&/gp' qerror.c |