New upstream release 0.9.4c-4

epel8
Alec Leamas 8 years ago
parent 716f0e5218
commit 1c610f9721

2
.gitignore vendored

@ -1,3 +1,4 @@
clog
lirc-*.tar.bz2
.build-*.log
*.rpm
@ -13,3 +14,4 @@ lirc-0.8.7pre2.tar.bz2
/lirc-0.9.4.tar.gz
/lirc-0.9.4a.tar.gz
/lirc-0.9.4b.tar.gz
/lirc-0.9.4c.tar.gz

@ -1,25 +0,0 @@
From bd400dc047567d230d194c2be8c911a300c0f723 Mon Sep 17 00:00:00 2001
From: Alec Leamas <leamas.alec@gmail.com>
Date: Mon, 9 Feb 2015 12:46:17 +0100
Subject: [PATCH] lirc_options: Set effective user to lirc.
---
lirc_options.conf | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lirc_options.conf b/lirc_options.conf
index 9346de8..bf342c1 100644
--- a/lirc_options.conf
+++ b/lirc_options.conf
@@ -12,7 +12,7 @@ plugindir = /usr/lib/lirc/plugins
permission = 666
allow-simulate = No
repeat-max = 600
-#effective-user =
+effective-user = lirc
#listen = [address:]port
#connect = host[:port]
#debug = 6
--
2.1.0

@ -0,0 +1,25 @@
From 94a67d9d3debf63affaa679971fafa304a6929d1 Mon Sep 17 00:00:00 2001
From: Alec Leamas <leamas.alec@gmail.com>
Date: Sat, 22 Oct 2016 16:53:48 +0200
Subject: [PATCH 01/10] plugins: girs.c: Default device typo fix.
---
plugins/girs.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/plugins/girs.c b/plugins/girs.c
index 4bc1461..f722348 100644
--- a/plugins/girs.c
+++ b/plugins/girs.c
@@ -55,7 +55,7 @@
"/bin/sh ls /dev/ttyACM* /dev/ttyUSB* /dev/arduino* 2>/dev/null"
#define DRIVER_NAME "girs"
-#define DEFAULT_DEVICE "/dev/ttyAMC0"
+#define DEFAULT_DEVICE "/dev/ttyACM0"
#define DRIVER_RESOLUTION 50
#define DRIVER_VERSION "2016-08-19"
--
2.5.5

