[PATCH] libevdev/make-event-names: Fix determinism issue

Peter Hutterer peter.hutterer at who-t.net
Sun Feb 21 21:43:09 UTC 2021


On Sat, Feb 20, 2021 at 02:41:01PM +0000, Richard Purdie wrote:
> The order of dict values is not deterministic in python leading to differing 
> header file generation which results in differing build output for the same 
> configuration. Sort to remove this inconsistency and make the output 
> reproducible.

Applied, thanks.

https://gitlab.freedesktop.org/libevdev/libevdev/-/merge_requests/79

For next time, please file an MR directly in gitlab, makes life a bit
easier. Thanks.

Cheers,
   Peter

> 
> Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
> 
> ---
>  libevdev/make-event-names.py | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/libevdev/make-event-names.py b/libevdev/make-event-names.py
> index 88addd7..c973e2a 100755
> --- a/libevdev/make-event-names.py
> +++ b/libevdev/make-event-names.py
> @@ -70,10 +70,10 @@ def print_bits(bits, prefix):
>      if not hasattr(bits, prefix):
>          return
>      print("static const char * const %s_map[%s_MAX + 1] = {" % (prefix, prefix.upper()))
> -    for val, name in list(getattr(bits, prefix).items()):
> +    for val, name in sorted(list(getattr(bits, prefix).items())):
>          print("    [%s] = \"%s\"," % (name, name))
>      if prefix == "key":
> -        for val, name in list(getattr(bits, "btn").items()):
> +        for val, name in sorted(list(getattr(bits, "btn").items())):
>              print("    [%s] = \"%s\"," % (name, name))
>      print("};")
>      print("")
> @@ -118,7 +118,7 @@ def print_lookup(bits, prefix):
>      if not hasattr(bits, prefix):
>          return
>  
> -    names = list(getattr(bits, prefix).items())
> +    names = sorted(list(getattr(bits, prefix).items()))
>      if prefix == "btn":
>          names = names + btn_additional
>  
> 
> 
> 
> _______________________________________________
> Input-tools mailing list
> Input-tools at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/input-tools


More information about the Input-tools mailing list