stage.nix: revert deletion of gcc.abi="elfv2" from 82ff1f5

Commit 82ff1f5db1 in #182807 removed two lines
from stage.nix which were responsible for making sure the `gcc` for `pkgsStatic`
on powerpc64 was built with the `--with-abi=elfv2` flag.

Unfortunately this causes build failures for `pkgsCross.ppc64.pkgsStatic`, as
reported here:

  https://github.com/NixOS/nixpkgs/pull/182807#issuecomment-1247268226

This commit reverts the deletion.

Unfortunately ugly kludges like this are necessary because nixpkgs'
`lib/systems/` doesn't understand the difference between a libc and an abi.  So
we have no clean way to tell nixpkgs "musl on big-endian powerpc64 always uses
the ELFv2 ABI" -- it thinks that musl is an ABI.  Until that gets fixed there is
no better way to add the flag.
This commit is contained in:
Adam Joseph 2022-09-15 20:35:48 -07:00 committed by Rick van Schijndel
parent fe410ce1a4
commit 33bc0765a5

View file

@ -259,6 +259,8 @@ let
crossSystem = {
isStatic = true;
parsed = makeMuslParsedPlatform stdenv.hostPlatform.parsed;
} // lib.optionalAttrs (stdenv.hostPlatform.system == "powerpc64-linux") {
gcc.abi = "elfv2";
};
});
};