From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id A195E138334 for ; Tue, 24 Jul 2018 23:07:43 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id CEEFFE0866; Tue, 24 Jul 2018 23:07:37 +0000 (UTC) Received: from smtp.gentoo.org (dev.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 523D8E0801 for ; Tue, 24 Jul 2018 23:07:37 +0000 (UTC) Received: from symphony.aura-online.co.uk (154.189.187.81.in-addr.arpa [81.187.189.154]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: chewi) by smtp.gentoo.org (Postfix) with ESMTPSA id A293733D3CF for ; Tue, 24 Jul 2018 23:07:35 +0000 (UTC) Date: Wed, 25 Jul 2018 00:07:16 +0100 From: James Le Cuirot To: gentoo-dev Subject: [gentoo-dev] [arm17] Background to ARM 17.0 profile migration Message-ID: <20180725000716.6a31824e@symphony.aura-online.co.uk> X-Mailer: Claws Mail 3.16.0 (GTK+ 2.24.32; x86_64-pc-linux-gnu) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-dev@lists.gentoo.org Reply-to: gentoo-dev@lists.gentoo.org MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; boundary="Sig_/IY2r0P9LlWiaufD7rtEMtR9"; protocol="application/pgp-signature" X-Archives-Salt: 01df28be-d94a-4ff8-8003-a5a7f0971212 X-Archives-Hash: b55b141e76ae1e08279d6f5b33be8151 --Sig_/IY2r0P9LlWiaufD7rtEMtR9 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Hello all, For those who aren't already aware, there is a triplet (CHOST) change planned for the as-yet unreleased 17.0 profiles for ARM, affecting armv6j and armv7a hardfloat systems. Basically, the triplet will change from armv7a-hardfloat-linux-gnueabi to armv7a-unknown-linux-gnueabihf or similar. I won't bore you with the full history behind this but it is to fall in line with what the rest of the community are now using. Red Hat is one notable exception but they don't differentiate between hardfloat and softfp in their triplet at all. slyfox has rightly asked why we should put users through the trouble of migrating when GCC doesn't care either way when you build it; you have to explicitly request hardfloat using --with-float=3Dhard as we do in toolchain.eclass. The main reason is LLVM. mgorny valiantly tried to fix LLVM to support our triplets but while upstream were somewhat supportive of this effort, he ultimately gave up because it proved too difficult. I have also seen issues arising from our unusual triplets when cross-compiling. There seems little point in fighting the trend. Of course, few users cross-compile and few ARM users have LLVM installed. I myself do not have it on my system. I therefore suggest a compromise. In the news item announcing this, rather than stating that users *must* migrate, not that we could force them to anyway, we will state that users should migrate but they can choose not to if they don't need LLVM and we will continue to support this to some extent. My initial migration guide was rather scary as changing CHOST is never easy and I was concerned that such a guide was never going to be sufficiently palatable for a news item. I didn't expect to be able to script it up but I gave it a shot and I'm actually quite happy with the result. I've run it on the newest (but quite old) glibc stage3, the newest musl stage3, and the newest glibc hardened stage3. All went well. It aborts on failure but allows you to rerun it if necessary and it will skip the time-consuming builds that have already completed. Please give it a try if you can and leave some feedback. Obviously we will need new stage tarballs so that new systems can start with the new triplet. The official arm stage tarballs are ancient and I have already prepared new stages for armv7a/glibc and armv6j/musl. veremitz has been busy building others. The RelEng team has agreed to put these up once the profiles go live. Hopefully regular stage auto-builds will return in the near future. I will now follow up this mail with others tagged [arm17] containing: 1. The news item (including a link to the migration script) 2. A toolchain-funcs.eclass patch 3. A crossdev patch Catalyst will need updating too but I will leave it to the RelEng team to decide whether they want to update the existing specs or create new ones. Cheers, --=20 James Le Cuirot (chewi) Gentoo Linux Developer --Sig_/IY2r0P9LlWiaufD7rtEMtR9 Content-Type: application/pgp-signature Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQKTBAEBCgB9FiEEUo3mvYaRpDkf2i7UIcYyEpxtfeQFAltXsSRfFIAAAAAALgAo aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDUy OERFNkJEODY5MUE0MzkxRkRBMkVENDIxQzYzMjEyOUM2RDdERTQACgkQIcYyEpxt feQbRQ//b2VjQBIDvDal+5B2qAmPpOcjUVwQgATOPx/zZwACf/JDIPAqK+H8Adze Tgy6V7HlAE+mfBhqXr73y1tyCHcZTQ2T7upAlvERkpsxi6hVl0+4j+RyGeNGVitK 9uQjGMqUGUf/Cr+AOJhJA1nQBPPEept1W2UNJMJn3qYJ/nVSKFrMeonvr9msCzS6 geQ+I+m+PXgfjbfpvkjiw6SjrP67BKWxzwKvDWPvUyUkOfMQz4W3Pmxgz4mJ4lxX tmaHFAS+MuR8VZFmIKfocBzoXvioxqG3a9ptvTHHdfG5VaqrHRiD6HsEhUY+JqwX CfiEtU2QHFt87wDFGVrXVSOvN+b4dXQc4VT/OmPYS528KOrbGn6ECAU8wbmuVlY9 mo9YCJ/mtPnVrqz7qK17AKjShJ1pEqJ86s3ywYsx6benLwhwWlYnQmmYjlleIcGf xD4Ce8Ms8KNk4sONhwBrcIwB09Ar/6zY/BlMUEqjLwmTCI6B8iK4k42Zrn4jz4JK SE2PWMqrnUA71VwlDxv315ufyA5ylKV7dHGe0tpfRP1TZTVOHGnkgMrkw9ccG7R0 eYA+tsS4dSmQI9Fgusq3PitMrs9PUp6qJOcJej6JckIugJwcuLory3If1W6TIT9y phpv2BY6rVSizx5h/W6vKIRUQp8jPzL5T13nPjduJjFIPNZ/g+w= =31eJ -----END PGP SIGNATURE----- --Sig_/IY2r0P9LlWiaufD7rtEMtR9--