2
0
Fork 0
genodepkgs/packages/default.nix

104 lines
2.5 KiB
Nix
Raw Normal View History

2020-01-16 17:38:23 +01:00
# SPDX-License-Identifier: CC0-1.0
2019-09-27 12:38:35 +02:00
{ system, legacyPackages, depot, apps, dhallApps }:
2019-07-30 12:48:01 +02:00
2019-11-05 17:38:47 +01:00
let
2020-01-16 17:19:42 +01:00
inherit (legacyPackages) callPackage;
2019-11-05 17:38:47 +01:00
2020-02-24 14:19:57 +01:00
dhallPackages = legacyPackages.dhallPackages
// (callPackage ./dhall { inherit dhallApps; });
mkDhallManifest = drv:
legacyPackages.runCommand "${drv.name}.dhall" { inherit drv; }
"${apps.generate-manifest.program} $drv > $out";
2020-01-16 17:38:23 +01:00
addManifest = drv: { manifest = mkDhallManifest drv; } // drv;
callPackage' = path: attrs:
addManifest (legacyPackages.callPackages path attrs);
buildUpstream = import ./genodelabs {
nixpkgs = legacyPackages;
inherit apps;
};
2019-11-05 17:38:47 +01:00
in rec {
2020-01-16 17:19:42 +01:00
inherit (legacyPackages) stdenv;
base-hw-pc = buildUpstream {
name = "base-hw-pc";
arch = "x86_64";
kernel = "hw";
board = "pc";
2020-02-24 14:19:57 +01:00
targets = [ "bootstrap" "core" "timer" "lib/ld" ];
postInstall = ''
mkdir -p $out/lib
mv $out/bin/*.o $out/lib/
mv $out/bin/ld-hw.lib.so $out/lib/ld.lib.so
'';
};
base-nova = buildUpstream {
name = "base-nova";
arch = "x86_64";
kernel = "nova";
2020-02-24 14:19:57 +01:00
targets = [ "core" "timer" "lib/ld" ];
postInstall = ''
mkdir -p $out/lib
mv $out/bin/*.o $out/lib/
mv $out/bin/ld-nova.lib.so $out/lib/ld.lib.so
'';
};
genodeTests = let
directoryBlacklist = [
"repos/base-*"
"repos/base/src/test/sanitizer"
"repos/base/src/test/xml_generator"
"repos/dde_bsd"
"repos/dde_linux"
"repos/gems/src/test/aes_cbc_4k"
"repos/gems/src/test/decorator_stress"
"repos/gems/src/test/text_painter"
"repos/gems/src/test/text_painter"
"repos/gems/src/test/tiled_wm"
"repos/libports"
"repos/ports"
];
in buildUpstream {
name = "genode-tests";
arch = "x86_64";
preBuild = "find ${toString directoryBlacklist} -name target.mk -delete";
targets = [ "test" ];
};
2020-01-16 17:19:42 +01:00
bender = legacyPackages.buildPackages.callPackage ./bender { };
2019-11-05 17:38:47 +01:00
dhallGenode = dhallPackages.genode;
2019-11-05 17:38:47 +01:00
dhallPrelude = dhallPackages.prelude;
genode = import ./genode {
nixpkgs = legacyPackages;
inherit mkDhallManifest;
};
NOVA = legacyPackages.callPackage ./NOVA { };
libc = callPackage' ./libc { inherit depot; };
2020-01-16 17:19:42 +01:00
nic_bus = callPackage ./nic_bus { inherit (genode) base os; };
2020-01-27 11:59:09 +01:00
solo5 = let drv = callPackage' ./solo5 { inherit genode; };
in drv // { tests = addManifest drv.tests // { pname = "solo5-tests"; }; };
2020-01-16 17:38:23 +01:00
sotest-producer = callPackage' ./sotest-producer {
2020-01-16 17:38:23 +01:00
stdenv = genode.stdenvGcc;
inherit genode;
};
stdcxx = callPackage' ./stdcxx { };
}