Received: from magnesium.8pit.net (magnesium.8pit.net [45.76.88.171]) by nld3-dev1.alpinelinux.org (Postfix) with ESMTPS id 45BE2780784 for <~alpine/devel@lists.alpinelinux.org>; Wed, 24 Nov 2021 08:22:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; s=opensmtpd; bh=Ki//QXYwqY DF2KYthc0L9e4wcueN30LEihhejLhIaeQ=; h=in-reply-to:references:from: subject:to:date; d=soeren-tempel.net; b=cUiqNN4Zmav7/+2EsiO73OY69bosPE pwHQEM12Rlx7G3hXcdddsHXDTst61EpMi26TKaxEgKxi9QRCDU8ixN6m7Wop1FxfSe2DfR G9nEClV787c8O6OkDLWeUSggT2nx4YSs6k6ksMNFjgp1RwLOgwTdR8EHRbUgisQJ11qJo5 c= Received: from localhost (ip5f5ae01d.dynamic.kabel-deutschland.de [95.90.224.29]) by magnesium.8pit.net (OpenSMTPD) with ESMTPSA id 7db95f15 (TLSv1.3:AEAD-AES256-GCM-SHA384:256:YES) for <~alpine/devel@lists.alpinelinux.org>; Wed, 24 Nov 2021 09:22:02 +0100 (CET) Date: Wed, 24 Nov 2021 09:21:57 +0100 To: ~alpine/devel@lists.alpinelinux.org Subject: Re: Thoughts on self-hosting compilers in Alpine From: =?UTF-8?Q?S=C3=B6ren?= Tempel References: <33KG0XO61I4IL.2Z7RTAZ5J3SY6@8pit.net> <20211122135336.4f23002c@vostro> In-Reply-To: <20211122135336.4f23002c@vostro> Message-Id: <25NDCA56CEJST.3KSBK3JLZFOCL@8pit.net> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Timo Teras wrote: > So there used to be separate go-bootstrap package which enabled > bootstrapping with C-compiler, but that seems to have been removed in > commit 895fcea724edcb357cd2b0da3b64d36155b159d4. This was the latest go > that did not require go to build. Correct, I was the maintainer of this package. As discussed in this ML thread, bootstrapping via Go 1.4 (as previously packaged by go-bootstrap) does not work with architectures that are not supported by the 1.4 release (e.g. riscv64 or ppc64le). For this reason, I added a package for gcc-go in commit b93b0b134f7d10720a4359579ff4f55575ac90e3. > I am not sure if it would be possible to bootstrap go with gcc-go? But > there might exist also some other paths. Yes, that should be possible and that's exactly what I would like to do for Go. I just haven't gotten around to fixing all the minor issues with the gcc-go based bootstrap process yet. > But as discussed in the thread, it seems each compiler has unique > requirements on how to bootstrap it. Granted, this is getting painful > as the number of self-dependent programming languages increase. And for > some language full bootstrap just is not feasible which makes things > quite annoying. Right, I would just like to make the bootstrap process transparent. So for example, just by looking at community/go/APKBUILD it is entirely unclear how Go was bootstrapped initially for the riscv64 or ppc64le architecture. Greetings, S=C3=B6ren