Files
Teo Camarasu 4952abb034 Add GHC-9.2.6 (#1842)
* Add GHC-9.2.6

* More ghc 9.2.6 changes

* ifdLevel 0

* ifdLevel 1

* More aarch64 materialization

* Add spdx 3.19 materialization

* ifdLevel 2

* Remaining materialization files

* ifdLevel 3

* More materialization

---------

Co-authored-by: Hamish Mackenzie <Hamish.K.Mackenzie@gmail.com>
2023-02-15 12:24:04 +13:00

48 lines
1.4 KiB
Nix

{ projectConfig }:
{ lib, config, pkgs, haskellLib, ... }: {
options = {
packages = lib.mkOption {
type = lib.types.unspecified;
default = haskellLib.selectProjectPackages;
};
crossPlatforms = lib.mkOption {
type = lib.types.unspecified;
default = projectConfig.crossPlatforms;
};
variants = lib.mkOption {
type = lib.types.attrsOf lib.types.unspecified;
default = {};
description = ''
This allows flakes to easily include variations of the
project by with different project arguments.
Anything you can pass to `project.addModule` can be used.
For instance to include variants using ghc 9.2.6:
```
flake.variants.ghc926.compiler-nix-name = pkgs.lib.mkForce "ghc926";
```
Then use it with:
```
nix build .#ghc926:hello:exe:hello
```
'';
};
doCoverage = lib.mkOption {
type = lib.types.bool;
default = false;
description = ''
Specifies if the flake `ciJobs` and `hydraJobs` should include code
coverage reports.
'';
};
coverageProjectModule = lib.mkOption {
type = lib.types.unspecified;
default = {};
description = ''
Project module for use when generating coverage reports.
The project packages will have `packages.X.doCoverage`
turned on by default.
'';
};
};
}