[Mesa-dev] [PATCH mesa v2] glx: add GLXdispatchIndex sort check
Hans de Goede
hdegoede at redhat.com
Wed Feb 22 11:34:06 UTC 2017
Hi,
On 22-02-17 12:24, Eric Engestrom wrote:
> Signed-off-by: Eric Engestrom <eric.engestrom at imgtec.com>
> ---
> v2: make sure the list is in the order C's strcmp uses (Ilia)
> Ilia: I used LC_ALL instead of LANG, as it takes precedence
> (ie. LANG=C in this script would be overridden by
> LC_ALL=en_US in the environment).
Looks good to me, thank you for doing this,
Regards,
Hans
> ---
> src/glx/tests/Makefile.am | 2 +-
> src/glx/tests/dispatch-index-check | 24 ++++++++++++++++++++++++
> 2 files changed, 25 insertions(+), 1 deletion(-)
> create mode 100755 src/glx/tests/dispatch-index-check
>
> diff --git a/src/glx/tests/Makefile.am b/src/glx/tests/Makefile.am
> index bdc78c0d5a..8874c20b01 100644
> --- a/src/glx/tests/Makefile.am
> +++ b/src/glx/tests/Makefile.am
> @@ -12,7 +12,7 @@ AM_CPPFLAGS = \
> $(LIBDRM_CFLAGS) \
> $(X11_INCLUDES)
>
> -TESTS = glx-test
> +TESTS = glx-test dispatch-index-check
> check_PROGRAMS = glx-test
>
> glx_test_SOURCES = \
> diff --git a/src/glx/tests/dispatch-index-check b/src/glx/tests/dispatch-index-check
> new file mode 100755
> index 0000000000..78464b8305
> --- /dev/null
> +++ b/src/glx/tests/dispatch-index-check
> @@ -0,0 +1,24 @@
> +#!/bin/sh
> +
> +# extract enum definition
> +dispatch_list=$(sed '/__GLXdispatchIndex/,/__GLXdispatchIndex/!d' \
> + "$srcdir"/../g_glxglvnddispatchindices.h)
> +
> +# extract values inside of enum
> +dispatch_list=$(sed '1d;$d' <<< "$dispatch_list")
> +
> +# remove indentation
> +dispatch_list=$(sed 's/^\s\+//' <<< "$dispatch_list")
> +
> +# extract function names
> +dispatch_list=$(sed 's/DI_//;s/,//' <<< "$dispatch_list")
> +
> +# same for commented functions, we want to keep them sorted too
> +dispatch_list=$(sed 's#// ##;s/ implemented by [a-z]\+//' <<< "$dispatch_list")
> +
> +# remove LAST_INDEX, as it will not be in alphabetical order
> +dispatch_list=$(sed '/LAST_INDEX/d' <<< "$dispatch_list")
> +
> +sorted=$(LC_ALL=C sort <<< "$dispatch_list")
> +
> +test "$dispatch_list" = "$sorted"
>
More information about the mesa-dev
mailing list