On Sat, 2024-10-26 at 18:31 +1100, Finn Thain wrote:
> > The following packages require 32-bit alignment:
> > 
> > - mold
> > - LLVM
> > - gccgo
> > - Qt5 (several packages affected)
> > - Qt6 (several packages affected)
> > - OpenJDK (all versions)
> > - Python >= 3.13
> > - Rust
> > 
> 
> That seems to imply that someone requires that those packages are ported. 
> But without a bug report from such a user, to say the package is broken or 
> missing, one must question the real requirement.

People have tried this in the past and it was an endless effort. It's not that
it hasn't been tried. And there is zero chance that any of these projects accept
such patches to support unusual alignment.

It's not that I'm not speaking from experience having maintained the m68k port
in Debian the past 10 years. The Gentoo folks will tell you the same.

> > Those are the most important projects from the tip of my head, but they 
> > are already the biggest blockers. There is no chance that the upstream 
> > maintainers will adjust their packages for 16-bit alignment, so these 
> > will be forever broken on m68k if we don't switch.
> > 
> 
> I'm curious to see such a refusal in context, presumably as a result of 
> patch review, in an upstream project bug tracker.
> 
> I'm not actually expecting to see good patches refused by core projects 
> like Python. (Note that MicroPython is available for commercially active 
> CPUs like the PIC16 family, which are 8-bit processors with 16-bit address 
> bus.)

Why does my word not count here? It's not that this problem is new.

You can also ask Andreas who maintained openSUSE on m68k for a while and
had to carry lots of local patches.

> If upstream QT or Java developers decide that their software is "not for 
> us", they may well have a point. Those packages are not installed on my 
> m68k systems, FWIW.

This is isn't just about runtime dependencies but also build dependencies
which is why I linked the statistics page in Debian. A lot of packages in
Debian/m68k can currently not be built because they have a transitive
dependency on Rust, OpenJDK, Qt, GNOME and so on.

> OTOH, as I've said before, if upstream developers (like Arnd) are looking 
> ahead to 128-bit platforms then they will be paying attention to alignment 
> rules. They should be inclined to favour explicit struct definitions over 
> implicit alignment, don't you think?

Debian just transitioned all of their 32-bit architectures to time64_t except
for i386. Do you know why they did that even though 128-bit CPUs are practically
around the corner?

> > I understand that this might be a painful transition, but I don't see 
> > any other way to keep the m68k port alive in the foreseeable future 
> > unless we fix this problem which keeps blocking the port.
> > 
> > You can see how the Debian m68k port has been falling behind because of 
> > the alignment issues in these statistics: 
> > https://buildd.debian.org/stats/graph-ports-big.png
> > 
> 
> I could imagine a viable transition to a new ABI driven by widespread user 
> demand or involvement. But not by distro stats or maintainer preference.

Well, I'm doing the work, so I get to make the decisions here, no?

> Absent the right conditions, perhaps it is best focus limited porter and 
> developer effort on patching only those packages that are really required.

Thanks, but I tried that and it doesn't work. I don't want to continue spending
hours on trying to figure out how to fix alignment problems and then maybe send
an email here and there to just never get an answer.

You're somehow implying that I'm requesting this change because I'm just lazy.

Adrian

-- 
 .''`.  John Paul Adrian Glaubitz
: :' :  Debian Developer
`. `'   Physicist
  `-    GPG: 62FF 8A75 84E0 2956 9546  0006 7426 3B37 F5B5 F913

Reply via email to