From 5bf8ebe110b614f778243cf9793559e8fae97f25 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=utf8 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 -- 2.34.1