X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=extras%2Fkeymap%2Fcheck-keymaps.sh;h=c92246a2cd3fdd35d2ea515d16897059f4058579;hp=f79c3f5a823e11214a5702cb12519085b871ae86;hb=386aa6ebd810fb87718972e298c71184b73bd210;hpb=7d701b0e26f96c279ef9ba8e4ef82fc4fca56acf diff --git a/extras/keymap/check-keymaps.sh b/extras/keymap/check-keymaps.sh index f79c3f5a8..c92246a2c 100755 --- a/extras/keymap/check-keymaps.sh +++ b/extras/keymap/check-keymaps.sh @@ -1,15 +1,20 @@ #!/bin/bash # check that all key names in keymaps/* are known in -KEYLIST=extras/keymap/keys.txt -RULES=extras/keymap/95-keymap.rules +# and that all key maps listed in the rules are valid and present in +# Makefile.am +SRCDIR=$1 +KEYLIST=$2 +KEYMAPS_DIR=$SRCDIR/extras/keymap/keymaps #extras/keymap/keymaps +RULES=$SRCDIR/extras/keymap/95-keymap.rules [ -e "$KEYLIST" ] || { echo "need $KEYLIST please build first" >&2 exit 1 } -missing=$(join -v 2 <(awk '{print tolower(substr($1,5))}' $KEYLIST | sort -u) <(awk '{print $2}' extras/keymap/keymaps/*|sort -u)) +missing=$(join -v 2 <(awk '{print tolower(substr($1,5))}' $KEYLIST | sort -u) \ + <(grep -hv '^#' ${KEYMAPS_DIR}/*| awk '{print $2}' | sort -u)) [ -z "$missing" ] || { echo "ERROR: unknown key names in extras/keymap/keymaps/*:" >&2 echo "$missing" >&2 @@ -22,11 +27,11 @@ for m in $maps; do # ignore inline mappings [ "$m" = "${m#0x}" ] || continue - [ -e extras/keymap/keymaps/$m ] || { + [ -e ${KEYMAPS_DIR}/$m ] || { echo "ERROR: unknown map name in $RULES: $m" >&2 exit 1 } - grep -q "extras/keymap/keymaps/$m\>" Makefile.am || { + grep -q "extras/keymap/keymaps/$m\>" $SRCDIR/Makefile.am || { echo "ERROR: map file $m is not added to Makefile.am" >&2 exit 1 }