Since GHC is a cross compiler, it's perfectly possible to make haskell
binaries on platforms without GHCs. `windows ++ unix` seems good enough
for now.
Also don't default `hydraPlatforms` to `platforms`. The former must be a
list of systems (strings), but the latter is a list of systems or
patterns.
Semi-automatic update generated by https://github.com/ryantm/nix-update tools. These checks were done:
- built on NixOS
- ran `/nix/store/348mi6qinpcnhrk0l8zy9m9lk43xqpml-jsonnet-0.10.0/bin/jsonnet -h` got 0 exit code
- ran `/nix/store/348mi6qinpcnhrk0l8zy9m9lk43xqpml-jsonnet-0.10.0/bin/jsonnet --help` got 0 exit code
- ran `/nix/store/348mi6qinpcnhrk0l8zy9m9lk43xqpml-jsonnet-0.10.0/bin/jsonnet -v` and found version 0.10.0
- ran `/nix/store/348mi6qinpcnhrk0l8zy9m9lk43xqpml-jsonnet-0.10.0/bin/jsonnet --version` and found version 0.10.0
- ran `/nix/store/348mi6qinpcnhrk0l8zy9m9lk43xqpml-jsonnet-0.10.0/bin/jsonnet -h` and found version 0.10.0
- ran `/nix/store/348mi6qinpcnhrk0l8zy9m9lk43xqpml-jsonnet-0.10.0/bin/jsonnet --help` and found version 0.10.0
- found 0.10.0 with grep in /nix/store/348mi6qinpcnhrk0l8zy9m9lk43xqpml-jsonnet-0.10.0
- directory tree listing: https://gist.github.com/9a4279146abdaa645fdcd5481889e783
This changes the emscripten package so that it specifies the rev from
the binaryen repo to use, and sets it to always use the version that has
been tagged for use with that version of emscripten. This should force
future updates of emscripten to also update binaryen.
Binaryen can also be installed as a stand-alone package, so there's some
logic added to the binaryen package to allow building in both ways, and
distinguishing between them.
Semi-automatic update generated by https://github.com/ryantm/nix-update tools. These checks were done:
- built on NixOS
- Warning: no binary found that responded to help or version flags. (This warning appears even if the package isn't expected to have binaries.)
- found 2.8 with grep in /nix/store/svgfjl0v59ff90l6h2gzbsplhbk3aqhp-bash-completion-2.8
- directory tree listing: https://gist.github.com/23a9bb8eddc5667ef5a94d69ea7ab340
Instead of intersecting system strings, we filter with the sort of
patterns used in `meta.platforms`.
Indicating this change `forTheseSystems` has been renamed to
`forMatchingSystems`, since the given list is now patterns to match, and
not the systems themselves. [Just as with `meta.platforms`, systems
strings are also supported for backwards compatibility.]
This is more flexible, and makes the `forMatchingSystems` and
packagePlatforms` cases more analogous.