Hi, On 06/06/2023 12:45, Simon McVittie wrote:
2. i386 as a multiarch foreign architecture to run legacy binaries on modern x86_64 systems 2a. legacy native Linux i386 binaries 2b. legacy Windows i386 binaries via Wine (which requires a somewhat complete i386 Linux library stack)
Windows already uses 64 bits time_t on i386 since Visual Studio 2005, unless _USE_32BIT_TIME_T is defined ([msvcrt-time]), and even if it is defined, Wine implementation of 32 bits time() will not use Linux' time_t. So I'm not sure Windows i386 binaries will be affected by a Linux-side change of time_t, unless you think about something else. For the same reason, this line in the wiki [wiki] may not be true:
32-bit wine (i386 only). This does not make much sense with 64-bit time. It's whole purpose is to run old i386-ABI binaries. The ABI for this arch (and thus wine-32) should not change.
Also, as said in this interesting Wine-devel thread about i386 [wine-devel-32bits]:
Many 64-bit applications still use either a 32-bit installer or some 32-bit components. In comparison 64-bit Windows will support 32-bit (probably) forever.
And even if newer Wine versions supports WoW (32 bits Windows on 64 bits within the same Wine prefix), 64 bit Wine still require 32 bits Linux libraries to run 32 bits Windows programs. This means that Wine will probably require 32 bits Linux libraries for probably a long time and not only for legacy Windows binaries. [msvcrt-time] - https://sources.debian.org/src/wine/8.0~repack-4/include/msvcrt/time.h/#L92 - https://sources.debian.org/src/wine/8.0~repack-4/dlls/msvcrt/time.c/#L781 [wiki] https://wiki.debian.org/ReleaseGoals/64bit-time [wine-devel-32bits] https://www.winehq.org/pipermail/wine-devel/2019-June/147869.html -- Alexis Murzeau PGP: B7E6 0EBB 9293 7B06 BDBC 2787 E7BD 1904 F480 937F |
OpenPGP_signature
Description: OpenPGP digital signature