• [gentoo-dev] [PATCH] profiles: create features/big-endian

    From matoro_mailinglist_gentoo-dev@mator@21:1/5 to All on Fri Mar 31 21:30:02 2023
    From: Matoro Mahri <matoro@users.noreply.github.com>

    Using this in the future to dump issues which specifically affect
    big-endian platforms to avoid duplicated masks across the entire profile
    tree. This is for masks which are necessary due to problems which arise
    solely due to endian correctness. Solving a problem which causes one of
    these masks does not guarantee that the package will automatically work
    on all big-endian platforms, but it is a prerequisite to work on any of
    them.

    Please be cautious about adding things here as it will likely affect a
    platform that has not been tested on. A good heuristic I use is either:

    1) works on ppc64le and not on ppc64, or
    2) work on 3 different little-endian platforms and not on 3 different
    big-endian platforms, and the BE platforms fail in the same way

    Bug: https://bugs.gentoo.org/896138
    Signed-off-by: Matoro Mahri <matoro@users.noreply.github.com>
    ---
    profiles/arch/arm64/big-endian/parent | 1 +
    profiles/arch/hppa/package.mask | 5 -----
    profiles/arch/hppa/parent | 1 +
    profiles/arch/m68k/package.mask | 7 -------
    profiles/arch/m68k/parent | 1 +
    profiles/arch/mips/mips64/parent | 1 +
    profiles/arch/mips/mipsel/package.mask | 7 -------
    profiles/arch/mips/o32/parent | 1 +
    profiles/arch/mips/package.mask | 5 -----
    profiles/arch/powerpc/package.mask | 7 -------
    profiles/arch/powerpc/ppc32/parent | 1 +
    profiles/arch/powerpc/ppc64/64le/package.mask | 7 -------
    profiles/arch/powerpc/ppc64/64ul/parent | 1 +
    profiles/arch/s390/package.mask | 7 -------
    profiles/arch/s390/parent
  • From Sam James@21:1/5 to matoro_mailinglist_gentoo-dev@mator on Fri Mar 31 22:10:01 2023
    matoro_mailinglist_gentoo-dev@matoro.tk writes:

    From: Matoro Mahri <matoro@users.noreply.github.com>

    Using this in the future to dump issues which specifically affect
    big-endian platforms to avoid duplicated masks across the entire profile tree. This is for masks which are necessary due to problems which arise solely due to endian correctness. Solving a problem which causes one of these masks does not guarantee that the package will automatically work
    on all big-endian platforms, but it is a prerequisite to work on any of
    them.

    Please be cautious about adding things here as it will likely affect a platform that has not been tested on. A good heuristic I use is either:

    1) works on ppc64le and not on ppc64, or
    2) work on 3 different little-endian platforms and not on 3 different
    big-endian platforms, and the BE platforms fail in the same way

    Thanks, I like this. Can you add a README in, like we do for wd40,
    explaining what you did wrt criteria/heuristics?

    (It might be worth then referencing it in package.mask).

    I've been wanting to do this for a while and I'm pretty sold on it
    being a good idea.


    Bug: https://bugs.gentoo.org/896138
    Signed-off-by: Matoro Mahri <matoro@users.noreply.github.com>
    ---
    profiles/arch/arm64/big-endian/parent | 1 +
    profiles/arch/hppa/package.mask | 5 -----
    profiles/arch/hppa/parent | 1 +
    profiles/arch/m68k/package.mask | 7 -------
    profiles/arch/m68k/parent | 1 +
    profiles/arch/mips/mips64/parent | 1 +
    profiles/arch/mips/mipsel/package.mask | 7 -------
    profiles/arch/mips/o32/parent | 1 +
    profiles/arch/mips/package.mask | 5 -----
    profiles/arch/powerpc/package.mask | 7 -------
    profiles/arch/powerpc/ppc32/parent | 1 +
    profiles/arch/powerpc/ppc64/64le/package.mask | 7 -------
    profiles/arch/powerpc/ppc64/64ul/parent | 1 +
    profiles/arch/s390/package.mask | 7 -------
    profiles/arch/s390/parent | 1 +
    profiles/arch/sparc/package.mask | 5 -----
    profiles/arch/sparc/parent | 1 +
    profiles/features/big-endian/eapi | 1 +
    profiles/{arch/arm64 => features}/big-endian/package.mask | 2 ++
    19 files changed, 12 insertions(+), 50 deletions(-)
    delete mode 100644 profiles/arch/m68k/package.mask
    delete mode 100644 profiles/arch/mips/mipsel/package.mask
    delete mode 100644 profiles/arch/s390/package.mask
    create mode 100644 profiles/features/big-endian/eapi
    rename profiles/{arch/arm64 => features}/big-endian/package.mask (87%)

    diff --git a/profiles/arch/arm64/big-endian/parent b/profiles/arch/arm64/big-endian/parent
    index f3229c5b9876..3ed68f2e0b7f 100644
    --- a/profiles/arch/arm64/big-endian/parent
    +++ b/profiles/arch/arm64/big-endian/parent
    @@ -1 +1,2 @@
    ..
    +../../../features/big-endian
    diff --git a/profiles/arch/hppa/package.mask b/profiles/arch/hppa/package.mask
    index fcbff238384d..f60c79116aa6 100644
    --- a/profiles/arch/hppa/package.mask
    +++ b/profiles/arch/hppa/package.mask
    @@ -5,11 +5,6 @@
    # Needs explicit porting to each platform (bug 894078#c6)
    dev-python/py-cpuinfo

    -# matoro <matoro_gentoo@matoro.tk> (2022-03-20)
    -# Broken on big-endian (#861710)
    -# https://github.com/trendmicro/tlsh/issues/131
    -dev-libs/tlsh
    -
    # Sam James <sam@gentoo.org> (2023-03-10)
    # Fails to build on HPPA w/ sys-kernel/linux-headers-6.2:
    # https://github.com/strace/strace/issues/241
    diff --git a/profiles/arch/hppa/parent b/profiles/arch/hppa/parent
    index e234bf836e61..501b677cef63 100644
    --- a/profiles/arch/hppa/parent
    +++ b/profiles/arch/hppa/parent
    @@ -1,2 +1,3 @@
    ../base
    ../../features/wd40
    +../../features/big-endian
    diff --git a/profiles/arch/m68k/package.mask b/profiles/arch/m68k/package.mask
    deleted file mode 100644
    index 8f83c7d52c61..000000000000
    --- a/profiles/arch/m68k/package.mask
    +++ /dev/null
    @@ -1,7 +0,0 @@
    -# Copyright 2023 Gentoo Authors
    -# Distributed under the terms of the GNU General Public License v2
    -
    -# matoro <matoro_gentoo@matoro.tk> (2022-03-20)
    -# Broken on big-endian (#861710)
    -# https://github.com/trendmicro/tlsh/issues/131
    -dev-libs/tlsh
    diff --git a/profiles/arch/m68k/parent b/profiles/arch/m68k/parent
    index e234bf836e61..501b677cef63 100644
    --- a/profiles/arch/m68k/parent
    +++ b/profiles/arch/m68k/parent
    @@ -1,2 +1,3 @@
    ../base
    ../../features/wd40
    +../../features/big-endian
    diff --git a/profiles/arch/mips/mips64/parent b/profiles/arch/mips/mips64/parent
    index f3229c5b9876..3ed68f2e0b7f 100644
    --- a/profiles/arch/mips/mips64/parent
    +++ b/profiles/arch/mips/mips64/parent
    @@ -1 +1,2 @@
    ..
    +../../../features/big-endian
    diff --git a/profiles/arch/mips/mipsel/package.mask b/profiles/arch/mips/mipsel/package.mask
    deleted file mode 100644
    index e3e194c6e85c..000000000000
    --- a/profiles/arch/mips/mipsel/package.mask
    +++ /dev/null
    @@ -1,7 +0,0 @@
    -# Copyright 2023 Gentoo Authors
    -# Distributed under the terms of the GNU General Public License v2
    -
    -# matoro <matoro_gentoo@matoro.tk> (2022-03-20)
    -# Broken on big-endian (#861710)
    -# https://github.com/trendmicro/tlsh/issues/131
    --dev-libs/tlsh
    diff --git a/profiles/arch/mips/o32/parent b/profiles/arch/mips/o32/parent index f3229c5b9876..3ed68f2e0b7f 100644
    --- a/profiles/arch/mips/o32/parent
    +++ b/profiles/arch/mips/o32/parent
    @@ -1 +1,2 @@
    ..
    +../../../features/big-endian
    diff --git a/profiles/arch/mips/package.mask b/profiles/arch/mips/package.mask
    index 68f2756c44fb..d666e9ab084f 100644
    --- a/profiles/arch/mips/package.mask
    +++ b/profiles/arch/mips/package.mask
    @@ -1,11 +1,6 @@
    # Copyright 2006-2023 Gentoo Authors
    # Distributed under the terms of the GNU General Public License v2

    -# matoro <matoro_gentoo@matoro.tk> (2022-03-20)
    -# Broken on big-endian (#861710)
    -# https://github.com/trendmicro/tlsh/issues/131
    -dev-libs/tlsh
    -
    # Mask pam_ldap and nss_ldap - openldap dep missing.
    sys-auth/pam_ldap
    sys-auth/nss_ldap
    diff --git a/profiles/arch/powerpc/package.mask b/profiles/arch/powerpc/package.mask
    index 5ecdf5968afa..09ee3b610ae3 100644
    --- a/profiles/arch/powerpc/package.mask
    +++ b/profiles/arch/powerpc/package.mask
    @@ -1,13 +1,6 @@
    # Copyright 1999-2023 Gentoo Authors
    # Distributed under the terms of the GNU General Public License v2

    -# matoro <matoro_gentoo@matoro.tk> (2022-03-20)
    -# Broken on big-endian (#861710)
    -# https://github.com/trendmicro/tlsh/issues/131
    -dev-libs/tlsh
    -dev-python/tlsh
    -dev-util/diffoscope
    -
    # Georgy Yakovlev <gyakovlev@gentoo.org> (2020-09-22)
    # criu does not work on ppc64be and ppc32
    sys-process/criu
    diff --git a/profiles/arch/powerpc/ppc32/parent b/profiles/arch/powerpc/ppc32/parent
    index f3229c5b9876..3ed68f2e0b7f 100644
    --- a/profiles/arch/powerpc/ppc32/parent
    +++ b/profiles/arch/powerpc/ppc32/parent
    @@ -1 +1,2 @@
    ..
    +../../../features/big-endian
    diff --git a/profiles/arch/powerpc/ppc64/64le/package.mask b/profiles/arch/powerpc/ppc64/64le/package.mask
    index aa8fec70dd16..703c39a8fa69 100644
    --- a/profiles/arch/powerpc/ppc64/64le/package.mask
    +++ b/profiles/arch/powerpc/ppc64/64le/package.mask
    @@ -1,13 +1,6 @@
    # Copyright 1999-2023 Gentoo Authors
    # Distributed under the terms of the GNU General Public License v2

    -# matoro <matoro_gentoo@matoro.tk> (2022-03-20)
    -# Broken on big-endian (#861710)
    -# https://github.com/trendmicro/tlsh/issues/131
    --dev-libs/tlsh
    --dev-python/tlsh
    --dev-util/diffoscope
    -
    # Jimi Huotari <chiitoo@gentoo.org> (2023-01-11)
    # Requires media-libs/libva since 29.0.0, which is unmasked here.
    =media-video/obs-studio-29.0.0
    diff --git a/profiles/arch/powerpc/ppc64/64ul/parent b/profiles/arch/powerpc/ppc64/64ul/parent
    index f3229c5b9876..b088bfd7bf7b 100644
    --- a/profiles/arch/powerpc/ppc64/64ul/parent
    +++ b/profiles/arch/powerpc/ppc64/64ul/parent
    @@ -1 +1,2 @@
    ..
    +../../../../features/big-endian
    diff --git a/profiles/arch/s390/package.mask b/profiles/arch/s390/package.mask
    deleted file mode 100644
    index 8f83c7d52c61..000000000000
    --- a/profiles/arch/s390/package.mask
    +++ /dev/null
    @@ -1,7 +0,0 @@
    -# Copyright 2023 Gentoo Authors
    -# Distributed under the terms of the GNU General Public License v2
    -
    -# matoro <matoro_gentoo@matoro.tk> (2022-03-20)
    -# Broken on big-endian (#861710)
    -# https://github.com/trendmicro/tlsh/issues/131
    -dev-libs/tlsh
    diff --git a/profiles/arch/s390/parent b/profiles/arch/s390/parent
    index 7663f5297bb4..1360e0428bc8 100644
    --- a/profiles/arch/s390/parent
    +++ b/profiles/arch/s390/parent
    @@ -1,2 +1,3 @@
    ../../features/multilib
    ../base
    +../../features/big-endian
    diff --git a/profiles/arch/sparc/package.mask b/profiles/arch/sparc/package.mask
    index 467d775a6b12..538d5c80fc20 100644
    --- a/profiles/arch/sparc/package.mask
    +++ b/profiles/arch/sparc/package.mask
    @@ -1,11 +1,6 @@
    # Copyright 1999-2023 Gentoo Authors
    # Distributed under the terms of the GNU General Public License v2

    -# matoro <matoro_gentoo@matoro.tk> (2022-03-20)
    -# Broken on big-endian (#861710)
    -# https://github.com/trendmicro/tlsh/issues/131
    -dev-libs/tlsh
    -
    # matoro <matoro_gentoo@matoro.tk> (2023-03-07)
    # Fails tests disastrously. Present evidence of passing test suite
    # before removing, please.
    diff --git a/profiles/arch/sparc/parent b/profiles/arch/sparc/parent
    index eb001c6e8ab8..042786727c5b 100644
    --- a/profiles/arch/sparc/parent
    +++ b/profiles/arch/sparc/parent
    @@ -1 +1,2 @@
    ../base
    +../../features/big-endian
    diff --git a/profiles/features/big-endian/eapi b/profiles/features/big-endian/eapi
    new file mode 100644
    index 000000000000..7ed6ff82de6b
    --- /dev/null
    +++ b/profiles/features/big-endian/eapi
    @@ -0,0 +1 @@
    +5
    diff --git a/profiles/arch/arm64/big-endian/package.mask b/profiles/features/big-endian/package.mask
    similarity index 87%
    rename from profiles/arch/arm64/big-endian/package.mask
    rename to profiles/features/big-endian/package.mask
    index 8f83c7d52c61..0edd6a8fa129 100644
    --- a/profiles/arch/arm64/big-endian/package.mask
    +++ b/profiles/features/big-endian/package.mask
    @@ -5,3 +5,5 @@
    # Broken on big-endian (#861710)
    # https://github.com/trendmicro/tlsh/issues/131
    dev-libs/tlsh
    +dev-python/tlsh
    +dev-util/diffoscope


    --=-=-Content-Type: application/pgp-signature; name="signature.asc"

    -----BEGIN PGP SIGNATURE-----

    iOUEARYKAI0WIQQlpruI3Zt2TGtVQcJzhAn1IN+RkAUCZCc9k18UgAAAAAAuAChp c3N1ZXItZnByQG5vdGF0aW9ucy5vcGVucGdwLmZpZnRoaG9yc2VtYW4ubmV0MjVB NkJCODhERDlCNzY0QzZCNTU0MUMyNzM4NDA5RjUyMERGOTE5MA8cc2FtQGdlbnRv by5vcmcACgkQc4QJ9SDfkZDFzgD8Dc2A4s21zlX5BHiyn4jDOi0qWMpdhHDyAsa2 2cLaBRgA/2fKZEbD6FrFnDhQxtFyxnyFzbXnuo/7BSoeQqxCNIAO
    =4WYw
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From James Le Cuirot@21:1/5 to All on Fri Mar 31 22:50:01 2023
    On Fri, 2023-03-31 at 15:27 -0400, matoro_mailinglist_gentoo-dev@matoro.tk wrote:
    From: Matoro Mahri <matoro@users.noreply.github.com>

    Using this in the future to dump issues which specifically affect
    big-endian platforms to avoid duplicated masks across the entire profile tree. This is for masks which are necessary due to problems which arise solely due to endian correctness. Solving a problem which causes one of these masks does not guarantee that the package will automatically work
    on all big-endian platforms, but it is a prerequisite to work on any of
    them.

    Please be cautious about adding things here as it will likely affect a platform that has not been tested on. A good heuristic I use is either:

    1) works on ppc64le and not on ppc64, or
    2) work on 3 different little-endian platforms and not on 3 different
    big-endian platforms, and the BE platforms fail in the same way

    Bug: https://bugs.gentoo.org/896138
    Signed-off-by: Matoro Mahri <matoro@users.noreply.github.com>
    ---
    profiles/arch/arm64/big-endian/parent | 1 +
    profiles/arch/hppa/package.mask | 5 -----
    profiles/arch/hppa/parent | 1 +
    profiles/arch/m68k/package.mask | 7 -------
    profiles/arch/m68k/parent | 1 +
    profiles/arch/mips/mips64/parent | 1 +
    profiles/arch/mips/mipsel/package.mask | 7 -------
    profiles/arch/mips/o32/parent | 1 +
    profiles/arch/mips/package.mask | 5 -----
    profiles/arch/powerpc/package.mask | 7 -------
    profiles/arch/powerpc/ppc32/parent | 1 +
    profiles/arch/powerpc/ppc64/64le/package.mask | 7 -------
    profiles/arch/powerpc/ppc64/64ul/parent | 1 +
    profiles/arch/s390/package.mask | 7 -------
    profiles/arch/s390/parent | 1 +
    profiles/arch/sparc/package.mask | 5 -----
    profiles/arch/sparc/parent | 1 +
    profiles/features/big-endian/eapi | 1 +
    profiles/{arch/arm64 => features}/big-endian/package.mask | 2 ++
    19 files changed, 12 insertions(+), 50 deletions(-)
    delete mode 100644 profiles/arch/m68k/package.mask
    delete mode 100644 profiles/arch/mips/mipsel/package.mask
    delete mode 100644 profiles/arch/s390/package.mask
    create mode 100644 profiles/features/big-endian/eapi
    rename profiles/{arch/arm64 => features}/big-endian/package.mask (87%)

    diff --git a/profiles/arch/arm64/big-endian/parent b/profiles/arch/arm64/big-endian/parent
    index f3229c5b9876..3ed68f2e0b7f 100644
    --- a/profiles/arch/arm64/big-endian/parent
    +++ b/profiles/arch/arm64/big-endian/parent
    @@ -1 +1,2 @@
    ..
    +../../../features/big-endian
    diff --git a/profiles/arch/hppa/package.mask b/profiles/arch/hppa/package.mask
    index fcbff238384d..f60c79116aa6 100644
    --- a/profiles/arch/hppa/package.mask
    +++ b/profiles/arch/hppa/package.mask
    @@ -5,11 +5,6 @@
    # Needs explicit porting to each platform (bug 894078#c6)
    dev-python/py-cpuinfo

    -# matoro <matoro_gentoo@matoro.tk> (2022-03-20)
    -# Broken on big-endian (#861710)
    -# https://github.com/trendmicro/tlsh/issues/131
    -dev-libs/tlsh
    -
    # Sam James <sam@gentoo.org> (2023-03-10)
    # Fails to build on HPPA w/ sys-kernel/linux-headers-6.2:
    # https://github.com/strace/strace/issues/241
    diff --git a/profiles/arch/hppa/parent b/profiles/arch/hppa/parent
    index e234bf836e61..501b677cef63 100644
    --- a/profiles/arch/hppa/parent
    +++ b/profiles/arch/hppa/parent
    @@ -1,2 +1,3 @@
    ../base
    ../../features/wd40
    +../../features/big-endian
    diff --git a/profiles/arch/m68k/package.mask b/profiles/arch/m68k/package.mask
    deleted file mode 100644
    index 8f83c7d52c61..000000000000
    --- a/profiles/arch/m68k/package.mask
    +++ /dev/null
    @@ -1,7 +0,0 @@
    -# Copyright 2023 Gentoo Authors
    -# Distributed under the terms of the GNU General Public License v2
    -
    -# matoro <matoro_gentoo@matoro.tk> (2022-03-20)
    -# Broken on big-endian (#861710)
    -# https://github.com/trendmicro/tlsh/issues/131
    -dev-libs/tlsh
    diff --git a/profiles/arch/m68k/parent b/profiles/arch/m68k/parent
    index e234bf836e61..501b677cef63 100644
    --- a/profiles/arch/m68k/parent
    +++ b/profiles/arch/m68k/parent
    @@ -1,2 +1,3 @@
    ../base
    ../../features/wd40
    +../../features/big-endian
    diff --git a/profiles/arch/mips/mips64/parent b/profiles/arch/mips/mips64/parent
    index f3229c5b9876..3ed68f2e0b7f 100644
    --- a/profiles/arch/mips/mips64/parent
    +++ b/profiles/arch/mips/mips64/parent
    @@ -1 +1,2 @@
    ..
    +../../../features/big-endian
    diff --git a/profiles/arch/mips/mipsel/package.mask b/profiles/arch/mips/mipsel/package.mask
    deleted file mode 100644
    index e3e194c6e85c..000000000000
    --- a/profiles/arch/mips/mipsel/package.mask
    +++ /dev/null
    @@ -1,7 +0,0 @@
    -# Copyright 2023 Gentoo Authors
    -# Distributed under the terms of the GNU General Public License v2
    -
    -# matoro <matoro_gentoo@matoro.tk> (2022-03-20)
    -# Broken on big-endian (#861710)
    -# https://github.com/trendmicro/tlsh/issues/131
    --dev-libs/tlsh
    diff --git a/profiles/arch/mips/o32/parent b/profiles/arch/mips/o32/parent index f3229c5b9876..3ed68f2e0b7f 100644
    --- a/profiles/arch/mips/o32/parent
    +++ b/profiles/arch/mips/o32/parent
    @@ -1 +1,2 @@
    ..
    +../../../features/big-endian
    diff --git a/profiles/arch/mips/package.mask b/profiles/arch/mips/package.mask
    index 68f2756c44fb..d666e9ab084f 100644
    --- a/profiles/arch/mips/package.mask
    +++ b/profiles/arch/mips/package.mask
    @@ -1,11 +1,6 @@
    # Copyright 2006-2023 Gentoo Authors
    # Distributed under the terms of the GNU General Public License v2

    -# matoro <matoro_gentoo@matoro.tk> (2022-03-20)
    -# Broken on big-endian (#861710)
    -# https://github.com/trendmicro/tlsh/issues/131
    -dev-libs/tlsh
    -
    # Mask pam_ldap and nss_ldap - openldap dep missing.
    sys-auth/pam_ldap
    sys-auth/nss_ldap
    diff --git a/profiles/arch/powerpc/package.mask b/profiles/arch/powerpc/package.mask
    index 5ecdf5968afa..09ee3b610ae3 100644
    --- a/profiles/arch/powerpc/package.mask
    +++ b/profiles/arch/powerpc/package.mask
    @@ -1,13 +1,6 @@
    # Copyright 1999-2023 Gentoo Authors
    # Distributed under the terms of the GNU General Public License v2

    -# matoro <matoro_gentoo@matoro.tk> (2022-03-20)
    -# Broken on big-endian (#861710)
    -# https://github.com/trendmicro/tlsh/issues/131
    -dev-libs/tlsh
    -dev-python/tlsh
    -dev-util/diffoscope
    -
    # Georgy Yakovlev <gyakovlev@gentoo.org> (2020-09-22)
    # criu does not work on ppc64be and ppc32
    sys-process/criu
    diff --git a/profiles/arch/powerpc/ppc32/parent b/profiles/arch/powerpc/ppc32/parent
    index f3229c5b9876..3ed68f2e0b7f 100644
    --- a/profiles/arch/powerpc/ppc32/parent
    +++ b/profiles/arch/powerpc/ppc32/parent
    @@ -1 +1,2 @@
    ..
    +../../../features/big-endian
    diff --git a/profiles/arch/powerpc/ppc64/64le/package.mask b/profiles/arch/powerpc/ppc64/64le/package.mask
    index aa8fec70dd16..703c39a8fa69 100644
    --- a/profiles/arch/powerpc/ppc64/64le/package.mask
    +++ b/profiles/arch/powerpc/ppc64/64le/package.mask
    @@ -1,13 +1,6 @@
    # Copyright 1999-2023 Gentoo Authors
    # Distributed under the terms of the GNU General Public License v2

    -# matoro <matoro_gentoo@matoro.tk> (2022-03-20)
    -# Broken on big-endian (#861710)
    -# https://github.com/trendmicro/tlsh/issues/131
    --dev-libs/tlsh
    --dev-python/tlsh
    --dev-util/diffoscope
    -
    # Jimi Huotari <chiitoo@gentoo.org> (2023-01-11)
    # Requires media-libs/libva since 29.0.0, which is unmasked here.
    =media-video/obs-studio-29.0.0
    diff --git a/profiles/arch/powerpc/ppc64/64ul/parent b/profiles/arch/powerpc/ppc64/64ul/parent
    index f3229c5b9876..b088bfd7bf7b 100644
    --- a/profiles/arch/powerpc/ppc64/64ul/parent
    +++ b/profiles/arch/powerpc/ppc64/64ul/parent
    @@ -1 +1,2 @@
    ..
    +../../../../features/big-endian
    diff --git a/profiles/arch/s390/package.mask b/profiles/arch/s390/package.mask
    deleted file mode 100644
    index 8f83c7d52c61..000000000000
    --- a/profiles/arch/s390/package.mask
    +++ /dev/null
    @@ -1,7 +0,0 @@
    -# Copyright 2023 Gentoo Authors
    -# Distributed under the terms of the GNU General Public License v2
    -
    -# matoro <matoro_gentoo@matoro.tk> (2022-03-20)
    -# Broken on big-endian (#861710)
    -# https://github.com/trendmicro/tlsh/issues/131
    -dev-libs/tlsh
    diff --git a/profiles/arch/s390/parent b/profiles/arch/s390/parent
    index 7663f5297bb4..1360e0428bc8 100644
    --- a/profiles/arch/s390/parent
    +++ b/profiles/arch/s390/parent
    @@ -1,2 +1,3 @@
    ../../features/multilib
    ../base
    +../../features/big-endian
    diff --git a/profiles/arch/sparc/package.mask b/profiles/arch/sparc/package.mask
    index 467d775a6b12..538d5c80fc20 100644
    --- a/profiles/arch/sparc/package.mask
    +++ b/profiles/arch/sparc/package.mask
    @@ -1,11 +1,6 @@
    # Copyright 1999-2023 Gentoo Authors
    # Distributed under the terms of the GNU General Public License v2

    -# matoro <matoro_gentoo@matoro.tk> (2022-03-20)
    -# Broken on big-endian (#861710)
    -# https://github.com/trendmicro/tlsh/issues/131
    -dev-libs/tlsh
    -
    # matoro <matoro_gentoo@matoro.tk> (2023-03-07)
    # Fails tests disastrously. Present evidence of passing test suite
    # before removing, please.
    diff --git a/profiles/arch/sparc/parent b/profiles/arch/sparc/parent
    index eb001c6e8ab8..042786727c5b 100644
    --- a/profiles/arch/sparc/parent
    +++ b/profiles/arch/sparc/parent
    @@ -1 +1,2 @@
    ../base
    +../../features/big-endian
    diff --git a/profiles/features/big-endian/eapi b/profiles/features/big-endian/eapi
    new file mode 100644
    index 000000000000..7ed6ff82de6b
    --- /dev/null
    +++ b/profiles/features/big-endian/eapi
    @@ -0,0 +1 @@
    +5
    diff --git a/profiles/arch/arm64/big-endian/package.mask b/profiles/features/big-endian/package.mask
    similarity index 87%
    rename from profiles/arch/arm64/big-endian/package.mask
    rename to profiles/features/big-endian/package.mask
    index 8f83c7d52c61..0edd6a8fa129 100644
    --- a/profiles/arch/arm64/big-endian/package.mask
    +++ b/profiles/features/big-endian/package.mask
    @@ -5,3 +5,5 @@
    # Broken on big-endian (#861710)
    # https://github.com/trendmicro/tlsh/issues/131
    dev-libs/tlsh
    +dev-python/tlsh
    +dev-util/diffoscope

    Nice! There's already a big-endian USE flag that gets unmasked in various profiles. Maybe you could move that unmasking into this feature.

    -----BEGIN PGP SIGNATURE-----

    iQJFBAABCAAvFiEEPxcZ3tkwcedKm2a8EiZBXQDdMTcFAmQnRu4RHGNoZXdpQGdl bnRvby5vcmcACgkQEiZBXQDdMTdpAhAArdnAax2G71mEkPyR9tZXvA7Ql6UJ2LPw pqqsejmogcJj6p4MlB9kdwuafa8IIPUacSRYzQPOpQjuxTQktogkyhCqfD3cxbv1 kbUzaO1DiHmwyHsX8lRyB1L8/7Ddt6P/BNfB1HGnXg9U9Dy4X6EFprA5SExsWuA9 VMjFigq7C1RsTuzO2QSRiRVUtwL3tw9jGz1Lck8sk1KMxf5keHTScpkiwNFeQEvc MDS+qxBkJcT0M16ezYCKxGuiubnfp7zF+fzzN9ibxz6JGPc2jkR961Elqlfdcg7b vQJZWWtqtgx1ImuRimpdyM+mtbWd+qK70rVkaHrUSumbh6IpuYhB/bhUTa6TMYT9 c5zD/9txEv9hfoGl76jsmeLoEe+LifyII/k0ik8zgzgGWx/s0qHn59cuqbLFhXk7 leFc2/PA6+vzP9/o/AiNVqXyaaEawai/kL/Zf7VlVhxkwo+M3b55cPc7I/Ie4lMa Rh26A3qhQdLTVlmf8aAu6AFmBZ/uY9YjuqvWjLMfV7F5vGJd3IA40VbA2dCTZfVo 9Ods8Yar3cUB5R7ypbvsleiBQ2NoGumtSMIP/P6hVCWVL1GyUCNdRrnpeB96DYBE 3vfAo3Dkur5AmXvDiobDfUPYkzz/uPm6oKim72emWhweQp/dcmsUSHWiIbQsvWuF
    8S8qPxKRRmI=
    =l+h1
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)