46 lines
1.0 KiB
Nix
46 lines
1.0 KiB
Nix
{ nixpkgs ? import <nixpkgs>, system ? { config = "x86_64-unknown-genode"; } }:
|
|
|
|
with builtins;
|
|
|
|
let
|
|
nixpkgs' = nixpkgs {
|
|
config.allowUnsupportedSystem = true;
|
|
crossSystem = {
|
|
isx86_64 = true;
|
|
isGenode = true;
|
|
imports = [ ./platform.nix ];
|
|
};
|
|
overlays = [ (import ./overlay) ];
|
|
};
|
|
|
|
portIncludes = ports:
|
|
listToAttrs (map (name:
|
|
let port = getAttr name ports;
|
|
in {
|
|
name = name + "_include";
|
|
value = getAttr "include" port;
|
|
}) (attrNames ports));
|
|
|
|
toolchain = import ./tool/toolchain.nix;
|
|
in rec {
|
|
inherit toolchain;
|
|
nixpkgs = nixpkgs';
|
|
|
|
dhall = import ./dhall { inherit nixpkgs; };
|
|
|
|
upstream = import ./upstream { inherit nixpkgs; };
|
|
|
|
ports = import ./ports { inherit nixpkgs toolchain upstream; };
|
|
|
|
libretro = import ./libretro {
|
|
inherit nixpkgs upstream toolchain;
|
|
inherit (ports) stdcxx libc;
|
|
};
|
|
|
|
shell = import ./shell.nix {
|
|
inherit nixpkgs toolchain;
|
|
dhallPackages = dhall;
|
|
pkgs = { inherit upstream ports; };
|
|
};
|
|
}
|