Files
simplex-chat/scripts/nix/check-darwin-bitvec-runtime.nix
T

45 lines
1.6 KiB
Nix

# nix eval --json --file scripts/nix/check-darwin-bitvec-runtime.nix
let
select = import ./darwin-bitvec-runtime.nix;
pkgs = {
lib.optional = condition: value: if condition then [ value ] else [];
fetchurl = args: args;
applyPatches = args: args;
};
intel = select {
inherit pkgs;
hostPlatform = { isDarwin = true; isx86_64 = true; };
cc = "/selected-target-clang";
};
other = platform: select {
pkgs = pkgs // {
fetchurl = _: throw "Unexpected Intel bitvec source fetch";
applyPatches = _: throw "Unexpected Intel bitvec source patch";
};
hostPlatform = platform;
cc = throw "Unexpected Intel compiler runtime dependency";
};
source = builtins.head intel.packageSources;
in
assert builtins.length intel.packageSources == 1;
assert source.name == "bitvec-1.1.6.0-darwin-source";
assert source.src.url == "https://hackage.haskell.org/package/bitvec-1.1.6.0/bitvec-1.1.6.0.tar.gz";
assert source.src.hash == "sha256-GkLTPONBlz9OTz8OENAHYAVqCsoOKlcYCZS/KsJsTis=";
assert source.patches == [ ./bitvec-darwin-compiler-rt.patch ];
assert intel.cabalProjectLocal == ''
package bitvec
tests: False
benchmarks: False
extra-lib-dirs: /selected-target-clang/resource-root/lib/darwin
'';
assert builtins.all (p: other p == { packageSources = []; cabalProjectLocal = ""; }) [
{ isDarwin = true; isx86_64 = false; }
{ isDarwin = false; isx86_64 = true; }
{ isDarwin = false; isx86_64 = false; }
];
{
intelDeclaresMatchingCompilerRuntime = true;
bitvecRetainsDependencyOnlyGoals = true;
otherPlatformsUnchangedAndLazy = true;
}