haskell.packages.*.ghc-tags: pick compatible version

Since there is probably more movement going forward, testing this on
Hydra for multiple GHC versions seems sensible.
This commit is contained in:
sternenseemann 2023-02-18 18:27:23 +01:00
parent faa46049d2
commit 2e9ff9aa98
6 changed files with 41 additions and 0 deletions

View file

@ -73,6 +73,9 @@ self: super: {
# additional dependency to compile successfully.
ghc-lib-parser-ex = addBuildDepend self.ghc-lib-parser super.ghc-lib-parser-ex;
# Needs to use ghc-lib due to incompatible GHC
ghc-tags = doDistribute (addBuildDepend self.ghc-lib self.ghc-tags_1_5);
# Jailbreak to fix the build.
base-noprelude = doJailbreak super.base-noprelude;
unliftio-core = doJailbreak super.unliftio-core;

View file

@ -121,6 +121,9 @@ self: super: {
Cabal = lself.Cabal_3_6_3_0;
}));
# Needs to use ghc-lib due to incompatible GHC
ghc-tags = doDistribute (addBuildDepend self.ghc-lib self.ghc-tags_1_5);
# This package is marked as unbuildable on GHC 9.2, so hackage2nix doesn't include any dependencies.
# See https://github.com/NixOS/nixpkgs/pull/205902 for why we use `self.<package>.scope`
hls-haddock-comments-plugin = unmarkBroken (addBuildDepends (with self.hls-haddock-comments-plugin.scope; [

View file

@ -87,6 +87,9 @@ self: super: {
# For -fghc-lib see cabal.project in haskell-language-server.
stylish-haskell = enableCabalFlag "ghc-lib" super.stylish-haskell;
# Needs to match ghc version
ghc-tags = doDistribute self.ghc-tags_1_5;
# For "ghc-lib" flag see https://github.com/haskell/haskell-language-server/issues/3185#issuecomment-1250264515
hlint = enableCabalFlag "ghc-lib" super.hlint;

View file

@ -164,6 +164,7 @@ extra-packages:
- commonmark-extensions < 0.2.3.3 # 2022-12-17: required by emanote 1.0.0.0 (to avoid a bug in 0.2.3.3)
- ShellCheck == 0.8.0 # 2022-12-28: required by haskell-ci 0.14.3
- retrie < 1.2.0.0 # 2022-12-30: required for hls on ghc < 9.2
- ghc-tags == 1.5.* # 2023-02-18: preserve for ghc-lib == 9.2.*
package-maintainers:
abbradar:

View file

@ -111299,6 +111299,29 @@ self: {
hydraPlatforms = lib.platforms.none;
}) {};
"ghc-tags_1_5" = callPackage
({ mkDerivation, aeson, async, attoparsec, base, bytestring
, containers, deepseq, directory, filepath, ghc, ghc-boot
, ghc-paths, optparse-applicative, process, stm, temporary, text
, time, vector, yaml
}:
mkDerivation {
pname = "ghc-tags";
version = "1.5";
sha256 = "0hscl49qq3lx2a5g6g7g1wa4rl52piizqsykicy1kvi4di7qnyqk";
isLibrary = false;
isExecutable = true;
executableHaskellDepends = [
aeson async attoparsec base bytestring containers deepseq directory
filepath ghc ghc-boot ghc-paths optparse-applicative process stm
temporary text time vector yaml
];
description = "Utility for generating ctags and etags with GHC API";
license = lib.licenses.mpl20;
hydraPlatforms = lib.platforms.none;
mainProgram = "ghc-tags";
}) {};
"ghc-tags" = callPackage
({ mkDerivation, aeson, async, attoparsec, base, bytestring
, containers, deepseq, directory, filepath, ghc-lib, ghc-paths

View file

@ -385,6 +385,14 @@ let
ghc-lib = released;
ghc-lib-parser = released;
ghc-lib-parser-ex = released;
ghc-tags = [
compilerNames.ghc8107
compilerNames.ghc902
compilerNames.ghc924
compilerNames.ghc925
compilerNames.ghc926
compilerNames.ghc944
];
weeder = [
compilerNames.ghc8107
compilerNames.ghc902