From 8d70f449892c6f7659e07bb0f06b8347677bb7d8 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Sat, 20 Feb 2021 14:41:01 +0000 Subject: [PATCH] make-event-names: Fix determinism issue MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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. Signed-off-by: Richard Purdie Reviewed-by: Filipe Laíns Signed-off-by: Peter Hutterer --- 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..743b4b5 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