From 08d5fe7f2e13cdd3eac536649fe52709cb1c36a4 Mon Sep 17 00:00:00 2001 From: mu <59917266+4eUeP@users.noreply.github.com> Date: Fri, 23 Feb 2024 13:44:55 +0800 Subject: [PATCH] workaround for ghc9.4 --- peura/src/Peura/GHC.hs | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/peura/src/Peura/GHC.hs b/peura/src/Peura/GHC.hs index 64e3358..ed5a396 100644 --- a/peura/src/Peura/GHC.hs +++ b/peura/src/Peura/GHC.hs @@ -47,7 +47,7 @@ data GhcInfo = GhcInfo } deriving Show -getGhcInfo +getGhcInfo :: (MakeGhcTracer t, MakePeuTracer t, MakeProcessTracer t) => Tracer (Peu r) t -> FilePath -> Peu r GhcInfo getGhcInfo tracer ghc = do @@ -105,7 +105,10 @@ findGhcPkg tracer ghcInfo = do tracer' <- makeGhcTracer tracer traceWith tracer' $ TraceGhcFindGhcPkg ghcInfo - let guess = toFilePath $ ghcLibDir ghcInfo fromUnrootedFilePath "bin/ghc-pkg" + let guess = + if ghcVersion ghcInfo < mkVersion [9, 4] + then toFilePath $ ghcLibDir ghcInfo fromUnrootedFilePath "bin/ghc-pkg" + else toFilePath $ ghcLibDir ghcInfo fromUnrootedFilePath "../bin/ghc-pkg" ghcDir <- getAppUserDataDirectory "ghc" verBS <- LBS.toStrict <$> runProcessCheck tracer ghcDir guess ["--version"] @@ -182,7 +185,7 @@ data TraceGhc | TraceGhcFindGhcPkg GhcInfo | TraceGhcFindGhcPkgResult FilePath deriving (Show) - + class MakeGhcTracer t where makeGhcTracer :: Tracer (Peu r) t -> Peu r (Tracer (Peu r) TraceGhc)