furnace fails to build from source on all 32bit architectures that
enbale time64. This happens to include armhf but also a pile of ports
architectures. The problem is:
| /build/reproducible-path/furnace-0.6.8.3+git20250912+ds/src/engine/platform/pcspkr.cpp: In member function ‘void DivPlatformPCSpeaker::pcSpeakerThread()’:
| /build/reproducible-path/furnace-0.6.8.3+git20250912+ds/src/engine/platform/pcspkr.cpp:94:14: error: ‘struct input_event’ has no member named ‘time’
| 94 | ie.time.tv_sec=r.tv_sec;
| | ^~~~
| /build/reproducible-path/furnace-0.6.8.3+git20250912+ds/src/engine/platform/pcspkr.cpp:95:14: error: ‘struct input_event’ has no member named ‘time’
| 95 | ie.time.tv_usec=r.tv_nsec/1000;
| | ^~~~
Looking into the kernel uapi, Linux changed struct input_event via
commit 152194fe9c3f03232b9c0d0264793a7fa4af82f8. When enabling time64 on
32bit architectures, it no longer includes the time field. Instead one
is now supposed to use input_event_sec and input_event_usec virtual
fields that work in all situations.
I'm attaching a patch for your convenience.
Helmut