50 lines
1.5 KiB
Nix
50 lines
1.5 KiB
Nix
# SPDX-FileCopyrightText: Emery Hemingway
|
|
#
|
|
# SPDX-License-Identifier: LicenseRef-Hippocratic-1.1
|
|
|
|
let
|
|
tests = call: {
|
|
fs_report = call ./fs_report.nix { };
|
|
libc = call ./libc.nix { };
|
|
log = call ./log.nix { };
|
|
signal = call ./signal.nix { };
|
|
solo5 = call ./solo5.nix { };
|
|
solo5-ping = call ./solo5-ping.nix { };
|
|
};
|
|
|
|
in { genodepkgs ? import ./../default.nix { }, nixpkgs ? import ./../nixpkgs.nix
|
|
, dhall-haskell }:
|
|
|
|
let
|
|
hostPkgs = import nixpkgs {
|
|
overlays = [ (self: super: { dhall = dhall-haskell.linux-dhall; }) ];
|
|
};
|
|
testPkgs = genodepkgs;
|
|
|
|
lib = hostPkgs.lib // {
|
|
|
|
renderDhallInit = path: args:
|
|
hostPkgs.runCommand "init.xml" {
|
|
preferLocalBuild = true;
|
|
buildInputs = [ hostPkgs.dhall ];
|
|
initConfig = path;
|
|
initArgs = args;
|
|
DHALL_PRELUDE = "${testPkgs.dhallPackages.prelude}/package.dhall";
|
|
DHALL_GENODE = "${testPkgs.dhallPackages.genode}/package.dhall";
|
|
} ''
|
|
export XDG_CACHE_HOME=$NIX_BUILD_TOP
|
|
echo 'let Prelude = env:DHALL_GENODE in Prelude.Init.render (Prelude.Init.defaults ⫽ { children = toMap (env:initConfig env:initArgs) })' \
|
|
| dhall text \
|
|
> $out
|
|
'';
|
|
};
|
|
|
|
in {
|
|
x86_64 = {
|
|
linux = tests
|
|
(import ./driver-linux.nix { inherit testPkgs hostPkgs lib; }).callTest;
|
|
nova = (call: ((tests call) // { pci = call ./pci.nix { }; }))
|
|
(import ./driver-nova.nix { inherit testPkgs hostPkgs lib; }).callTest;
|
|
};
|
|
}
|