@ -1,49 +0,0 @@
From 53cea64c606e3bb4622c74855d35fc57eeb2123e Mon Sep 17 00:00:00 2001
From: Alec Leamas <leamas.alec@gmail.com>
Date: Tue, 9 Aug 2016 16:29:17 +0200
Subject: [PATCH 02/10] NEWS, lirc.org/index.html: Fixes.
---
NEWS | 4 +++-
doc/lirc.org/index.html | 6 ++++++
2 files changed, 9 insertions(+), 1 deletion(-)
diff --git a/NEWS b/NEWS
index a379785..0261bd2 100644
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,4 @@
-0.9.4b 15/8/16
+0.9.4b 9/8/16
* lircd-uinput: A multitude of fixes (#213, #211, #177). Adds new options.
* lirc_client: Fix "Can't redirect irsend output" (#207).
* lirc_client: read_string() not terminating buffer contents (#216)
@@ -8,6 +8,8 @@
* lircmd: Options, udev examples and manpage update.A
* lib: Add missing Makefile.am dep (#210).
* doc: Manpages and configuration guide fixes.
+ * build: Don't define docdir - autoconf defines docdir (#215).
+ * build: support runstatedir configure option (#212).
0.9.4a 22/6/16
* Fix syntax errors in systemd unit files (rhbz: 1350750).
diff --git a/doc/lirc.org/index.html b/doc/lirc.org/index.html
index 204d457..b0a1efa 100644
--- a/doc/lirc.org/index.html
+++ b/doc/lirc.org/index.html
@@ -432,6 +432,12 @@
<HR WIDTH="50%"><BR>
<UL TYPE="SQUARE">
<LI>
+ [9-Aug2016]
+ <P>
+ lirc-0.9.4b released.
+ </P>
+ </LI>
+ <LI>
[29-June2016]
<P>
lirc-0.9.4a released.
--
2.5.5

@ -0,0 +1,46 @@
From ff0d431cbed74a2495b78dedce8f74f2b5a436ea Mon Sep 17 00:00:00 2001
From: Alec Leamas <leamas.alec@gmail.com>
Date: Sun, 23 Oct 2016 15:07:21 +0200
Subject: [PATCH 02/10] configure: Fix cross-compilation error (#233).
---
configure.ac | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/configure.ac b/configure.ac
index a041571..20933a8 100644
--- a/configure.ac
+++ b/configure.ac
@@ -305,6 +305,19 @@ AC_RUN_IFELSE([AC_LANG_PROGRAM([[
AC_MSG_RESULT(yes)
],[
AC_MSG_RESULT(no)
+],[
+ case x$HAVE_WORKING_POLL in
+ xyes)
+ AC_MSG_RESULT(yes)
+ AC_DEFINE(HAVE_POLL_FINE)
+ ;;
+ xno)
+ AC_MSG_RESULT(no)
+ ;;
+ *) AC_MSG_ERROR([
+ Define HAVE_WORKING_POLL to "yes" or "no" when cross-compiling])
+ ;;
+ esac
])
@@ -429,6 +442,9 @@ AC_ARG_ENABLE([python3_fix],
[enable_python3_fix="no"])
AM_CONDITIONAL(NEED_PYTHON3, [test "x$enable_python3_fix" = "xyes"])
+AC_ARG_VAR(HAVE_WORKING_POLL,[
+ On cross-compile: Target has a working poll(2) implementation])
+
suffix=$(echo "$VERSION" | sed 's/.*-//')
AM_CONDITIONAL(DEVEL, [test x$suffix = xdevel])
--
2.5.5

@ -0,0 +1,55 @@
From f86da92490ff32465a1aba8754c0c856191e6907 Mon Sep 17 00:00:00 2001
From: Alec Leamas <leamas.alec@gmail.com>
Date: Sun, 23 Oct 2016 15:45:52 +0200
Subject: [PATCH 03/10] build: lirc.h: Configure includes in lirc.h (#234).
Fall back to sys/ioctl.h instead of linux/ioctl.h etc. on
non-linux platform i. e., MacOS.
---
configure.ac | 5 +++--
include/media/lirc.h | 11 +++++++++++
2 files changed, 14 insertions(+), 2 deletions(-)
diff --git a/configure.ac b/configure.ac
index 20933a8..cde9813 100644
--- a/configure.ac
+++ b/configure.ac
@@ -48,8 +48,9 @@ LIBUSB_CONFIG="pkg-config libusb"
dnl Checks for header files.
AC_HEADER_STDC
AC_HEADER_TIME
-AC_CHECK_HEADERS([fcntl.h limits.h poll.h sys/ioctl.h sys/poll.h sys/time.h ])
-AC_CHECK_HEADERS([syslog.h unistd.h util.h libutil.h pty.h])
+AC_CHECK_HEADERS([fcntl.h limits.h linux/ioctl.h poll.h sys/ioctl.h \
+ sys/poll.h sys/time.h syslog.h unistd.h util.h \
+ libutil.h pty.h])
dnl Checks for typedefs, structures, and compiler characteristics.
AC_C_CONST
diff --git a/include/media/lirc.h b/include/media/lirc.h
index 991ab45..84af7ed 100644
--- a/include/media/lirc.h
+++ b/include/media/lirc.h
@@ -6,8 +6,19 @@
#ifndef _LINUX_LIRC_H
#define _LINUX_LIRC_H
+#include <config.h>
+
+#ifdef HAVE_LINUX_TYPES_H
#include <linux/types.h>
+#else
+#include <sys/types.h>
+#endif
+
+#ifdef HAVE_LINUX_IOCTL_H
#include <linux/ioctl.h>
+#else
+#include <sys/ioctl.h>
+#endif
#define PULSE_BIT 0x01000000
#define PULSE_MASK 0x00FFFFFF
--
2.5.5

@ -1,96 +0,0 @@
From 62b9172bf52584e0c621d0163052ccca9a240846 Mon Sep 17 00:00:00 2001
From: Helen Foster <helen-foster@users.sourceforge.net>
Date: Sun, 14 Aug 2016 14:00:30 +0100
Subject: [PATCH 03/10] irtoy: improve error handling (#220).
Avoid double init. Avoid calling setPin or trying to send if irtoy
is not initialized (segfault).
---
plugins/irtoy.c | 28 ++++++++++++++++++++--------
1 file changed, 20 insertions(+), 8 deletions(-)
diff --git a/plugins/irtoy.c b/plugins/irtoy.c
index f6e81d7..f7a6feb 100644
--- a/plugins/irtoy.c
+++ b/plugins/irtoy.c
@@ -467,6 +467,9 @@ static int init_device(void)
IRTOY_MINFWVERSION,
dev->swVersion);
free(dev);
+ dev = NULL;
+ close(drv.fd);
+ tty_delete_lock();
return 0;
}
rec_buffer_init();
@@ -490,10 +493,15 @@ static int init(void)
"Additional irtoy device found: %s (ignored)";
const char* const MSG_FOUND = "irtoy device found on %s";
+ log_trace("irtoy: init");
if (drv.device == NULL) {
log_error("irtoy: NULL device.");
return 0;
}
+ if (dev != NULL) {
+ log_debug("irtoy: init: irtoy already initialized");
+ return 1;
+ }
if (strcmp(drv.device, "auto") != 0)
return init_device();
for (found = 0, i = 0; i <= 9; i++) {
@@ -516,6 +524,8 @@ static int init(void)
static int deinit(void)
{
+ log_trace("irtoy: deinit");
+
// IMPORTANT do not remove this reset. it is vital to return the
// irtoy to IRMAN mode.
// If we leave the irtoy in sample mode while no-one has the
@@ -527,14 +537,14 @@ static int deinit(void)
// sending the next one, while sample mode will keep streaming
// (and under fluorescent light it WILL stream..)
// triggering the problem
- setPin(openPin, 0);
- setPin(sendingPin, 0);
- setPin(receivePin, 0);
if (dev != NULL) {
+ setPin(openPin, 0);
+ setPin(sendingPin, 0);
+ setPin(receivePin, 0);
irtoy_reset(dev);
free(dev);
+ dev = NULL;
}
- dev = NULL;
close(drv.fd);
drv.fd = -1;
@@ -562,10 +572,6 @@ static int irtoy_send_double_buffered(unsigned char* signals, int length)
unsigned char reply[16];
int irtoyXmit;
- if (dev == NULL) {
- log_error("irtoy_send: irtoy not initialized");
- return 0;
- }
res = write(dev->fd, IRTOY_COMMAND_TXSTART, sizeof(IRTOY_COMMAND_TXSTART));
if (res != sizeof(IRTOY_COMMAND_TXSTART)) {
@@ -647,6 +653,12 @@ static int send(struct ir_remote* remote, struct ir_ncode* code)
lirc_t val;
int res;
+ log_trace("irtoy: send");
+
+ if (dev == NULL) {
+ log_error("irtoy: send: irtoy not initialized");
+ return 0;
+ }
if (!send_buffer_put(remote, code))
return 0;
--
2.5.5

@ -0,0 +1,104 @@
From c3e65dd45ece8ac328332c63b8009cd1f77a2ca4 Mon Sep 17 00:00:00 2001
From: Alec Leamas <leamas.alec@gmail.com>
Date: Sun, 23 Oct 2016 17:10:26 +0200
Subject: [PATCH 04/10] lirc.org: Clean up distribution links, bugfixes.
---
doc/html-source/configure.html | 1 +
doc/lirc.org/index.html | 54 +++++++++++++++++++++++++++---------------
2 files changed, 36 insertions(+), 19 deletions(-)
diff --git a/doc/html-source/configure.html b/doc/html-source/configure.html
index 7c01b3d..feb7d41 100644
--- a/doc/html-source/configure.html
+++ b/doc/html-source/configure.html
@@ -60,6 +60,7 @@
<p>
<H3> uinput and effective user </h3>
+ <p>
If your distribution does not have uinput enabled by default
(i. e., there is a /dev/uinput device) add to the file /etc/modules
the entry: </p>
diff --git a/doc/lirc.org/index.html b/doc/lirc.org/index.html
index 93cecf7..7b4ab21 100644
--- a/doc/lirc.org/index.html
+++ b/doc/lirc.org/index.html
@@ -96,7 +96,7 @@
</P>
<UL CLASS="menu">
<li>The latest version of LIRC can be downloaded from
- <A HREF="http://sourceforge.net/projects/lirc/files/LIRC/0.9.4b">
+ <A HREF="http://sourceforge.net/projects/lirc/files/LIRC/0.9.4c">
SourceForge</a></li>
<li>Other, unmaintained programs such as xrc and xirw
as well as older LIRC version can also be found on
@@ -104,6 +104,39 @@
SourceForge</A></li>
</UL>
<BR>
+ <!-- Linux distributions w LIRC -->
+ <TABLE WIDTH="100%" BORDER="0" CELLSPACING="0"
+ CELLPADDING="0" SUMMARY="">
+ <TR>
+ <TD CLASS="menuhead">
+ Linux distributions packaging LIRC
+ </TD>
+ </TR>
+ </TABLE>
+ <UL TYPE="SQUARE">
+ <LI><A HREF="https://www.archlinux.org/">Arch Linux</A></LI>
+ <LI><A HREF="http://www.debian.org/">Debian</A></LI>
+ <LI><A HREF="http://www.fedoraproject.org/">Fedora</A></LI>
+ <LI><A HREF="http://www.gentoo.org/">Gentoo</A></LI>
+ <LI><A HREF="http://www.mandrivalinux.com">Mandriva(Previously Mandrake)</A></LI>
+ <LI><A HREF="http://www.redhat.com/">RedHat</A></LI>
+ <LI><A HREF="http://www.slackware.com/">Slackware</A>
+ - the mother of all Distributions
+ </LI>
+ <LI><A HREF="http://www.suse.de/">SUSE.</A></LI>
+ <LI><A HREF="http://www.ubuntu.com/">Ubuntu</A></LI>
+ </UL>
+ <TABLE WIDTH="100%" BORDER="0" CELLSPACING="0"
+ CELLPADDING="0" SUMMARY="">
+ <TR>
+ <TD CLASS="menuhead"> MacOS builds </TD>
+ </TR>
+ </TABLE>
+ <UL TYPE="SQUARE">
+ <LI><A HREF="https://www.macports.org/ports.php?by=name&substr=lirc">
+ MacPorts
+ </A></LI>
+ </UL>
<!-- Hardware -->
<TABLE WIDTH="100%" BORDER="0" CELLSPACING="0"
@@ -286,24 +319,7 @@
<LI><A HREF="http://www.kernel.org/">www.kernel.org</A> - Linux Kernel Website</LI>
<LI><A HREF="http://www.freshmeat.net/">www.freshmeat.net</A> - A great place for searching for Linux Applications</LI>
</UL>
- <FONT SIZE="+1" COLOR="#FFFFFF">
- Linux Distributions Packaging LIRC
- </FONT>
- <UL TYPE="SQUARE">
- <LI><A HREF="http://www.slackware.com/">Slackware</A> - the mother of all Distributions</LI>
- <LI><A HREF="http://www.redhat.com/">RedHat</A></LI>
- <LI><A HREF="http://www.debian.org/">Debian</A></LI>
- <LI><A HREF="http://www.ubuntu.com/">Ubuntu</A></LI>
- <LI><A HREF="http://www.fedoraproject.org/">Fedora</A></LI>
- <LI><A HREF="http://www.gentoo.org/">Gentoo</A></LI>
- <LI><A HREF="http://www.suse.de/">SUSE.</A></LI>
- <LI><A HREF="http://www.mandrivalinux.com">Mandriva(Previously Mandrake)</A></LI>
- <LI><A HREF="https://www.archlinux.org/">Arch Linux</A></LI>
- <LI><A HREF="https://www.macports.org/ports.php?by=name&substr=lirc">
- MacOS - MacPorts
- </A></LI>
- </UL>
- </DIV>
+ </DIV>
<TABLE WIDTH="100%" BORDER="0" CELLSPACING="0"
CELLPADDING="0" SUMMARY="">
--
2.5.5

@ -1,36 +0,0 @@
From 4e931d11585e1baeddeea9a753007d835f8a3334 Mon Sep 17 00:00:00 2001
From: Alec Leamas <leamas.alec@gmail.com>
Date: Wed, 17 Aug 2016 21:28:00 +0200
Subject: [PATCH 04/10] plugins: audio_alsa: Fix byte truncating in 16-bit data
(#218):
This fixes a bug introduced in 82305c72 which basically was
about muting a "dereferencing type-punned pointer will break
strict-aliasing rules" compiler warning.
---
plugins/audio_alsa.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/plugins/audio_alsa.c b/plugins/audio_alsa.c
index 20022f3..ff0d8a9 100644
--- a/plugins/audio_alsa.c
+++ b/plugins/audio_alsa.c
@@ -436,11 +436,12 @@ var_reset: /* Reset variables */
for (i = 0; i < count; i++) {
/* cs == current sample */
unsigned char cs, as, sl, sz, xz;
- short stmp;
+ unsigned short stmp;
if (bytes_per_sample == 2) {
- stmp = buff[i * bytes_per_sample * alsa_hw.num_channels +
- bytes_per_sample * alsa_hw.channel];
+ int ix = i * bytes_per_sample * alsa_hw.num_channels +
+ bytes_per_sample * alsa_hw.channel;
+ memcpy(&stmp, &buff[ix], sizeof(stmp));
cs = stmp >> 8;
cs ^= 0x80;
} else {
--
2.5.5

@ -1,22 +0,0 @@
From 8cb5fd91935603536dcb0377ff91eb0ae477d19a Mon Sep 17 00:00:00 2001
From: Alec Leamas <leamas.alec@gmail.com>
Date: Thu, 18 Aug 2016 16:19:17 +0200
Subject: [PATCH 05/10] contrib: disable udev /dev/uinput rule.
---
contrib/97-lircd-uinput.rules | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/contrib/97-lircd-uinput.rules b/contrib/97-lircd-uinput.rules
index 12228a7..a554299 100644
--- a/contrib/97-lircd-uinput.rules
+++ b/contrib/97-lircd-uinput.rules
@@ -7,4 +7,4 @@ SUBSYSTEMS=="input",ATTRS{name}=="lircmd",SYMLINK+="lircmd"
# Make /dev/uinput accessible for the lirc group. A setfacl RUN would be
# better here, but seemingly does not work (?)
# An alternative is to use lircd-setup(8) to sun setfacl(1).
-KERNEL=="uinput",GROUP:="lirc",MODE:="0660"
+## KERNEL=="uinput",GROUP:="lirc",MODE:="0660"
--
2.5.5

@ -0,0 +1,35 @@
From 33c40d127877179e0cba2f6595816377bb6bcda1 Mon Sep 17 00:00:00 2001
From: Alec Leamas <leamas.alec@gmail.com>
Date: Tue, 25 Oct 2016 10:28:14 +0200
Subject: [PATCH 05/10] lib: curl_poll.h: Ensure build on unconfiguredclients.
---
lib/curl_poll.h | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/lib/curl_poll.h b/lib/curl_poll.h
index 6144c42..af25381 100644
--- a/lib/curl_poll.h
+++ b/lib/curl_poll.h
@@ -21,7 +21,9 @@
* KIND, either express or implied.
*
***************************************************************************/
+#ifdef HAVE_CONFIG_H
#include "config.h"
+#endif
#ifdef __cplusplus
extern "C" {
@@ -29,7 +31,7 @@ extern "C" {
#ifdef HAVE_SYS_POLL_H
#include <sys/poll.h>
-#elif defined(HAVE_POLL_H)
+#else
#include <poll.h>
#endif
--
2.5.5

@ -1,30 +0,0 @@
From 33c188c38f5f89e704e4c775205e1d90ca55bc0d Mon Sep 17 00:00:00 2001
From: Alec Leamas <leamas.alec@gmail.com>
Date: Sun, 21 Aug 2016 17:33:19 +0200
Subject: [PATCH 06/10] lirc-setup: Fix crasher bugfix.
Fixes https://retrace.fedoraproject.org/faf/reports/1166394/
---
tools/lirc-setup/mvc_model.py | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/tools/lirc-setup/mvc_model.py b/tools/lirc-setup/mvc_model.py
index 02d1413..48864d8 100644
--- a/tools/lirc-setup/mvc_model.py
+++ b/tools/lirc-setup/mvc_model.py
@@ -362,10 +362,10 @@ class DrvctlDeviceListModel(DeviceListModel):
self.label_by_device = {}
trypath = os.path.abspath(_here("../mode2"))
if not os.path.exists(trypath):
- trypath = os.path.join(BINDIR, "mode2")
+ trypath = os.path.join(config.BINDIR, "mode2")
if not os.path.exists(trypath):
raise FileNotFoundError("trypath")
- cmd = [trypath, "--driver" , self.driver_id, "--list-devices"]
+ cmd = [trypath, "--driver", self.driver_id, "--list-devices"]
try:
result = subprocess.check_output(cmd, universal_newlines=True)
except (OSError, subprocess.CalledProcessError):
--
2.5.5

@ -0,0 +1,23 @@
From 916a48ffcb9f1c259a0fc778a2de1be729423092 Mon Sep 17 00:00:00 2001
From: Alec Leamas <leamas.alec@gmail.com>
Date: Tue, 25 Oct 2016 21:29:27 +0200
Subject: [PATCH 06/10] lirc.pc: Fix bad library specification (#236).
---
lirc.pc.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lirc.pc.in b/lirc.pc.in
index 802f00e..5ed7c1c 100644
--- a/lirc.pc.in
+++ b/lirc.pc.in
@@ -10,5 +10,5 @@ includedir=@includedir@
pkgdatadir=@datadir@/lirc
plugindir=${libdir}/lirc/plugins
-Libs: -L${libdir} -llirc
+Libs: -L${libdir} -llirc_client
Cflags: -I${includedir}
--
2.5.5

@ -0,0 +1,38 @@
From 0463f56357d1dd223a4d2882dbc460a0a7a7e9ad Mon Sep 17 00:00:00 2001
From: Alec Leamas <leamas.alec@gmail.com>
Date: Sat, 29 Oct 2016 11:06:50 +0200
Subject: [PATCH 07/10] Build: Use HAVE_UINPUT=1 to force building uinput code
(#238).
---
configure.ac | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/configure.ac b/configure.ac
index cde9813..08e2c8e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -33,7 +33,7 @@ if test x$XSLTPROC != "xyes"; then
AC_MSG_ERROR([
xsltproc is required to build. It usually comes with libxml])
fi
-AM_CONDITIONAL(HAVE_UINPUT, test -e /dev/uinput)
+AM_CONDITIONAL(HAVE_UINPUT, test -n "$HAVE_UINPUT" -o -e /dev/uinput)
AC_CHECK_PROG([MAN2HTML],[man2html],[yes],[no])
AM_CONDITIONAL(HAVE_MAN2HTML, test x$MAN2HTML = xyes)
AC_CHECK_PROG([DOXYGEN],[doxygen],[yes],[no])
@@ -446,6 +446,11 @@ AM_CONDITIONAL(NEED_PYTHON3, [test "x$enable_python3_fix" = "xyes"])
AC_ARG_VAR(HAVE_WORKING_POLL,[
On cross-compile: Target has a working poll(2) implementation])
+AC_ARG_VAR(HAVE_UINPUT,[
+ If not-empty, assume uinput is available despite missing /dev/uinput
+])
+
+
suffix=$(echo "$VERSION" | sed 's/.*-//')
AM_CONDITIONAL(DEVEL, [test x$suffix = xdevel])
--
2.5.5

@ -1,33 +0,0 @@
From aa087cb999b7303d6f14d0928a84909d5bf29529 Mon Sep 17 00:00:00 2001
From: Alec Leamas <leamas.alec@gmail.com>
Date: Thu, 18 Aug 2016 21:04:07 +0200
Subject: [PATCH 07/10] contrib: Fix usb devices' acl permissions (rhbz
#1364744).
---
contrib/60-lirc.rules | 13 +++++++------
1 file changed, 7 insertions(+), 6 deletions(-)
diff --git a/contrib/60-lirc.rules b/contrib/60-lirc.rules
index 8147546..492aae9 100644
--- a/contrib/60-lirc.rules
+++ b/contrib/60-lirc.rules
@@ -1,8 +1,9 @@
-# Installing this udev rule will make the /dev/lirc* devices accessible
-# for users in the group "lirc" using regular group permissions. USB
-# devices grants rw permission to the lirc group using ACL.
-# To enable, copy to /etc/udev/rules.d.
+# Make the /dev/lirc* devices accessible for users in the group "lirc"
+# using regular group permissions.
KERNEL=="lirc[0-9]*", SUBSYSTEM=="lirc", GROUP="lirc", MODE="0660"
-ACTION=="add", SUBSYSTEM=="usb", \
- RUN+="/usr/bin/setfacl -m g:lirc:rw $env{DEVNAME}"
+
+# Grant rw permission to the lirc group for USB devices using acl(5).
+
+ACTION=="add", SUBSYSTEM=="usb", ENV{DEVNAME}=="?*", \
+ RUN+="/usr/bin/sh -c '/usr/bin/setfacl -m g:lirc:rw %E{DEVNAME} 2>/dev/null || :'"
--
2.5.5

@ -1,55 +0,0 @@
From f561c4b9e1ea8a225ae4431348529cd5b6b477d9 Mon Sep 17 00:00:00 2001
From: Alec Leamas <leamas.alec@gmail.com>
Date: Tue, 23 Aug 2016 13:16:56 +0200
Subject: [PATCH 08/10] lircd: Retry temporary unavailable write sockets
(#221).
---
daemons/lircd.cpp | 21 +++++++++++++++++++--
1 file changed, 19 insertions(+), 2 deletions(-)
diff --git a/daemons/lircd.cpp b/daemons/lircd.cpp
index de2c341..2dc9029 100644
--- a/daemons/lircd.cpp
+++ b/daemons/lircd.cpp
@@ -115,6 +115,12 @@ int clock_gettime(int clk_id, struct timespec *t){
static const logchannel_t logchannel = LOG_APP;
+/** How long we sleep while waiting for busy write sockets. */
+static const int WRITE_SLEEP_US = 20000;
+
+/** How many times we retry busy write sockets. */
+static const int WRITE_RETRIES = 50;
+
struct peer_connection {
char* host;
unsigned short port;
@@ -338,11 +344,22 @@ static int oatoi(const char* s)
int write_socket(int fd, const char* buf, int len)
{
int done, todo = len;
+ int retries = WRITE_RETRIES;
while (todo) {
done = write(fd, buf, todo);
- if (done <= 0)
- return done;
+ if (done <= 0) {
+ log_perror_debug("Error in write_socket");
+ if (errno == EAGAIN || errno == EWOULDBLOCK) {
+ retries -= 1;
+ if (retries <= 0)
+ return done;
+ usleep(WRITE_SLEEP_US);
+ continue;
+ } else {
+ return done;
+ }
+ }
buf += done;
todo -= done;
}
--
2.5.5

@ -0,0 +1,25 @@
From eb06327fc1b4e8e9682cf471643ccbab35fed241 Mon Sep 17 00:00:00 2001
From: Alec Leamas <leamas.alec@gmail.com>
Date: Sat, 29 Oct 2016 11:50:23 +0200
Subject: [PATCH 08/10] systemd: Fix wrong path to irexec (#239).
---
systemd/irexec.service | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/systemd/irexec.service b/systemd/irexec.service
index 6eb8e6f..25ac6fc 100644
--- a/systemd/irexec.service
+++ b/systemd/irexec.service
@@ -20,7 +20,7 @@ Description=Handle events from IR remotes decoded by lircd(8)
Type=simple
-ExecStart=/usr/sbin/irexec /etc/lirc/irexec.lircrc
+ExecStart=/usr/bin/irexec /etc/lirc/irexec.lircrc
[Install]
WantedBy=multi-user.target
--
2.5.5

@ -0,0 +1,32 @@
From eb21328b2ecb59cb3215ef349e7de73d328eac2c Mon Sep 17 00:00:00 2001
From: Alec Leamas <leamas.alec@gmail.com>
Date: Sun, 30 Oct 2016 03:53:22 +0100
Subject: [PATCH 09/10] .gitignore: doc/ fixes
---
.gitignore | 2 ++
1 file changed, 2 insertions(+)
diff --git a/.gitignore b/.gitignore
index 16bc688..40bed98 100644
--- a/.gitignore
+++ b/.gitignore
@@ -37,6 +37,7 @@ kernel-drivers.yaml
doc/api-docs
doc/man-html
doc/man/*.[1-9]
+doc/man
doc/html
doc/NEWS*
doc/lirc.hwdb
@@ -44,6 +45,7 @@ doc/table.html
doc/driver-toc.xsl
doc/docpage.xsl
doc/lirc.org/html
+doc/lirc.org/api-docs/
doc/ext-driver-toc.xsl
doxygen-warnings.txt
--
2.5.5

@ -1,57 +0,0 @@
From 9ad5f93a07be0bf4f645f16dbbf29e2e8cd3b871 Mon Sep 17 00:00:00 2001
From: Alec Leamas <leamas.alec@gmail.com>
Date: Tue, 23 Aug 2016 13:50:48 +0200
Subject: [PATCH 09/10] lircd: Warn for duplicate remote definitions (#222).
---
daemons/lircd.cpp | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/daemons/lircd.cpp b/daemons/lircd.cpp
index 2dc9029..8fd8336 100644
--- a/daemons/lircd.cpp
+++ b/daemons/lircd.cpp
@@ -70,6 +70,9 @@
#include <sys/ioctl.h>
#endif
+#include <string>
+#include <set>
+
#include "lirc_private.h"
#ifdef HAVE_INT_GETGROUPLIST_GROUPS
@@ -540,6 +543,22 @@ static int setup_hardware(void)
return ret;
}
+static void check_config_duplicates(const struct ir_remote* head)
+{
+ std::set<std::string> names;
+ const struct ir_remote* ir;
+ const char* const errmsg =
+ "Duplicate remotes \"%s\" found, problems ahead";
+
+ for (ir = head; ir != NULL; ir = ir->next) {
+ std::string name(ir->name);
+ if (names.count(name) == 1)
+ log_warn(errmsg, name.c_str())
+ else
+ names.insert(name);
+ }
+}
+
void config(void)
{
@@ -572,6 +591,7 @@ void config(void)
}
configfile = filename;
config_remotes = read_config(fd, configfile);
+ check_config_duplicates(config_remotes);
fclose(fd);
if (config_remotes == (void*)-1) {
log_error("reading of config file failed");
--
2.5.5

@ -0,0 +1,59 @@
From e50858c64e21d7a7243cd047042107d782f7c918 Mon Sep 17 00:00:00 2001
From: Alec Leamas <leamas.alec@gmail.com>
Date: Sun, 30 Oct 2016 04:00:18 +0100
Subject: [PATCH 10/10] lib: Only use local headers in lirc_private.h (#237).
The lirc_private.h header should only be used internally
when building lirc tools, and i this case we should not
care about what's possibly installed in /usr/include/lirc.
---
lib/lirc_private.h | 34 +++++++++++++++++-----------------
1 file changed, 17 insertions(+), 17 deletions(-)
diff --git a/lib/lirc_private.h b/lib/lirc_private.h
index 741f86c..2336c0a 100644
--- a/lib/lirc_private.h
+++ b/lib/lirc_private.h
@@ -19,22 +19,22 @@
#include "include/media/lirc.h"
#endif
-#include "lirc/ir_remote_types.h"
-#include "lirc/lirc_log.h"
-#include "lirc/lirc_options.h"
-#include "lirc/lirc-utils.h"
-#include "lirc/curl_poll.h"
-#include "lirc/config_file.h"
-#include "lirc/dump_config.h"
-#include "lirc/input_map.h"
-#include "lirc/driver.h"
-#include "lirc/ir_remote_types.h"
-#include "lirc/drv_admin.h"
-#include "lirc/ir_remote.h"
-#include "lirc/receive.h"
-#include "lirc/release.h"
-#include "lirc/serial.h"
-#include "lirc/transmit.h"
-#include "lirc/ciniparser.h"
+#include "ir_remote_types.h"
+#include "lirc_log.h"
+#include "lirc_options.h"
+#include "lirc-utils.h"
+#include "curl_poll.h"
+#include "config_file.h"
+#include "dump_config.h"
+#include "input_map.h"
+#include "driver.h"
+#include "ir_remote_types.h"
+#include "drv_admin.h"
+#include "ir_remote.h"
+#include "receive.h"
+#include "release.h"
+#include "serial.h"
+#include "transmit.h"
+#include "ciniparser.h"
#endif
--
2.5.5

@ -1,35 +0,0 @@
From b853e3d1bcc756206ffa1bc612996cd1597d53ea Mon Sep 17 00:00:00 2001
From: Alec Leamas <leamas.alec@gmail.com>
Date: Tue, 23 Aug 2016 13:24:32 +0200
Subject: [PATCH 10/10] lirc-make-devinput: Fix that two remotes has the same
name (#222).
---
tools/lirc-make-devinput | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/tools/lirc-make-devinput b/tools/lirc-make-devinput
index 3ae63ea..0598970 100755
--- a/tools/lirc-make-devinput
+++ b/tools/lirc-make-devinput
@@ -63,7 +63,7 @@ echo "# Date: $(date)"
cat <<EOF
begin remote
- name devinput
+ name devinput-64
bits 16
eps 30
aeps 100
@@ -89,7 +89,7 @@ echo "# generated by $(basename $0) (obsolete 32 bit version)"
cat <<EOF
begin remote
- name devinput
+ name devinput-32
bits 16
eps 30
aeps 100
--
2.5.5

@ -1,182 +0,0 @@
From 5dd37205a06a44e6b9cdbae5a3901e39270f0975 Mon Sep 17 00:00:00 2001
From: Alec Leamas <leamas.alec@gmail.com>
Date: Thu, 18 Aug 2016 22:35:31 +0200
Subject: [PATCH 6/7] include: Update bundled lirc.h.
---
include/media/lirc.h | 95 ++++++----------------------------------------------
1 file changed, 10 insertions(+), 85 deletions(-)
diff --git a/include/media/lirc.h b/include/media/lirc.h
index 601fccb..991ab45 100644
--- a/include/media/lirc.h
+++ b/include/media/lirc.h
@@ -1,39 +1,13 @@
-/**
- * @file lirc.c
- * This file contains some general definitions, like feature flags.
- * It's a bundled copy from the kernel sources. Being part of
- * kernel sources is a bug, see
- * https://bugzilla.kernel.org/show_bug.cgi?id=75751.
- * The file is upstreamed to the kernel from 4.6.
- */
-
-#ifndef LIRC_BASE_H
-#define LIRC_BASE_H
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/**
- * This data type, with its extremely carefully selected name, is used as
- * data type for the signal durations.
- */
-#define lirc_t int
-
/*
* lirc.h - linux infrared remote control header file
- * last modified 2010/06/03 by Jarod Wilson
+ * last modified 2010/07/13 by Jarod Wilson
*/
-#if defined(__linux__)
+#ifndef _LINUX_LIRC_H
+#define _LINUX_LIRC_H
+
#include <linux/types.h>
#include <linux/ioctl.h>
-#elif defined(_NetBSD_)
-#include <sys/ioctl.h>
-#elif defined(_CYGWIN_)
-#define __USE_LINUX_IOCTL_DEFS
-#include <sys/ioctl.h>
-#endif
#define PULSE_BIT 0x01000000
#define PULSE_MASK 0x00FFFFFF
@@ -59,6 +33,9 @@ extern "C" {
#define LIRC_IS_FREQUENCY(val) (LIRC_MODE2(val) == LIRC_MODE2_FREQUENCY)
#define LIRC_IS_TIMEOUT(val) (LIRC_MODE2(val) == LIRC_MODE2_TIMEOUT)
+/* used heavily by lirc userspace */
+#define lirc_t int
+
/*** lirc compatible hardware features ***/
#define LIRC_MODE2SEND(x) (x)
@@ -79,16 +56,8 @@ extern "C" {
#define LIRC_CAN_SEND_MASK 0x0000003f
-/** This flag indicates that the transmitter is capable of setting the
- * IR carrier frequency. */
#define LIRC_CAN_SET_SEND_CARRIER 0x00000100
-
-/** This flag indicates that the transmitter is capable of setting the
- * duty cycle of generated IR signals. */
#define LIRC_CAN_SET_SEND_DUTY_CYCLE 0x00000200
-
-/** This flag indicates that the transmitter is capable of setting a
- * transmitter mask, i.e., probably has several transmitters. */
#define LIRC_CAN_SET_TRANSMITTER_MASK 0x00000400
#define LIRC_CAN_REC_RAW LIRC_MODE2REC(LIRC_MODE_RAW)
@@ -107,16 +76,10 @@ extern "C" {
#define LIRC_CAN_SET_REC_TIMEOUT 0x10000000
#define LIRC_CAN_SET_REC_FILTER 0x08000000
-
-/** This flag indicates that the receiver is capable of estimating
- * the carrier frequency of received IR signals. */
#define LIRC_CAN_MEASURE_CARRIER 0x02000000
#define LIRC_CAN_USE_WIDEBAND_RECEIVER 0x04000000
-/** Extract sending features from its argument. */
#define LIRC_CAN_SEND(x) ((x)&LIRC_CAN_SEND_MASK)
-
-/** Extract receiving features from its argument. */
#define LIRC_CAN_REC(x) ((x)&LIRC_CAN_REC_MASK)
#define LIRC_CAN_NOTIFY_DECODE 0x01000000
@@ -127,20 +90,11 @@ extern "C" {
#define LIRC_GET_SEND_MODE _IOR('i', 0x00000001, __u32)
#define LIRC_GET_REC_MODE _IOR('i', 0x00000002, __u32)
-#define LIRC_GET_SEND_CARRIER _IOR('i', 0x00000003, __u32)
-#define LIRC_GET_REC_CARRIER _IOR('i', 0x00000004, __u32)
-#define LIRC_GET_SEND_DUTY_CYCLE _IOR('i', 0x00000005, __u32)
-#define LIRC_GET_REC_DUTY_CYCLE _IOR('i', 0x00000006, __u32)
#define LIRC_GET_REC_RESOLUTION _IOR('i', 0x00000007, __u32)
#define LIRC_GET_MIN_TIMEOUT _IOR('i', 0x00000008, __u32)
#define LIRC_GET_MAX_TIMEOUT _IOR('i', 0x00000009, __u32)
-#define LIRC_GET_MIN_FILTER_PULSE _IOR('i', 0x0000000a, __u32)
-#define LIRC_GET_MAX_FILTER_PULSE _IOR('i', 0x0000000b, __u32)
-#define LIRC_GET_MIN_FILTER_SPACE _IOR('i', 0x0000000c, __u32)
-#define LIRC_GET_MAX_FILTER_SPACE _IOR('i', 0x0000000d, __u32)
-
/* code length in bits, currently only for LIRC_MODE_LIRCCODE */
#define LIRC_GET_LENGTH _IOR('i', 0x0000000f, __u32)
@@ -150,7 +104,6 @@ extern "C" {
#define LIRC_SET_SEND_CARRIER _IOW('i', 0x00000013, __u32)
#define LIRC_SET_REC_CARRIER _IOW('i', 0x00000014, __u32)
#define LIRC_SET_SEND_DUTY_CYCLE _IOW('i', 0x00000015, __u32)
-#define LIRC_SET_REC_DUTY_CYCLE _IOW('i', 0x00000016, __u32)
#define LIRC_SET_TRANSMITTER_MASK _IOW('i', 0x00000017, __u32)
/*
@@ -164,45 +117,17 @@ extern "C" {
#define LIRC_SET_REC_TIMEOUT_REPORTS _IOW('i', 0x00000019, __u32)
/*
- * pulses shorter than this are filtered out by hardware (software
- * emulation in lirc_dev?)
- */
-#define LIRC_SET_REC_FILTER_PULSE _IOW('i', 0x0000001a, __u32)
-/*
- * spaces shorter than this are filtered out by hardware (software
- * emulation in lirc_dev?)
- */
-#define LIRC_SET_REC_FILTER_SPACE _IOW('i', 0x0000001b, __u32)
-/*
- * if filter cannot be set independantly for pulse/space, this should
- * be used
- */
-#define LIRC_SET_REC_FILTER _IOW('i', 0x0000001c, __u32)
-
-/*
* if enabled from the next key press on the driver will send
* LIRC_MODE2_FREQUENCY packets
*/
-#define LIRC_SET_MEASURE_CARRIER_MODE _IOW('i', 0x0000001d, __u32)
+#define LIRC_SET_MEASURE_CARRIER_MODE _IOW('i', 0x0000001d, __u32)
/*
- * to set a range use
- * LIRC_SET_REC_DUTY_CYCLE_RANGE/LIRC_SET_REC_CARRIER_RANGE with the
- * lower bound first and later
- * LIRC_SET_REC_DUTY_CYCLE/LIRC_SET_REC_CARRIER with the upper bound
+ * to set a range use LIRC_SET_REC_CARRIER_RANGE with the
+ * lower bound first and later LIRC_SET_REC_CARRIER with the upper bound
*/
-
-#define LIRC_SET_REC_DUTY_CYCLE_RANGE _IOW('i', 0x0000001e, __u32)
#define LIRC_SET_REC_CARRIER_RANGE _IOW('i', 0x0000001f, __u32)
-#define LIRC_NOTIFY_DECODE _IO('i', 0x00000020)
-
-#define LIRC_SETUP_START _IO('i', 0x00000021)
-#define LIRC_SETUP_END _IO('i', 0x00000022)
#define LIRC_SET_WIDEBAND_RECEIVER _IOW('i', 0x00000023, __u32)
-#ifdef __cplusplus
-}
#endif
-
-#endif //LIRC_BASE_H
--
2.5.5

@ -1,110 +0,0 @@
From 6a57d48e1a233dfc55d436e8d064509cb03973d1 Mon Sep 17 00:00:00 2001
From: Alec Leamas <leamas.alec@gmail.com>
Date: Fri, 19 Aug 2016 04:48:02 +0200
Subject: [PATCH 7/7] lircd: Remove use of functions killed in kernel 4.8.0
From 4.8.0 the kernel no longer supports LIRC_NOTIFY_DECODE,
LIRC_SETUP_START/LIRC_SETUP_END and several constants related
to initiating filters. Remove corresponding calls from lircd.
---
daemons/lircd.cpp | 51 ++-------------------------------------------------
lib/driver.h | 7 +++++++
2 files changed, 9 insertions(+), 49 deletions(-)
diff --git a/daemons/lircd.cpp b/daemons/lircd.cpp
index a7dbc94..a50d11f 100644
--- a/daemons/lircd.cpp
+++ b/daemons/lircd.cpp
@@ -464,50 +464,6 @@ static int setup_timeout(void)
}
-static int setup_filter(void)
-{
- int ret1, ret2;
- lirc_t min_pulse_supported = 0, max_pulse_supported = 0;
- lirc_t min_space_supported = 0, max_space_supported = 0;
-
- if (!(curr_driver->features & LIRC_CAN_SET_REC_FILTER))
- return 1;
- if (curr_driver->drvctl_func(LIRC_GET_MIN_FILTER_PULSE,
- &min_pulse_supported) == -1 ||
- curr_driver->drvctl_func(LIRC_GET_MAX_FILTER_PULSE, &max_pulse_supported) == -1
- || curr_driver->drvctl_func(LIRC_GET_MIN_FILTER_SPACE, &min_space_supported) == -1
- || curr_driver->drvctl_func(LIRC_GET_MAX_FILTER_SPACE, &max_space_supported) == -1) {
- log_error("could not get filter range");
- log_perror_err(__func__);
- }
-
- if (setup_min_pulse > max_pulse_supported)
- setup_min_pulse = max_pulse_supported;
- else if (setup_min_pulse < min_pulse_supported)
- setup_min_pulse = 0; /* disable filtering */
-
- if (setup_min_space > max_space_supported)
- setup_min_space = max_space_supported;
- else if (setup_min_space < min_space_supported)
- setup_min_space = 0; /* disable filtering */
-
- ret1 = curr_driver->drvctl_func(LIRC_SET_REC_FILTER_PULSE, &setup_min_pulse);
- ret2 = curr_driver->drvctl_func(LIRC_SET_REC_FILTER_SPACE, &setup_min_space);
- if (ret1 == -1 || ret2 == -1) {
- if (curr_driver->
- drvctl_func(LIRC_SET_REC_FILTER,
- setup_min_pulse < setup_min_space ? &setup_min_pulse : &setup_min_space) == -1) {
- log_error("could not set filter");
- log_perror_err(__func__);
- return 0;
- }
- }
- return 1;
-}
-
-
-
-
static int setup_hardware(void)
{
int ret = 1;
@@ -516,10 +472,7 @@ static int setup_hardware(void)
if ((curr_driver->features & LIRC_CAN_SET_REC_CARRIER)
|| (curr_driver->features & LIRC_CAN_SET_REC_TIMEOUT)
|| (curr_driver->features & LIRC_CAN_SET_REC_FILTER)) {
- (void)curr_driver->drvctl_func(LIRC_SETUP_START, NULL);
- ret = setup_frequency() && setup_timeout()
- && setup_filter();
- (void)curr_driver->drvctl_func(LIRC_SETUP_END, NULL);
+ ret = setup_frequency() && setup_timeout();
}
}
return ret;
@@ -2162,7 +2115,7 @@ void loop(void)
int reps;
if (curr_driver->drvctl_func && (curr_driver->features & LIRC_CAN_NOTIFY_DECODE))
- curr_driver->drvctl_func(LIRC_NOTIFY_DECODE, NULL);
+ curr_driver->drvctl_func(DRVCTL_NOTIFY_DECODE, NULL);
get_release_data(&remote_name, &button_name, &reps);
diff --git a/lib/driver.h b/lib/driver.h
index c7c4a6a..fc7318e 100644
--- a/lib/driver.h
+++ b/lib/driver.h
@@ -97,6 +97,13 @@ int drv_handle_options(const char* options);
/** drvctl cmd: Free memory in argument obtained using DRVCTL_GET_DEVICES. */
#define DRVCTL_FREE_DEVICES 6
+/**
+ * The former LIRC_NOTIFY_DECODE, informs drier that signal is successfully
+ * decoded e. g., to initiate some visual feedback through a LED.
+ */
+
+#define DRVCTL_NOTIFY_DECODE 7
+
/** Last well-known command. Remaining is used in driver-specific controls.*/
#define DRVCTL_MAX 128
--
2.5.5

@ -4,7 +4,7 @@
#define tag devel
Name: lirc
Version: 0.9.4b
Version: 0.9.4c
Release: %{?tag:0.}4%{?tag:.}%{?tag}%{?dist}
Summary: The Linux Infrared Remote Control package
@ -17,19 +17,15 @@ URL: http://www.lirc.org/
Source0: %{?released:%{repo}}%{name}-%{version}%{?tag:-}%{?tag}.tar.gz
Source1: README.fedora
Source2: 99-remote-control-lirc.rules
# Config only, cannot be upstreamed.
#Patch1: 0001-Changing-effective-user-default.patch
Patch2: 0002-NEWS-lirc.org-index.html-Fixes.patch
Patch3: 0003-irtoy-improve-error-handling-220.patch
Patch4: 0004-plugins-audio_alsa-Fix-byte-truncating-in-16-bit-dat.patch
Patch5: 0005-contrib-disable-udev-dev-uinput-rule.patch
Patch6: 0006-lirc-setup-Fix-crasher-bugfix.patch
Patch7: 0007-contrib-Fix-usb-devices-acl-permissions-rhbz-1364744.patch
Patch8: 0008-lircd-Retry-temporary-unavailable-write-sockets-221.patch
Patch9: 0009-lircd-Warn-for-duplicate-remote-definitions-222.patch
Patch10: 0010-lirc-make-devinput-Fix-that-two-remotes-has-the-same.patch
Patch11: 0011-include-Update-bundled-lirc.h.patch
Patch12: 0012-lircd-Remove-use-of-functions-killed-in-kernel-4.8.0.patch
Patch1: 0001-plugins-girs.c-Default-device-typo-fix.patch
Patch2: 0002-configure-Fix-cross-compilation-error-233.patch
Patch3: 0003-build-lirc.h-Configure-includes-in-lirc.h-234.patch
Patch4: 0004-lirc.org-Clean-up-distribution-links-bugfixes.patch
Patch5: 0005-lib-curl_poll.h-Ensure-build-on-unconfiguredclients.patch
Patch6: 0006-lirc.pc-Fix-bad-library-specification-236.patch
Patch7: 0007-Build-Use-HAVE_UINPUT-1-to-force-building-uinput-cod.patch
Patch8: 0008-systemd-Fix-wrong-path-to-irexec-239.patch
Patch10: 0010-lib-Only-use-local-headers-in-lirc_private.h-237.patch
BuildRequires: alsa-lib-devel
Buildrequires: autoconf
@ -192,25 +188,9 @@ full support for the ftdi device.
%prep
%setup -qn %{name}-%{version}%{?tag}
#patch1 -p1
%autosetup -p1 -n %{name}-%{version}%{?tag}
sed -i -e 's/#effective-user/effective-user /' lirc_options.conf
sed -i -e '/^effective-user/s/=$/= lirc/' lirc_options.conf
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p1
%patch7 -p1
%patch8 -p1
%patch9 -p1
%patch10 -p1
%if 0%fedora > 24
%patch11 -p1
%patch12 -p1
cp lib/driver.h lib/lirc/driver.h
%endif
sed -i -e 's|/usr/local/etc/|/etc/|' contrib/irman2lirc
@ -218,7 +198,7 @@ sed -i -e 's|/usr/local/etc/|/etc/|' contrib/irman2lirc
%build
autoreconf -fi
CFLAGS="%{optflags}" %configure --libdir=%{_libdir}
CFLAGS="%{optflags}" HAVE_UINPUT=1 %configure --libdir=%{_libdir}
make %{?_smp_mflags}
%install
@ -364,6 +344,18 @@ systemd-tmpfiles --create %{_tmpfilesdir}/lirc.conf
%{_udevrulesdir}/99-remote-control-lirc.rules
%changelog
* Sun Oct 30 2016 Alec Leamas <leamas.alec@gmail.com> - 0.9.4c-4
- Added upstream patches (10)
* Sat Oct 22 2016 Alec Leamas <leamas.alec@gmail.com> - 0.9.4c-3
- Add fix for header file curl_poll.h, fixing clients FTBS errors.
* Fri Oct 21 2016 Alec Leamas <leamas.alec@gmail.com> - 0.9.4c-2
- Rebuilt
* Fri Oct 21 2016 Alec Leamas <leamas.alec@gmail.com> - 0.9.4c-1
- New upstream version, patches upstreamed
* Tue Aug 23 2016 Alec Leamas <leamas.alec@gmail.com> - 0.9.4b-4
- Add fixes for #221 and #222
- Update patches, include everything from upstream

@ -1,2 +1 @@
f1e11512b543a74e4321ecf77f829518 lirc-0.9.4a.tar.gz
cde69a4d8020a217757f07e97dd4444e lirc-0.9.4b.tar.gz
a7c17a7ec11756e0278d31e8d965a384 lirc-0.9.4c.tar.gz

Loading…
Cancel
Save