From c31570c464be6c4eed33e6b5c30e3116f73dfd0d Mon Sep 17 00:00:00 2001 From: Matthias Reichl Date: Fri, 7 Apr 2017 15:27:13 +0200 Subject: [PATCH] lirc: add upstream fix for release events --- .../lirc-0002-upstream-releasesuffix.patch | 119 ++++++++++++++++++ 1 file changed, 119 insertions(+) create mode 100644 packages/sysutils/lirc/patches/lirc-0002-upstream-releasesuffix.patch diff --git a/packages/sysutils/lirc/patches/lirc-0002-upstream-releasesuffix.patch b/packages/sysutils/lirc/patches/lirc-0002-upstream-releasesuffix.patch new file mode 100644 index 0000000000..668a9bd936 --- /dev/null +++ b/packages/sysutils/lirc/patches/lirc-0002-upstream-releasesuffix.patch @@ -0,0 +1,119 @@ +From 6b35f7e0db3d1da5fce27c089d0ccfb18ee4c5fa Mon Sep 17 00:00:00 2001 +From: Alec Leamas +Date: Sun, 12 Feb 2017 10:49:07 +0100 +Subject: [PATCH] Use _EVUP instead of _UP as release suffic (#263). + +--- + daemons/lircd-uinput.cpp | 4 ++-- + doc/man-source/lircd-uinput.8 | 11 +++++++---- + doc/man-source/lircd.8 | 6 +++++- + lib/lirc_config.h | 2 +- + 4 files changed, 15 insertions(+), 8 deletions(-) + +diff --git a/daemons/lircd-uinput.cpp b/daemons/lircd-uinput.cpp +index ff3a727..110f1de 100644 +--- a/daemons/lircd-uinput.cpp ++++ b/daemons/lircd-uinput.cpp +@@ -38,7 +38,7 @@ static const char* const HELP = + "\t socket: lircd output socket or test file [" LIRCD "]\n" + "\nOptions:\n" + "\t -u --uinput=uinput \t\tuinput device [/dev/uinput]\n" +- "\t -r --release-suffix=suffix \tRelease events suffix [_UP]\n" ++ "\t -r --release-suffix=suffix \tRelease events suffix [_EVUP]\n" + "\t -R --repeat=delay[,period]\tSet kernel repeat parameters [none]\n" + "\t -a --add-release-events\tAdd synthetic release events [no]\n" + "\t -d --disable=file\t\tDisable buttons listed in file\n" +@@ -157,7 +157,7 @@ static void add_defaults(void) + LOGFILE_OPT, "syslog", + UINPUT_OPT, "/dev/uinput", + REPEAT_OPT, (const char*) NULL, +- SUFFIX_OPT, suffix ? suffix : "_UP", ++ SUFFIX_OPT, suffix ? suffix : "_EVUP", + TIMEOUT_OPT, "200", + INPUT_ARG, socket ? socket : LIRCD, + DISABLED_OPT, (const char*)NULL, +diff --git a/doc/man-source/lircd-uinput.8 b/doc/man-source/lircd-uinput.8 +index 0786a6f..3409d13 100644 +--- a/doc/man-source/lircd-uinput.8 ++++ b/doc/man-source/lircd-uinput.8 +@@ -1,4 +1,4 @@ +-.TH LIRCD-UINPUT "8" "Last change: Oct 2016" "lircd.uinput @version@" "System Managers Manual" ++.TH LIRCD-UINPUT "8" "Last change: Feb 2017" "lircd.uinput @version@" "System Managers Manual" + + .\" Copyright (c) 2015, Alec Leamas + .\" +@@ -93,7 +93,7 @@ The setting should usually match the + .I --release + option. + Defaults to the lircd setting, falling back to +-.I _UP ++.I _EVUP + \&. See REPEAT HANDLING + .TP + \fB\-R\fR \fB\-\-repeat\fR <\fIdelay\fR[,\fIperiod\fR] | \fI,period\fR> +@@ -171,15 +171,18 @@ using the + .I --release + option. + Such events typically has an +-.I _UP ++.I _EVUP + suffix appended to the original keypress event. + As an alternative, + .B lircd-uinput + can create release events using the +-.I --add-relesea-events ++.I --add-release-events + option. + Combining both of these options might give unexpected results. + .P ++Note that the linux kernel uses the suffix _UP (which was used py ++lircd prior to 0.10.0) for other purposes since 4.7. ++.P + In any case, the repeat events generated by the kernel can be tweaked using + the + .I --repeat +diff --git a/doc/man-source/lircd.8 b/doc/man-source/lircd.8 +index 1aa036f..f992e6f 100644 +--- a/doc/man-source/lircd.8 ++++ b/doc/man-source/lircd.8 +@@ -141,7 +141,11 @@ under DRIVER LOADING. The argument is a :-separated search path. + \fB-r, --release\fR [\fIsuffix\fR] + Enables automatic generation of release events for each button press. + lircd will append the given suffix to the button name for each release +-event. If no suffix is given the default suffix is '_UP'. ++event. If no suffix is given the default suffix is '_EVUP'. ++.IP ++Note the suffix _UP, which was used by ++.B lircd ++prior to 0.10.0, is used by the linux kernel for other purposes since 4.7. + .TP + \fB-R, --repeat-max\fR <\fIlimit\fR> + Sets an upper limit to the number of repeats when sending a signal. The +diff --git a/lib/lirc_config.h b/lib/lirc_config.h +index d57da3d..903ce3a 100644 +--- a/lib/lirc_config.h ++++ b/lib/lirc_config.h +@@ -74,7 +74,7 @@ + #define PIDFILE VARRUNDIR "/" PACKAGE "/" PID_LIRCD + + /** Suffix added to release events. */ +-#define LIRC_RELEASE_SUFFIX "_UP" ++#define LIRC_RELEASE_SUFFIX "_EVUP" + + /** Default directory for plugins/drivers. */ + #define PLUGINDIR LIBDIR "/lirc/plugins" +diff a/lib/lirc/lirc_config.h b/lib/lirc/lirc_config.h +--- a/lib/lirc/lirc_config.h ++++ b/lib/lirc/lirc_config.h +@@ -74,7 +74,7 @@ + #define PIDFILE VARRUNDIR "/" PACKAGE "/" PID_LIRCD + + /** Suffix added to release events. */ +-#define LIRC_RELEASE_SUFFIX "_UP" ++#define LIRC_RELEASE_SUFFIX "_EVUP" + + /** Default directory for plugins/drivers. */ + #define PLUGINDIR LIBDIR "/lirc/plugins" +-- +2.1.4 +