Use the keymap check during “make distcheck” rather than “check”.
Since the check-keymaps.sh script checks for validity the source directory and the Makefile.am file, instead of running it during user-oriented “make check”, run it during developed-oriented “make distcheck”. An invalid keymap will abort the execution which will prevent shipping an incomplete Makefile.am. To properly support out-of-source builds, pass as single parameter to the test the path to the source directory.
This commit is contained in:
parent
51668e2c8b
commit
eab32c2529
10
Makefile.am
10
Makefile.am
|
@ -7,6 +7,7 @@ dist_udevconf_DATA = \
|
||||||
EXTRA_DIST = \
|
EXTRA_DIST = \
|
||||||
autogen.sh \
|
autogen.sh \
|
||||||
libudev/exported_symbols \
|
libudev/exported_symbols \
|
||||||
|
extras/keymap/check-keymaps.sh \
|
||||||
extras/gudev/gudevmarshal.list \
|
extras/gudev/gudevmarshal.list \
|
||||||
extras/gudev/gudevenumtypes.h.template \
|
extras/gudev/gudevenumtypes.h.template \
|
||||||
extras/gudev/gudevenumtypes.c.template
|
extras/gudev/gudevenumtypes.c.template
|
||||||
|
@ -386,10 +387,6 @@ BUILT_SOURCES += \
|
||||||
$(nodist_extras_keymap_keymap_SOURCES) \
|
$(nodist_extras_keymap_keymap_SOURCES) \
|
||||||
$(dist_extras_gudev_libgudev_1_0_la_SOURCES)
|
$(dist_extras_gudev_libgudev_1_0_la_SOURCES)
|
||||||
|
|
||||||
TESTS += extras/keymap/check-keymaps.sh
|
|
||||||
|
|
||||||
check_DATA = extras/keymap/keys.txt
|
|
||||||
|
|
||||||
CLEANFILES += \
|
CLEANFILES += \
|
||||||
extras/keymap/keys.txt \
|
extras/keymap/keys.txt \
|
||||||
extras/keymap/keys-from-name.gperf
|
extras/keymap/keys-from-name.gperf
|
||||||
|
@ -476,6 +473,8 @@ install-exec-hook: $(INSTALL_EXEC_HOOKS)
|
||||||
|
|
||||||
uninstall-hook: $(UNINSTALL_EXEC_HOOKS)
|
uninstall-hook: $(UNINSTALL_EXEC_HOOKS)
|
||||||
|
|
||||||
|
distcheck-hook: keymaps-distcheck-hook
|
||||||
|
|
||||||
# move lib from $(libdir) to $(rootlib_execdir) and update devel link, if needed
|
# move lib from $(libdir) to $(rootlib_execdir) and update devel link, if needed
|
||||||
libudev-install-move-hook:
|
libudev-install-move-hook:
|
||||||
if test "$(libdir)" != "$(rootlib_execdir)"; then \
|
if test "$(libdir)" != "$(rootlib_execdir)"; then \
|
||||||
|
@ -493,6 +492,9 @@ udevacl-install-hook:
|
||||||
mkdir -p $(DESTDIR)$(prefix)/lib/ConsoleKit/run-session.d
|
mkdir -p $(DESTDIR)$(prefix)/lib/ConsoleKit/run-session.d
|
||||||
ln -sf $(libexecdir)/udev-acl $(DESTDIR)$(prefix)/lib/ConsoleKit/run-session.d/udev-acl.ck
|
ln -sf $(libexecdir)/udev-acl $(DESTDIR)$(prefix)/lib/ConsoleKit/run-session.d/udev-acl.ck
|
||||||
|
|
||||||
|
keymaps-distcheck-hook: extras/keymap/keys.txt
|
||||||
|
./extras/keymap/check-keymaps.sh $(top_srcdir)
|
||||||
|
|
||||||
# ------------------------------------------------------------------------------
|
# ------------------------------------------------------------------------------
|
||||||
# Custom rules
|
# Custom rules
|
||||||
# ------------------------------------------------------------------------------
|
# ------------------------------------------------------------------------------
|
||||||
|
|
|
@ -1,15 +1,19 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
# check that all key names in keymaps/* are known in <linux/input.h>
|
# check that all key names in keymaps/* are known in <linux/input.h>
|
||||||
KEYLIST=extras/keymap/keys.txt
|
# and that all key maps listed in the rules are valid and present in
|
||||||
RULES=extras/keymap/95-keymap.rules
|
# Makefile.am
|
||||||
|
SRCDIR=$1
|
||||||
|
KEYLIST=$SRCDIR/extras/keymap/keys.txt
|
||||||
|
KEYMAPS_DIR=$SRCDIR/extras/keymap/keymaps #extras/keymap/keymaps
|
||||||
|
RULES=$SRCDIR/extras/keymap/95-keymap.rules
|
||||||
|
|
||||||
[ -e "$KEYLIST" ] || {
|
[ -e "$KEYLIST" ] || {
|
||||||
echo "need $KEYLIST please build first" >&2
|
echo "need $KEYLIST please build first" >&2
|
||||||
exit 1
|
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) <(awk '{print $2}' ${KEYMAPS_DIR}/*|sort -u))
|
||||||
[ -z "$missing" ] || {
|
[ -z "$missing" ] || {
|
||||||
echo "ERROR: unknown key names in extras/keymap/keymaps/*:" >&2
|
echo "ERROR: unknown key names in extras/keymap/keymaps/*:" >&2
|
||||||
echo "$missing" >&2
|
echo "$missing" >&2
|
||||||
|
@ -22,11 +26,11 @@ for m in $maps; do
|
||||||
# ignore inline mappings
|
# ignore inline mappings
|
||||||
[ "$m" = "${m#0x}" ] || continue
|
[ "$m" = "${m#0x}" ] || continue
|
||||||
|
|
||||||
[ -e extras/keymap/keymaps/$m ] || {
|
[ -e ${KEYMAPS_DIR}/$m ] || {
|
||||||
echo "ERROR: unknown map name in $RULES: $m" >&2
|
echo "ERROR: unknown map name in $RULES: $m" >&2
|
||||||
exit 1
|
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
|
echo "ERROR: map file $m is not added to Makefile.am" >&2
|
||||||
exit 1
|
exit 1
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue