mandoc: fix executableCross condition

isCompatible concerns itself with architecture compatibility which does
not constitute executability by itself, since there are other key
factors like the Kernel/syscall interface targeted. As mode switching is
considered compatible (e.g. ppc64le and ppc64), we can't even use
isCompatible to establish the architecture subset of executability.
For the lack of a better alternative, we'll just compare the system
tuples for now which will loose us support for x86_64-linux ->
i686-linux, but this is probably a bearable consequence.
This commit is contained in:
sternenseemann 2022-01-23 10:50:53 +01:00 committed by sterni
parent c95e816c65
commit 3ab8db0ad0

View file

@ -5,7 +5,11 @@ let
# even though the platforms aren't the same. mandoc can't be cross compiled
# (easily) because of its configurePhase, but we want to allow “native” cross
# such as pkgsLLVM and pkgsStatic.
executableCross = stdenv.hostPlatform.isCompatible stdenv.buildPlatform;
# For a lack of a better predicate at the moment, we compare the platforms'
# system tuples. See also:
# * https://github.com/NixOS/nixpkgs/pull/140271
# * https://github.com/NixOS/nixpkgs/issues/61414
executableCross = stdenv.buildPlatform.system == stdenv.hostPlatform.system;
# Name of an UTF-8 locale _always_ present at runtime, used for UTF-8 support
# (locale set by the user may differ). This would usually be C.UTF-8, but