stdcxx test
This commit is contained in:
parent
205fadc83d
commit
9801121578
|
@ -66,6 +66,8 @@ in {
|
||||||
|
|
||||||
"test-signal".patches = [ ./test-signal.patch ];
|
"test-signal".patches = [ ./test-signal.patch ];
|
||||||
|
|
||||||
|
"test-stdcxx".portInputs = [ libc stdcxx ];
|
||||||
|
|
||||||
"test-vmm_x86".patches = [ ./test-vmm_x86.patch ];
|
"test-vmm_x86".patches = [ ./test-vmm_x86.patch ];
|
||||||
|
|
||||||
usb_drv.portInputs = [ dde_linux ];
|
usb_drv.portInputs = [ dde_linux ];
|
||||||
|
|
|
@ -8,9 +8,14 @@ let
|
||||||
inherit nixpkgs localPackages legacyPackages;
|
inherit nixpkgs localPackages legacyPackages;
|
||||||
};
|
};
|
||||||
|
|
||||||
testFiles =
|
testFiles = map callTest [
|
||||||
map callTest [ ./log.nix ./posix.nix ./vmm_arm.nix ./vmm_x86.nix ./x86.nix ]
|
./log.nix
|
||||||
++ (callTest ./solo5);
|
./posix.nix
|
||||||
|
./stdcxx
|
||||||
|
./vmm_arm.nix
|
||||||
|
./vmm_x86.nix
|
||||||
|
./x86.nix
|
||||||
|
] ++ (callTest ./solo5);
|
||||||
|
|
||||||
testPkgs = genodepkgs;
|
testPkgs = genodepkgs;
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,104 @@
|
||||||
|
let Test = ./test.dhall ? env:DHALL_GENODE_TEST
|
||||||
|
|
||||||
|
let Genode = Test.Genode
|
||||||
|
|
||||||
|
let Prelude = Genode.Prelude
|
||||||
|
|
||||||
|
let XML = Prelude.XML
|
||||||
|
|
||||||
|
let Init = Genode.Init
|
||||||
|
|
||||||
|
let Child = Init.Child
|
||||||
|
|
||||||
|
let init =
|
||||||
|
Init::{
|
||||||
|
, verbose = True
|
||||||
|
, routes =
|
||||||
|
[ Init.ServiceRoute.parent "Timer", Init.ServiceRoute.parent "Rtc" ]
|
||||||
|
, children = toMap
|
||||||
|
{ vfs =
|
||||||
|
Child.flat
|
||||||
|
Child.Attributes::{
|
||||||
|
, binary = "vfs"
|
||||||
|
, config = Init.Config::{
|
||||||
|
, content =
|
||||||
|
[ Prelude.XML.text
|
||||||
|
''
|
||||||
|
<vfs>
|
||||||
|
<dir name="dev"> <log name="stdout" label="stdout"/> <log name="stderr" label="stderr"/> <null/> <rtc/> <zero/> </dir>
|
||||||
|
<dir name="tmp"><ram/></dir>
|
||||||
|
<dir name="nix"><fs label="nix" root="nix"/></dir>
|
||||||
|
</vfs>
|
||||||
|
''
|
||||||
|
]
|
||||||
|
, defaultPolicy = Some Init.Config.DefaultPolicy::{
|
||||||
|
, attributes = toMap { root = "/", writeable = "yes" }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
, provides = [ "File_system" ]
|
||||||
|
, resources = Genode.Init.Resources::{
|
||||||
|
, caps = 256
|
||||||
|
, ram = Genode.units.MiB 8
|
||||||
|
}
|
||||||
|
, routes =
|
||||||
|
Prelude.List.map
|
||||||
|
Text
|
||||||
|
Init.ServiceRoute.Type
|
||||||
|
Init.ServiceRoute.parent
|
||||||
|
[ "File_system", "Rtc" ]
|
||||||
|
}
|
||||||
|
, store_rom =
|
||||||
|
Child.flat
|
||||||
|
Child.Attributes::{
|
||||||
|
, binary = "cached_fs_rom"
|
||||||
|
, provides = [ "ROM" ]
|
||||||
|
, resources = Init.Resources::{
|
||||||
|
, caps = 256
|
||||||
|
, ram = Genode.units.MiB 4
|
||||||
|
}
|
||||||
|
, routes =
|
||||||
|
[ Init.ServiceRoute.parentLabel
|
||||||
|
"File_system"
|
||||||
|
(None Text)
|
||||||
|
(Some "nix")
|
||||||
|
]
|
||||||
|
}
|
||||||
|
, cxx =
|
||||||
|
Child.flat
|
||||||
|
Child.Attributes::{
|
||||||
|
, binary = "test-stdcxx"
|
||||||
|
, config = Genode.Init.Config::{
|
||||||
|
, content =
|
||||||
|
[ Prelude.XML.text
|
||||||
|
''
|
||||||
|
<libc stdin="/dev/null" stdout="/dev/stdout" stderr="/dev/stderr" pipe="/dev/pipe" rtc="/dev/rtc"/>
|
||||||
|
<vfs> <fs/> </vfs>
|
||||||
|
''
|
||||||
|
]
|
||||||
|
}
|
||||||
|
, exitPropagate = True
|
||||||
|
, resources = Genode.Init.Resources::{
|
||||||
|
, caps = 256
|
||||||
|
, ram = Genode.units.MiB 8
|
||||||
|
}
|
||||||
|
, routes =
|
||||||
|
[ Init.ServiceRoute.child "File_system" "vfs"
|
||||||
|
, { service =
|
||||||
|
{ name = "ROM"
|
||||||
|
, label =
|
||||||
|
Init.LabelSelector.Type.Partial
|
||||||
|
{ prefix = Some "/nix/store/", suffix = None Text }
|
||||||
|
}
|
||||||
|
, route =
|
||||||
|
Init.Route.Type.Child
|
||||||
|
{ name = "store_rom"
|
||||||
|
, label = None Text
|
||||||
|
, diag = None Bool
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
in Test::{ children = Test.initToChildren init }
|
|
@ -0,0 +1,28 @@
|
||||||
|
{ pkgs, legacyPackages, ... }:
|
||||||
|
with pkgs;
|
||||||
|
|
||||||
|
let
|
||||||
|
testStdcxx = pkgs.stdenv.mkDerivation {
|
||||||
|
name = "test-stdcxx";
|
||||||
|
inherit (pkgs.genodeSources) version;
|
||||||
|
src = pkgs.genodeSources;
|
||||||
|
buildPhase = ''
|
||||||
|
mkdir -p $out
|
||||||
|
$CXX -o $out/test-stdcxx \
|
||||||
|
repos/libports/src/test/stdcxx/main.cc
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
in {
|
||||||
|
name = "stdcxx";
|
||||||
|
machine = {
|
||||||
|
config = ./config.dhall;
|
||||||
|
inputs = map pkgs.genodeSources.depot [
|
||||||
|
"libc"
|
||||||
|
"posix"
|
||||||
|
"vfs"
|
||||||
|
"stdcxx"
|
||||||
|
"test-stdcxx"
|
||||||
|
];
|
||||||
|
# ++ [ testStdcxx ];
|
||||||
|
};
|
||||||
|
}
|
Loading…
Reference in New Issue