Hi,
Before anything else, let me CC Andrius and Efraim.
I'll try to digest this slowly.
On 2025-09-02 20:12, Stefan wrote:
Hi!
You may heard about some tries from me to bootstrap GCC. This is now
working for x86_64¹. There is a possibility that not much work is
needed to get this working for more architectures as well.
I’d like to offer a lot of fixes and patches to GNU Mes 0.27², which
enable to compile an upstream TCC form 2025-05-28 with minor fixes,
mostly because of issues in NYACC when parsing macros. Ekaitz, is there
a chance that you could try to build this TCC on RISC-V?
Jan, I’d be happy to start a discussion with you on how to contribute
these patches to GNU Mes.
I also found and fixed three problems with awk from GNU Gash-Utils³
while using it for more packages on the way to GCC. Timothy, maybe you
like to take a look?
The only binary blob in use is the pre-built Guile. Maybe I’m cheating,
but I use (default-guile) at the very beginning to build a Bootar
package and to get the pre-built Guile. From there on this pre-built
Guile is used to start over and build Bootar again, then Gash and
further. I think (default-guile) is in use anyway, so why should we
trust even more binary blobs? I’m interested in your opinions on this.
Nearly all packages in the chain⁴ are up-to-date, I avoided old versions
as much as possible. Whenever troubles with early packages like
Gash-Utils got too limiting, I added the original package like GNU sed.
It could make sense to move some packages like GNU Tar up the chain to
benefit from a speed improvement. To prevent conflicts with existing
package names I’m currently using upper-case package names with a
bootstrap suffix.
Maxim, I’m sorry for this late “reply”. The remaining effort to get it
into this state was more than I guessed. Unfortunately I did not look
yet into your code. My next step from here should be another GCC 15
making use of the GNU C Library.
I’d be happy to get some feedback.
Bye
Stefan
¹
<https://git.pub.solar/stefan/embedded-channel/src/branch/main/gcc-bootstrap.scm>
²
<https://git.pub.solar/stefan/embedded-channel/src/commit/597fcbec2332c7b1f9a568ba4ccf53a12384d8ac/gcc-bootstrap.scm#L743>
³
<https://git.pub.solar/stefan/embedded-channel/src/commit/597fcbec2332c7b1f9a568ba4ccf53a12384d8ac/gcc-bootstrap.scm#L390>
⁴ BOOTAR@1b
GUILE-bootstrap@2
BOOTAR-bootstrap@1b
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
TCC-bootstrap0.9.28rc-2025-05-28
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
LD-WRAPPER-static-bootstrap@0
[email protected]
[email protected]
[email protected]
LD-WRAPPER-bootstrap@0
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]