[BRLTTY] [PATCH v1 1/1] fix input_event time related compile fail with MUSL

Heiko Thiery heiko.thiery at gmail.com
Sun Jun 7 09:40:40 EDT 2020


./system_linux.c: In function 'writeInputEvent':
./system_linux.c:962:23: error: 'struct input_event' has no member named 'time'; did you mean 'type'?
   gettimeofday(&event.time, NULL);
                       ^~~~
                       type

Signed-off-by: Heiko Thiery <heiko.thiery at gmail.com>
---
When building brltty package in buildroot a failure is observed [1]. The
patch is created based on brltty 6.1.

[1] http://autobuild.buildroot.net/results/7c5278c0ff2b2d8f88803e256803b31a75904efe/build-end.log
---
 Programs/system_linux.c | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/Programs/system_linux.c b/Programs/system_linux.c
index a97ee7ff6..77052d32f 100644
--- a/Programs/system_linux.c
+++ b/Programs/system_linux.c
@@ -40,6 +40,14 @@
 #ifdef HAVE_LINUX_INPUT_H
 #include <linux/input.h>
 
+#ifndef input_event_sec
+#define input_event_sec time.tv_sec
+#endif
+
+#ifndef input_event_usec
+#define input_event_usec time.tv_usec
+#endif
+
 #include "kbd_keycodes.h"
 
 LINUX_KEY_MAP(xt00) = {
@@ -957,9 +965,12 @@ int
 writeInputEvent (UinputObject *uinput, uint16_t type, uint16_t code, int32_t value) {
 #ifdef HAVE_LINUX_UINPUT_H
   struct input_event event;
+  struct timeval tv;
 
   memset(&event, 0, sizeof(event));
-  gettimeofday(&event.time, NULL);
+  gettimeofday(&tv, NULL);
+  event.input_event_sec = tv.tv_sec;
+  event.input_event_usec = tv.tv_usec;
   event.type = type;
   event.code = code;
   event.value = value;
-- 
2.20.1



More information about the BRLTTY mailing list