depot/third_party/nixpkgs/pkgs/by-name/ha/hare/cross-compilation-tests.nix
Default email 5ca88bfbb9 Project import generated by Copybara.
GitOrigin-RevId: 9f918d616c5321ad374ae6cb5ea89c9e04bf3e58
2024-07-31 10:19:44 +00:00

40 lines
747 B
Nix

{
lib,
file,
hare,
runCommandNoCC,
writeText,
}:
let
archs = lib.concatStringsSep " " (
builtins.map (lib.removeSuffix "-linux") (
builtins.filter (lib.hasSuffix "-linux") hare.meta.platforms
)
);
mainDotHare = writeText "main.ha" ''
export fn main() void = void;
'';
in
runCommandNoCC "${hare.pname}-cross-compilation-test"
{
nativeBuildInputs = [
hare
file
];
}
''
HARECACHE="$(mktemp -d)"
export HARECACHE
readonly binprefix="bin"
for a in ${archs}; do
outbin="$binprefix-$a"
set -x
hare build -o "$outbin" -q -R -a "$a" ${mainDotHare}
set +x
printf -- 'Built "%s" target\n' "$a"
done
file -- "$binprefix-"*
: 1>$out
''