Re: Toybox make root no longer works as expected

Rob Landley <[email protected]> Sun, 12 Jul 2026 03:02:06 -0500
Newsgroups org.kernel.vger.linux-sh
Message-ID <[email protected]>
On 7/12/26 01:00, D. Jeff Dionne wrote:
> I will try and force myself to find time to help with this.
> 
> I noticed a few days ago that some very old targets I need to work on are having some bitrot with even new 9.4.0 toolchains.
> 
> Rob, can you do me a favour and extract our GCC patch stack for all the sh2 flavours we support cleanly from the build scripts?  All those targets will need forward porting.

For gcc-9.4 there's this in musl-cross-make:

https://github.com/richfelker/musl-cross-make/blob/master/patches/gcc-9.4.0/0007-j2.diff

https://github.com/richfelker/musl-cross-make/blob/master/patches/gcc-9.4.0/0020-sh-fdpic-pr114641.diff

And then binutils-2.44 has:

https://github.com/richfelker/musl-cross-make/blob/master/patches/binutils-2.44/0001-j2.diff

https://github.com/richfelker/musl-cross-make/blob/master/patches/binutils-2.44/0002-sh-fdpic-pr31619.diff

(The second of which is apparently a fix for 
https://sourceware.org/bugzilla/show_bug.cgi?id=31619 and the fix was 
bigger in 2.33.1, I dunno if the last hunk was dropped because it was no 
longer needed or because it didn't apply...)

Then our build scripts add a specs patch:

https://codeberg.org/J-Core/librelane-vhdl-build/src/branch/master/01-toolchains.sh#L25

And you have a patch to add __attribute__ naked:

https://codeberg.org/J-Core/librelane-vhdl-build/src/branch/master/01-toolchains.sh#L212

And then here's the NOMULT patch (which is not properly #ifdeffed but 
chops out stuff when we build a second instance of the compiler, for the 
j1-nomult target):

https://codeberg.org/J-Core/librelane-vhdl-build/src/branch/master/01-toolchains.sh#L332

That's 7 patches in total, 6 of which apply always and the 7th applies 
only when we want to build a j1-nomult compiler. (Cleanup discussion 
stalled because we never worked out what config tuple we wanted to 
specify it, do we need to make it multilib, etc.)

Rob