[PATCH] libevdev/make-event-names: Fix determinism issue
Richard Purdie
richard.purdie at linuxfoundation.org
Sat Feb 20 14:41:01 UTC 2021
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 <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
More information about the Input-tools
mailing list