On Thu, Jun 29, 2017 at 2:19 PM, James Le Cuirot <ch...@gentoo.org> wrote: > On Wed, 28 Jun 2017 23:29:03 +0100 > James Le Cuirot <ch...@gentoo.org> wrote: > >> > On Tue, Jun 27, 2017 at 6:44 PM, James Le Cuirot <ch...@gentoo.org> wrote: >> > > 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. >> >> 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. > > --- > > From e6aaee518b5e7eab735116a2ea57d538a8e26c19 Mon Sep 17 00:00:00 2001 > From: James Le Cuirot <ch...@gentoo.org> > 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 > > +# James Le Cuirot <ch...@gentoo.org> (29 Jun 2017) > +# Unmask as this profile is big endian. > +-big-endian
No. Alpha is little endian. > + > # Tobias Klausmann <klaus...@gentoo.org> (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 <ch...@gentoo.org> (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 <ch...@gentoo.org> (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 > > +# James Le Cuirot <ch...@gentoo.org> (29 Jun 2017) > +# Forced and masked by default. Unmask where necessary. > +big-endian > + > # Sven Wegener <swege...@gentoo.org> (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 > keyword > # request bug for the hppa arch. > > +# James Le Cuirot <ch...@gentoo.org> (29 Jun 2017) > +# Unmask as this profile is big endian. > +-big-endian > + > # Andreas Sturmlechner <ast...@gentoo.org> (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 > > +# James Le Cuirot <ch...@gentoo.org> (29 Jun 2017) > +# Unmask as this profile is big endian. > +-big-endian > + > hardened > > # Paul de Vrieze <pau...@gentoo.org> > 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 <ch...@gentoo.org> (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 > > +# James Le Cuirot <ch...@gentoo.org> (29 Jun 2017) > +# Unmask as this profile is big endian. > +-big-endian I'm not sure if this one is correct. arch/mips/mipsel's 'parent' file contains '..' I think if you re-mask big-endian in arch/mips/mipsel it'll work, and that seems like the best way to solve it. Other than that, the rest looks correct.