lirc: adapt to linux-headers-5.18

Without the change update to linux-header-5.18 causes build failure as:

    lircd.cpp: In function 'int setup_hardware()':
    lircd.cpp:492:49: error: 'LIRC_CAN_SET_REC_FILTER' was not declared in this scope; did you mean 'LIRC_CAN_SET_REC_CARRIER'?
      492 |                     || (curr_driver->features & LIRC_CAN_SET_REC_FILTER)) {
          |                                                 ^~~~~~~~~~~~~~~~~~~~~~~
          |                                                 LIRC_CAN_SET_REC_CARRIER
main
Sergei Trofimovich 2 years ago
parent f905feccd0
commit 026cf7ac48
  1. 16
      pkgs/development/libraries/lirc/default.nix
  2. 35
      pkgs/development/libraries/lirc/linux-headers-5.18.patch

@ -10,11 +10,17 @@ stdenv.mkDerivation rec {
sha256 = "1whlyifvvc7w04ahq07nnk1h18wc8j7c6wnvlb6mszravxh3qxcb";
};
# Fix installation of Python bindings
patches = [ (fetchpatch {
url = "https://sourceforge.net/p/lirc/tickets/339/attachment/0001-Fix-Python-bindings.patch";
sha256 = "088a39x8c1qd81qwvbiqd6crb2lk777wmrs8rdh1ga06lglyvbly";
}) ];
patches = [
# Fix installation of Python bindings
(fetchpatch {
url = "https://sourceforge.net/p/lirc/tickets/339/attachment/0001-Fix-Python-bindings.patch";
sha256 = "088a39x8c1qd81qwvbiqd6crb2lk777wmrs8rdh1ga06lglyvbly";
})
# Add a workaround for linux-headers-5.18 until upstream adapts:
# https://sourceforge.net/p/lirc/git/merge-requests/45/
./linux-headers-5.18.patch
];
postPatch = ''
patchShebangs .

@ -0,0 +1,35 @@
--- a/daemons/lircd.cpp
+++ b/daemons/lircd.cpp
@@ -110,6 +110,17 @@ int clock_gettime(int clk_id, struct timespec *t){
#endif
#define WHITE_SPACE " \t"
+/* Defines removed in linux-headers-5.18:
+ https://sourceforge.net/p/lirc/git/merge-requests/45/
+ */
+#ifndef LIRC_CAN_SET_REC_FILTER
+# define LIRC_CAN_SET_REC_FILTER 0x08000000
+#endif
+
+#ifndef LIRC_CAN_NOTIFY_DECODE
+# define LIRC_CAN_NOTIFY_DECODE 0x01000000
+#endif
+
static const logchannel_t logchannel = LOG_APP;
/** How long we sleep while waiting for busy write sockets. */
--- a/tools/lirc-lsplugins.cpp
+++ b/tools/lirc-lsplugins.cpp
@@ -21,6 +21,12 @@
#include "config.h"
#include "lirc_private.h"
+/* Defines removed in linux-headers-5.18:
+ https://sourceforge.net/p/lirc/git/merge-requests/45/
+ */
+#ifndef LIRC_CAN_NOTIFY_DECODE
+# define LIRC_CAN_NOTIFY_DECODE 0x01000000
+#endif
#define USAGE \
"\nSynopsis:\n" \
Loading…
Cancel
Save