From e22d0b49a9553861cdaee9f71b37db4baf2bb992 Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Fri, 22 Apr 2022 09:42:51 +0000 Subject: [PATCH] patchelf: use 0.13.x on aarch64+musl The C++ compiler in our musl bootstrap for aarch64 is too old to build the latest version of patchelf, so we need to use the latest version that builds with that compiler to get a new bootstrap. --- pkgs/development/tools/misc/patchelf/0.13.nix | 5 +++++ pkgs/top-level/all-packages.nix | 10 ++++++++-- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/pkgs/development/tools/misc/patchelf/0.13.nix b/pkgs/development/tools/misc/patchelf/0.13.nix index dd0eba508daa..0111a4b065c4 100644 --- a/pkgs/development/tools/misc/patchelf/0.13.nix +++ b/pkgs/development/tools/misc/patchelf/0.13.nix @@ -1,5 +1,10 @@ { stdenv, fetchurl, patchelf }: +# Note: this package is used for bootstrapping fetchurl, and thus +# cannot use fetchpatch! All mutable patches (generated by GitHub or +# cgit) that are needed here should be included directly in Nixpkgs as +# files. + stdenv.mkDerivation rec { pname = "patchelf"; version = "0.13.1"; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index cdf049f550d6..d72316c089c9 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -15799,9 +15799,15 @@ with pkgs; parse-cli-bin = callPackage ../development/tools/parse-cli-bin { }; - patchelf = callPackage ../development/tools/misc/patchelf { }; + patchelf = if with stdenv.buildPlatform; isAarch64 && isMusl then + patchelf_0_13 + else + patchelf_0_14; patchelf_0_9 = callPackage ../development/tools/misc/patchelf/0.9.nix { }; - patchelf_0_13 = callPackage ../development/tools/misc/patchelf/0.13.nix { }; + patchelf_0_13 = callPackage ../development/tools/misc/patchelf/0.13.nix { + patchelf = patchelf_0_14; + }; + patchelf_0_14 = callPackage ../development/tools/misc/patchelf { }; patchelfUnstable = lowPrio (callPackage ../development/tools/misc/patchelf/unstable.nix { });