|
|
|
@ -68,21 +68,20 @@ rec { |
|
|
|
|
isKernelFamily = isType "kernel-family"; |
|
|
|
|
kernelFamilies = setTypes "kernel-family" { |
|
|
|
|
bsd = {}; |
|
|
|
|
unix = {}; |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
isKernel = x: isType "kernel" x; |
|
|
|
|
kernels = with execFormats; with kernelFamilies; setTypesAssert "kernel" |
|
|
|
|
(x: isExecFormat x.execFormat && all isKernelFamily (attrValues x.families)) |
|
|
|
|
{ |
|
|
|
|
darwin = { execFormat = macho; families = { inherit unix; }; }; |
|
|
|
|
freebsd = { execFormat = elf; families = { inherit unix bsd; }; }; |
|
|
|
|
hurd = { execFormat = elf; families = { inherit unix; }; }; |
|
|
|
|
linux = { execFormat = elf; families = { inherit unix; }; }; |
|
|
|
|
netbsd = { execFormat = elf; families = { inherit unix bsd; }; }; |
|
|
|
|
none = { execFormat = unknown; families = { inherit unix; }; }; |
|
|
|
|
openbsd = { execFormat = elf; families = { inherit unix bsd; }; }; |
|
|
|
|
solaris = { execFormat = elf; families = { inherit unix; }; }; |
|
|
|
|
darwin = { execFormat = macho; families = { }; }; |
|
|
|
|
freebsd = { execFormat = elf; families = { inherit bsd; }; }; |
|
|
|
|
hurd = { execFormat = elf; families = { }; }; |
|
|
|
|
linux = { execFormat = elf; families = { }; }; |
|
|
|
|
netbsd = { execFormat = elf; families = { inherit bsd; }; }; |
|
|
|
|
none = { execFormat = unknown; families = { }; }; |
|
|
|
|
openbsd = { execFormat = elf; families = { inherit bsd; }; }; |
|
|
|
|
solaris = { execFormat = elf; families = { }; }; |
|
|
|
|
windows = { execFormat = pe; families = { }; }; |
|
|
|
|
} // { # aliases |
|
|
|
|
# TODO(@Ericson2314): Handle these Darwin version suffixes more generally. |
|
|
|
|