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 8C506139694 for ; Thu, 29 Jun 2017 21:20:21 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 859D821C07D; Thu, 29 Jun 2017 21:20:15 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 2430521C06C for ; Thu, 29 Jun 2017 21:20:15 +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 99EFB3416AB for ; Thu, 29 Jun 2017 21:20:12 +0000 (UTC) Date: Thu, 29 Jun 2017 22:19:58 +0100 From: James Le Cuirot To: gentoo-dev@lists.gentoo.org Subject: Re: [gentoo-dev] [PATCH] Profile-enforced big-endian USE flag Message-ID: <20170629221958.06c68bae@symphony.aura-online.co.uk> In-Reply-To: <20170628232903.0230bc8e@symphony.aura-online.co.uk> References: <20170627234459.5bcb0d1b@symphony.aura-online.co.uk> <20170628232903.0230bc8e@symphony.aura-online.co.uk> X-Mailer: Claws Mail 3.15.0-dirty (GTK+ 2.24.31; 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_/wWYJm1qfMsinFyMA4Bxlkkr"; protocol="application/pgp-signature" X-Archives-Salt: 7dd4f4b1-5cb3-4fc8-b3b7-a1c5a4e4591e X-Archives-Hash: 234a993f881b7cdf850c5aa00087b1a8 --Sig_/wWYJm1qfMsinFyMA4Bxlkkr Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable On Wed, 28 Jun 2017 23:29:03 +0100 James Le Cuirot wrote: > > On Tue, Jun 27, 2017 at 6:44 PM, James Le Cuirot wro= te: =20 > > > I am therefore proposing a new global big-endian flag. This could be > > > masked by default and unmasked + forced in the relevant profiles under > > > arch. I will apply this according to the mapping defined in tc-endian= of > > > toolchain-funcs.eclass. =20 >=20 > I've just been putting the patch together. I made it slightly simpler > by masking *and* forcing it by default so that it only needs to be > unmasked were necessary. Feedback seems positive so here is the patch. I'll apply it late next week as I don't need it immediately and I will be away until then. --- =46rom e6aaee518b5e7eab735116a2ea57d538a8e26c19 Mon Sep 17 00:00:00 2001 From: James Le Cuirot Date: Thu, 29 Jun 2017 22:11:49 +0100 Subject: [PATCH] profiles: Add profile-enforced global big-endian USE flag The flag is forced and masked by default and then unmasked where necessary. Note that there are some big endian host values listed in tc-endian() that we do not have profiles for. --- profiles/arch/alpha/use.mask | 4 ++++ profiles/arch/arm64/big-endian/use.mask | 6 ++++++ profiles/arch/base/use.force | 6 ++++++ profiles/arch/base/use.mask | 4 ++++ profiles/arch/hppa/use.mask | 4 ++++ profiles/arch/m68k/use.mask | 7 +++++++ profiles/arch/mips/mipsel/use.mask | 6 ++++++ profiles/arch/mips/use.mask | 4 ++++ profiles/arch/powerpc/ppc64/64le/use.mask | 4 ++++ profiles/arch/powerpc/use.mask | 7 +++++++ profiles/arch/s390/use.mask | 7 +++++++ profiles/arch/sparc/use.mask | 4 ++++ profiles/use.desc | 3 ++- 13 files changed, 65 insertions(+), 1 deletion(-) create mode 100644 profiles/arch/arm64/big-endian/use.mask create mode 100644 profiles/arch/base/use.force create mode 100644 profiles/arch/mips/mipsel/use.mask diff --git a/profiles/arch/alpha/use.mask b/profiles/arch/alpha/use.mask index d488fe8a09f4..b17afe9d9d4d 100644 --- a/profiles/arch/alpha/use.mask +++ b/profiles/arch/alpha/use.mask @@ -1,6 +1,10 @@ # Copyright 1999-2017 Gentoo Foundation. # Distributed under the terms of the GNU General Public License, v2 =20 +# James Le Cuirot (29 Jun 2017) +# Unmask as this profile is big endian. +-big-endian + # Tobias Klausmann (03 March 2017) # There is no luajit support on alpha. Bugs #554376, #608322. luajit diff --git a/profiles/arch/arm64/big-endian/use.mask b/profiles/arch/arm64/= big-endian/use.mask new file mode 100644 index 000000000000..0a4af0711f5c --- /dev/null +++ b/profiles/arch/arm64/big-endian/use.mask @@ -0,0 +1,6 @@ +# Copyright 1999-2017 Gentoo Foundation. +# Distributed under the terms of the GNU General Public License, v2 + +# James Le Cuirot (29 Jun 2017) +# Unmask as this profile is big endian. +-big-endian diff --git a/profiles/arch/base/use.force b/profiles/arch/base/use.force new file mode 100644 index 000000000000..7f213b9dd017 --- /dev/null +++ b/profiles/arch/base/use.force @@ -0,0 +1,6 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +# James Le Cuirot (29 Jun 2017) +# Forced and masked by default. Unmask where necessary. +big-endian diff --git a/profiles/arch/base/use.mask b/profiles/arch/base/use.mask index 1a4a39cefc13..2ea1fb3d89fa 100644 --- a/profiles/arch/base/use.mask +++ b/profiles/arch/base/use.mask @@ -1,6 +1,10 @@ # Copyright 1999-2017 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 =20 +# James Le Cuirot (29 Jun 2017) +# Forced and masked by default. Unmask where necessary. +big-endian + # Sven Wegener (31 May 2017) # libvirt is only supported on specific architectures libvirt diff --git a/profiles/arch/hppa/use.mask b/profiles/arch/hppa/use.mask index 7361e2c52af2..bd158162a449 100644 --- a/profiles/arch/hppa/use.mask +++ b/profiles/arch/hppa/use.mask @@ -3,6 +3,10 @@ # NOTE: When masking a USE flag due to missing keywords, please file a key= word # request bug for the hppa arch. =20 +# James Le Cuirot (29 Jun 2017) +# Unmask as this profile is big endian. +-big-endian + # Andreas Sturmlechner (25 Feb 2017) # kwallet integration split from kde to distinct flag kwallet diff --git a/profiles/arch/m68k/use.mask b/profiles/arch/m68k/use.mask index aac0e46e97c2..646567111d56 100644 --- a/profiles/arch/m68k/use.mask +++ b/profiles/arch/m68k/use.mask @@ -1,6 +1,13 @@ +# Copyright 1999-2017 Gentoo Foundation. +# Distributed under the terms of the GNU General Public License, v2 + # Unmask the flag which corresponds to ARCH. -m68k =20 +# James Le Cuirot (29 Jun 2017) +# Unmask as this profile is big endian. +-big-endian + hardened =20 # Paul de Vrieze diff --git a/profiles/arch/mips/mipsel/use.mask b/profiles/arch/mips/mipsel= /use.mask new file mode 100644 index 000000000000..2a8cc7b0c76a --- /dev/null +++ b/profiles/arch/mips/mipsel/use.mask @@ -0,0 +1,6 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +# James Le Cuirot (29 Jun 2017) +# Remask as this profile is little endian. +big-endian diff --git a/profiles/arch/mips/use.mask b/profiles/arch/mips/use.mask index 09ac8ca4b2cc..6caff81617cb 100644 --- a/profiles/arch/mips/use.mask +++ b/profiles/arch/mips/use.mask @@ -4,6 +4,10 @@ # Unmask the flag which corresponds to ARCH. -mips =20 +# James Le Cuirot (29 Jun 2017) +# Unmask as this profile is big endian. +-big-endian + # Mart Raudsepp (27 May 2017) # media-libs/libmtp not tested mtp diff --git a/profiles/arch/powerpc/ppc64/64le/use.mask b/profiles/arch/powe= rpc/ppc64/64le/use.mask index 2419ed9b6428..b8ad07b24a5a 100644 --- a/profiles/arch/powerpc/ppc64/64le/use.mask +++ b/profiles/arch/powerpc/ppc64/64le/use.mask @@ -1,6 +1,10 @@ # Copyright 1999-2017 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 =20 +# James Le Cuirot (29 Jun 2017) +# Remask as this profile is little endian. +big-endian + # 2008/02/13 - Chris Gianelloni # Mask multilib, since we cannot use it. multilib diff --git a/profiles/arch/powerpc/use.mask b/profiles/arch/powerpc/use.mask index 6f993c6628c0..02e97b16f06d 100644 --- a/profiles/arch/powerpc/use.mask +++ b/profiles/arch/powerpc/use.mask @@ -1,6 +1,13 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + # PPC Specific use flags # =20 +# James Le Cuirot (29 Jun 2017) +# Forced and masked by default. Unmask where necessary. +big-endian + # Matt Turner (24 Mar 2017) # virtual/opencl is not keyworded opencl diff --git a/profiles/arch/s390/use.mask b/profiles/arch/s390/use.mask index 91dda10d0408..18637daa1445 100644 --- a/profiles/arch/s390/use.mask +++ b/profiles/arch/s390/use.mask @@ -1,9 +1,16 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + # Unmask the flag which corresponds to ARCH. -s390 =20 # Unmask ABI flags for this arch. -abi_s390_32 =20 +# James Le Cuirot (29 Jun 2017) +# Unmask as this profile is big endian. +-big-endian + # Stuff we don't want/not tested pbins R diff --git a/profiles/arch/sparc/use.mask b/profiles/arch/sparc/use.mask index be19f2f7ed54..0d3e7049cf28 100644 --- a/profiles/arch/sparc/use.mask +++ b/profiles/arch/sparc/use.mask @@ -6,6 +6,10 @@ =20 # This file contains a list of useflags that cannot be used on sparc. =20 +# James Le Cuirot (29 Jun 2017) +# Unmask as this profile is big endian. +-big-endian + # Andreas Sturmlechner (25 Feb 2017) # kwallet integration split from kde to distinct flag kwallet diff --git a/profiles/use.desc b/profiles/use.desc index 127c9935fa2a..9501b38fe33d 100644 --- a/profiles/use.desc +++ b/profiles/use.desc @@ -1,4 +1,4 @@ -# Copyright 1999-2015 Gentoo Foundation +# Copyright 1999-2017 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 =20 # Keep them sorted @@ -30,6 +30,7 @@ bash-completion - Enable bash-completion support bcmath - Add support for libbcmath berkdb - Add support for sys-libs/db (Berkeley DB for MySQL) bidi - Enable bidirectional language support +big-endian - Big-endian toolchain support bindist - Flag to enable or disable options for prebuilt (GRP) packages (e= g. due to licensing issues) blas - Add support for the virtual/blas numerical library bluetooth - Enable Bluetooth Support --=20 2.13.1 --Sig_/wWYJm1qfMsinFyMA4Bxlkkr Content-Type: application/pgp-signature Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQKTBAEBCgB9FiEEUo3mvYaRpDkf2i7UIcYyEpxtfeQFAllVbv9fFIAAAAAALgAo aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDUy OERFNkJEODY5MUE0MzkxRkRBMkVENDIxQzYzMjEyOUM2RDdERTQACgkQIcYyEpxt feSDYA//QsaEmWVrhaOxSTaaR4hZHZv9w6qdBKAWwuTQLszxXF2ok3ri5zSL3LQJ aOB+zfQceLC2d/OxtPziEyj8yJWBGgslykcGfKAwen4q1kjfxwPZEu69ggolKv29 ctspvHghQKTUZUlrkWefEhrkswT0IN0QJ3lSbsNG8/BQzAPivQP0vHzFd1wfHcSf wAtrlWx8PWLu0/fgbfLC+AeJwdj1x8yoCC4X2t8+Vw+Aj7Y8Tz8rzmbKqUzjpyBW j6ZRRQ2n6Yb2esGT4LWBlt534fHDVQRUgUA8DhLRH9TvcwNC+CJuMfb6227AuDQj ObP3U+JPsYYyDgqpDGDllJmEqy01MFKCxNw7lyddamkWtpIw4h/GSTQDZVfR/iIK g2CeLFQjYWTXnQq7vhc36s0RbDcI0UIXzKe2tXaMrqyvWH8SiKnRusFNbKBi82cu InE6IAzJurEookRNd3uwP75Uh9k+BwwuCCBLuaf1FhZYmwU/vx2EG6f26RiC0/4y jqsZUaCBgUiW1FjtqYTGysa2u5MvqoSZJdOg3EPGCLzmQk8t283FPymsLFKzUZwe Yq8t5bqQxc0ThuiJsOnVB64sgb6FDM/FXUNYnAcq7Qiprdv14bNU0J0VnvShq/8B UqSv79xFJt9lbBaJgVc7oU3CdHJAXykmjN5nCMBWpIJKgtgM2V8= =lCcb -----END PGP SIGNATURE----- --Sig_/wWYJm1qfMsinFyMA4Bxlkkr--