Commit 05ccba8c authored by Emily's avatar Emily
Browse files

ninja_1_11: init at 1.11.1

Swift 5.8 doesn’t reliably build with Ninja 1.12, and apparently
neither do old versions of ROCm, due to a build scheduling change
breaking builds with undeclared dependencies. Upstream Swift have
pinned 1.11 for now.

Reintroducing it isn’t a good long‐term solution, but seems
like the easiest way to avoid shipping 24.11 with a broken Swift
on Darwin. The patch for 32‐bit systems has not been restored,
as Swift doesn’t support them anyway.
parent 14434de3
Loading
Loading
Loading
Loading
+18 −7
Original line number Diff line number Diff line
@@ -11,18 +11,29 @@
, buildPackages
, buildDocs ? true
, nix-update-script
, ninjaRelease ? "latest"
}:

stdenv.mkDerivation (finalAttrs: {
  pname = "ninja";
  version = "1.12.1";
  version = lib.removePrefix "v" finalAttrs.src.rev;

  src = fetchFromGitHub {
  src = {
    # TODO: Remove Ninja 1.11 as soon as possible.
    "1.11" = fetchFromGitHub {
      owner = "ninja-build";
      repo = "ninja";
    rev = "v${finalAttrs.version}";
      rev = "v1.11.1";
      hash = "sha256-LvV/Fi2ARXBkfyA1paCRmLUwCh/rTyz+tGMg2/qEepI=";
    };

    latest = fetchFromGitHub {
      owner = "ninja-build";
      repo = "ninja";
      rev = "v1.12.1";
      hash = "sha256-RT5u+TDvWxG5EVQEYj931EZyrHUSAqK73OKDAascAwA=";
    };
  }.${ninjaRelease} or (throw "Unsupported Ninja release: ${ninjaRelease}");

  depsBuildBuild = [ buildPackages.stdenv.cc ];

+2 −0
Original line number Diff line number Diff line
@@ -30944,6 +30944,8 @@ with pkgs;
  node-problem-detector = callPackage ../applications/networking/cluster/node-problem-detector { };
  ninja_1_11 = callPackage ../by-name/ni/ninja/package.nix { ninjaRelease = "1.11"; };
  ninjas2 = callPackage ../applications/audio/ninjas2 { };
  nootka = qt5.callPackage ../applications/audio/nootka { };