summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Pitt <martin.pitt@ubuntu.com>2015-10-13 18:20:34 +0200
committerMartin Pitt <martin.pitt@ubuntu.com>2015-10-14 07:15:54 +0200
commit4c1482202957828a37e88e42c49e9ac8ef12c960 (patch)
treed1bef670579e556c091a8ee02b2c0eca367044eb
parente296313f7b397a45b144313056b50374c3bf4016 (diff)
keymap: Recognize KEY_* aliases
linux/input.h contains alias definitions like #define KEY_COFFEE 152 #define KEY_SCREENLOCK KEY_COFFEE #define KEY_ROTATE_DISPLAY 153 #define KEY_DIRECTION KEY_ROTATE_DISPLAY But we ignored these when building keyboard-keys-list.txt. Also allow the value to start with "K" now (for KEY_*), and drop the hardcoded COFFEE → SCREENLOCK aliasing. This fixes assignments to key "direction". Fixes #1151
-rw-r--r--Makefile.am2
1 files changed, 1 insertions, 1 deletions
diff --git a/Makefile.am b/Makefile.am
index 8646e55450..e3e07b8c7d 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -3483,7 +3483,7 @@ noinst_LTLIBRARIES += \
src/udev/keyboard-keys-list.txt:
$(AM_V_at)$(MKDIR_P) $(dir $@)
- $(AM_V_GEN)$(CPP) $(CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) -dM -include linux/input.h - < /dev/null | $(AWK) '/^#define[ \t]+KEY_[^ ]+[ \t]+[0-9]/ { if ($$2 != "KEY_MAX") { print $$2 } }' | sed 's/^KEY_COFFEE$$/KEY_SCREENLOCK/' > $@
+ $(AM_V_GEN)$(CPP) $(CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) -dM -include linux/input.h - < /dev/null | $(AWK) '/^#define[ \t]+KEY_[^ ]+[ \t]+[0-9K]/ { if ($$2 != "KEY_MAX") { print $$2 } }' > $@
src/udev/keyboard-keys-from-name.gperf: src/udev/keyboard-keys-list.txt
$(AM_V_GEN)$(AWK) 'BEGIN{ print "struct key { const char* name; unsigned short id; };"; print "%null-strings"; print "%%";} { print tolower(substr($$1 ,5)) ", " $$1 }' < $< > $@