Try attached ? My virtual debian-hppa machine a bit busy, compile-tested on termux/aarch64
сб, 10 янв. 2026 г., 23:57 Andrew Randrianasulu <[email protected]>: > While building cinelerra-gg on Debian 13+ forky for hppa (pa-risc) I > noticed wintv/x10tv modules fails to build. > > Chasing error message lead me to this sdl pull request > > https://github.com/libsdl-org/SDL/pull/7884/files > > via Debian bug report > > https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1067616 > > I'll try to copy/paste same workaround to our files, but it will be nice > if someone will able to test those changes with real input hardware? > > > > >
From cf6c944a833d86761ad4c18107c2cf8972889d0b Mon Sep 17 00:00:00 2001 From: Andrew Randrianasulu <[email protected]> Date: Sun, 11 Jan 2026 00:19:38 +0300 Subject: [PATCH] Fix build on debian/forky, "time" struct in evdev input system changed patch from https://github.com/libsdl-org/SDL/pull/7884/files --- cinelerra-5.1/cinelerra/wintv.C | 15 +++++++++++++-- cinelerra-5.1/cinelerra/x10tv.C | 14 ++++++++++++-- 2 files changed, 25 insertions(+), 4 deletions(-) diff --git a/cinelerra-5.1/cinelerra/wintv.C b/cinelerra-5.1/cinelerra/wintv.C index 28a10e57..1a6d7f88 100644 --- a/cinelerra-5.1/cinelerra/wintv.C +++ b/cinelerra-5.1/cinelerra/wintv.C @@ -40,6 +40,17 @@ #include <dirent.h> #include <linux/input.h> +/* The field to look up in struct input_event for integer seconds */ +#ifndef input_event_sec +#define input_event_sec time.tv_sec +#endif + +/* The field to look up in struct input_event for fractional seconds */ +#ifndef input_event_usec +#define input_event_usec time.tv_usec +#endif + + WinTV::WinTV(MWindow *mwindow, int ifd) { this->mwindow = mwindow; @@ -183,12 +194,12 @@ void WinTV::handle_event() case EV_MSC: break; default: { - time_t t = ev->time.tv_sec; + time_t t = ev->input_event_sec; struct tm *tp = localtime(&t); printf("wintv event: %4d/%02d/%02d %02d:%02d:%02d.%03d = (%d, %d, 0x%x)\n", tp->tm_year+1900, tp->tm_mon+1, tp->tm_mday, tp->tm_hour, tp->tm_min, tp->tm_sec, - (int)ev->time.tv_usec/1000, ev->type, ev->code, ev->value); + (int)ev->input_event_usec/1000, ev->type, ev->code, ev->value); break; } } } diff --git a/cinelerra-5.1/cinelerra/x10tv.C b/cinelerra-5.1/cinelerra/x10tv.C index 616ac596..be3880cf 100644 --- a/cinelerra-5.1/cinelerra/x10tv.C +++ b/cinelerra-5.1/cinelerra/x10tv.C @@ -40,6 +40,16 @@ #include <dirent.h> #include <linux/input.h> +/* The field to look up in struct input_event for integer seconds */ +#ifndef input_event_sec +#define input_event_sec time.tv_sec +#endif + +/* The field to look up in struct input_event for fractional seconds */ +#ifndef input_event_usec +#define input_event_usec time.tv_usec +#endif + X10TV::X10TV(MWindow *mwindow, int *fds, int nfds) { this->mwindow = mwindow; @@ -218,12 +228,12 @@ void X10TV::handle_event(int fd) case EV_MSC: break; default: { - time_t t = ev->time.tv_sec; + time_t t = ev->input_event_sec; struct tm *tp = localtime(&t); printf("x10tv event %d: %4d/%02d/%02d %02d:%02d:%02d.%03d = (%d, %d, 0x%x)\n", fd, tp->tm_year+1900, tp->tm_mon+1, tp->tm_mday, tp->tm_hour, tp->tm_min, tp->tm_sec, - (int)ev->time.tv_usec/1000, ev->type, ev->code, ev->value); + (int)ev->input_event_usec/1000, ev->type, ev->code, ev->value); break; } } } -- 2.52.0
_______________________________________________ Cin mailing list -- [email protected] To unsubscribe send an email to [email protected]

