Unverified Commit 8b5e372c authored by sternenseemann's avatar sternenseemann Committed by GitHub
Browse files

Merge pull request #168113 from a-m-joseph/ispowerpc-becomes-ispower32

lib/systems/inspect.nix: replace isPowerPC with isPower32BigEndian
parents 5b50cb42 c0085404
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -11,7 +11,6 @@ rec {
    isi686         = { cpu = cpuTypes.i686; };
    isx86_32       = { cpu = { family = "x86"; bits = 32; }; };
    isx86_64       = { cpu = { family = "x86"; bits = 64; }; };
    isPowerPC      = { cpu = cpuTypes.powerpc; };
    isPower        = { cpu = { family = "power"; }; };
    isPower64      = { cpu = { family = "power"; bits = 64; }; };
    isx86          = { cpu = { family = "x86"; }; };
+16 −1
Original line number Diff line number Diff line
@@ -51,7 +51,7 @@
  </section>
  <section xml:id="sec-release-22.11-incompatibilities">
    <title>Backward Incompatibilities</title>
    <itemizedlist spacing="compact">
    <itemizedlist>
      <listitem>
        <para>
          The <literal>isCompatible</literal> predicate checking CPU
@@ -69,6 +69,21 @@
          compatible</emphasis>.
        </para>
      </listitem>
      <listitem>
        <para>
          The <literal>isPowerPC</literal> predicate, found on
          <literal>platform</literal> attrsets
          (<literal>hostPlatform</literal>,
          <literal>buildPlatform</literal>,
          <literal>targetPlatform</literal>, etc) has been removed in
          order to reduce confusion. The predicate was was defined such
          that it matches only the 32-bit big-endian members of the
          POWER/PowerPC family, despite having a name which would imply
          a broader set of systems. If you were using this predicate,
          you can replace <literal>foo.isPowerPC</literal> with
          <literal>(with foo; isPower &amp;&amp; is32bit &amp;&amp; isBigEndian)</literal>.
        </para>
      </listitem>
    </itemizedlist>
  </section>
  <section xml:id="sec-release-22.11-notable-changes">
+3 −0
Original line number Diff line number Diff line
@@ -37,6 +37,9 @@ In addition to numerous new and upgraded packages, this release has the followin
  `lib.systems.parse.isCompatible` still exists, but has changed semantically:
  Architectures with differing endianness modes are *no longer considered compatible*.

- The `isPowerPC` predicate, found on `platform` attrsets (`hostPlatform`, `buildPlatform`, `targetPlatform`, etc) has been removed in order to reduce confusion.  The predicate was was defined such that it matches only the 32-bit big-endian members of the POWER/PowerPC family, despite having a name which would imply a broader set of systems.  If you were using this predicate, you can replace `foo.isPowerPC` with `(with foo; isPower && is32bit && isBigEndian)`.


<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->

## Other Notable Changes {#sec-release-22.11-notable-changes}
+1 −1
Original line number Diff line number Diff line
@@ -479,7 +479,7 @@ in
                + lib.optionalString (isx86_32 || isx86_64) "-Xbcj x86"
                # Untested but should also reduce size for these platforms
                + lib.optionalString (isAarch32 || isAarch64) "-Xbcj arm"
                + lib.optionalString (isPowerPC) "-Xbcj powerpc"
                + lib.optionalString (isPower && is32bit && isBigEndian) "-Xbcj powerpc"
                + lib.optionalString (isSparc) "-Xbcj sparc";
      description = ''
        Compression settings to use for the squashfs nix store.
+1 −1
Original line number Diff line number Diff line
@@ -12,7 +12,7 @@
  libffi ? null

, useLLVM ? !(stdenv.targetPlatform.isx86
              || stdenv.targetPlatform.isPowerPC
              || stdenv.targetPlatform.isPower
              || stdenv.targetPlatform.isSparc)
, # LLVM is conceptually a run-time-only depedendency, but for
  # non-x86, we need LLVM to bootstrap later stages, so it becomes a
Loading