[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v2 1/3] qerror: add check-qerror.sh to verify al
From: |
Luiz Capitulino |
Subject: |
Re: [Qemu-devel] [PATCH v2 1/3] qerror: add check-qerror.sh to verify alphabetical order |
Date: |
Fri, 6 Jan 2012 09:59:03 -0200 |
On Wed, 4 Jan 2012 22:23:32 +0000
Stefan Hajnoczi <address@hidden> wrote:
> 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 <address@hidden>
I've applied these two patches plus v1 2/2, is this correct?
> ---
> qerror.c | 3 +--
> qerror.h | 2 +-
> scripts/check-qerror.sh | 22 ++++++++++++++++++++++
> 3 files changed, 24 insertions(+), 3 deletions(-)
> create mode 100755 scripts/check-qerror.sh
>
> diff --git a/qerror.c b/qerror.c
> index 9a75d06..62c0c707 100644
> --- a/qerror.c
> +++ b/qerror.c
> @@ -40,8 +40,7 @@ static const QType qerror_type = {
> * "running out of foo: %(foo)%%"
> *
> * Please keep the entries in alphabetical order.
> - * Use "sed -n '/^static.*qerror_table\[\]/,/^};/s/QERR_/&/gp' qerror.c |
> sort -c"
> - * to check.
> + * Use scripts/check-qerror.sh to check.
> */
> static const QErrorStringTable qerror_table[] = {
> {
> diff --git a/qerror.h b/qerror.h
> index efda232..36e0343 100644
> --- a/qerror.h
> +++ b/qerror.h
> @@ -49,7 +49,7 @@ QError *qobject_to_qerror(const QObject *obj);
> /*
> * QError class list
> * Please keep the definitions in alphabetical order.
> - * Use "grep '^#define QERR_' qerror.h | sort -c" to check.
> + * Use scripts/check-qerror.sh to check.
> */
> #define QERR_BAD_BUS_FOR_DEVICE \
> "{ 'class': 'BadBusForDevice', 'data': { 'device': %s, 'bad_bus_type':
> %s } }"
> diff --git a/scripts/check-qerror.sh b/scripts/check-qerror.sh
> new file mode 100755
> index 0000000..af7fbd5
> --- /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