From a203ad854ffee802e6bf0aca26e6c9a99bec3865 Mon Sep 17 00:00:00 2001 From: Sylvain Henry Date: Thu, 12 Jan 2023 10:11:58 +0100 Subject: Merge libiserv with ghci `libiserv` serves no purpose. As it depends on `ghci` and doesn't have more dependencies than the `ghci` package, its code could live in the `ghci` package too. This commit also moves most of the code from the `iserv` program into the `ghci` package as well so that it can be reused. This is especially useful for the implementation of TH for the JS backend (#22261, !9779). --- hadrian/src/Packages.hs | 7 +++---- hadrian/src/Rules/Documentation.hs | 1 - hadrian/src/Rules/Generate.hs | 2 -- hadrian/src/Settings/Default.hs | 1 - hadrian/src/Settings/Packages.hs | 6 +++--- 5 files changed, 6 insertions(+), 11 deletions(-) (limited to 'hadrian') diff --git a/hadrian/src/Packages.hs b/hadrian/src/Packages.hs index 449004ed92..6dbeb6ed14 100644 --- a/hadrian/src/Packages.hs +++ b/hadrian/src/Packages.hs @@ -7,7 +7,7 @@ module Packages ( exceptions, filepath, genapply, genprimopcode, ghc, ghcBignum, ghcBoot, ghcBootTh, ghcCompact, ghcConfig, ghcHeap, ghci, ghciWrapper, ghcPkg, ghcPrim, haddock, haskeline, hsc2hs, hp2ps, hpc, hpcBin, integerGmp, integerSimple, iserv, iservProxy, - libffi, libiserv, mtl, parsec, pretty, primitive, process, remoteIserv, rts, + libffi, mtl, parsec, pretty, primitive, process, remoteIserv, rts, runGhc, stm, templateHaskell, terminfo, text, time, timeout, touchy, transformers, unlit, unix, win32, xhtml, lintersCommon, lintNotes, lintCommitMsg, lintSubmoduleRefs, lintWhitespace, @@ -38,7 +38,7 @@ ghcPackages = , compareSizes, compiler, containers, deepseq, deriveConstants, directory , exceptions, filepath, genapply, genprimopcode, ghc, ghcBignum, ghcBoot, ghcBootTh , ghcCompact, ghcConfig, ghcHeap, ghci, ghciWrapper, ghcPkg, ghcPrim, haddock, haskeline, hsc2hs - , hp2ps, hpc, hpcBin, integerGmp, integerSimple, iserv, libffi, libiserv, mtl + , hp2ps, hpc, hpcBin, integerGmp, integerSimple, iserv, libffi, mtl , parsec, pretty, process, rts, runGhc, stm, templateHaskell , terminfo, text, time, touchy, transformers, unlit, unix, win32, xhtml , timeout @@ -54,7 +54,7 @@ array, base, binary, bytestring, cabalSyntax, cabal, checkPpr, checkExact, count compareSizes, compiler, containers, deepseq, deriveConstants, directory, exceptions, filepath, genapply, genprimopcode, ghc, ghcBignum, ghcBoot, ghcBootTh, ghcCompact, ghcConfig, ghcHeap, ghci, ghciWrapper, ghcPkg, ghcPrim, haddock, haskeline, hsc2hs, - hp2ps, hpc, hpcBin, integerGmp, integerSimple, iserv, iservProxy, remoteIserv, libffi, libiserv, mtl, + hp2ps, hpc, hpcBin, integerGmp, integerSimple, iserv, iservProxy, remoteIserv, libffi, mtl, parsec, pretty, primitive, process, rts, runGhc, stm, templateHaskell, terminfo, text, time, touchy, transformers, unlit, unix, win32, xhtml, timeout, @@ -102,7 +102,6 @@ integerSimple = lib "integer-simple" iserv = util "iserv" iservProxy = util "iserv-proxy" libffi = top "libffi" -libiserv = lib "libiserv" mtl = lib "mtl" parsec = lib "parsec" pretty = lib "pretty" diff --git a/hadrian/src/Rules/Documentation.hs b/hadrian/src/Rules/Documentation.hs index 27aece61d2..c982642b32 100644 --- a/hadrian/src/Rules/Documentation.hs +++ b/hadrian/src/Rules/Documentation.hs @@ -76,7 +76,6 @@ needDocDeps = do [ ghcBoot , ghcBootTh , ghci - , libiserv , compiler , ghcHeap , templateHaskell diff --git a/hadrian/src/Rules/Generate.hs b/hadrian/src/Rules/Generate.hs index e6e5ecd96b..fbd6f8d9aa 100644 --- a/hadrian/src/Rules/Generate.hs +++ b/hadrian/src/Rules/Generate.hs @@ -326,7 +326,6 @@ templateRules = do templateRule "driver/ghci/ghci-wrapper.cabal" $ projectVersion templateRule "ghc/ghc-bin.cabal" $ projectVersion templateRule "utils/iserv/iserv.cabal" $ projectVersion - templateRule "utils/iserv-proxy/iserv-proxy.cabal" $ projectVersion templateRule "utils/remote-iserv/remote-iserv.cabal" $ projectVersion templateRule "utils/runghc/runghc.cabal" $ projectVersion templateRule "libraries/ghc-boot/ghc-boot.cabal" $ projectVersion @@ -334,7 +333,6 @@ templateRules = do templateRule "libraries/ghci/ghci.cabal" $ projectVersion templateRule "libraries/ghc-heap/ghc-heap.cabal" $ projectVersion templateRule "utils/ghc-pkg/ghc-pkg.cabal" $ projectVersion - templateRule "libraries/libiserv/libiserv.cabal" $ projectVersion templateRule "libraries/template-haskell/template-haskell.cabal" $ projectVersion templateRule "libraries/prologue.txt" $ packageVersions diff --git a/hadrian/src/Settings/Default.hs b/hadrian/src/Settings/Default.hs index 3781c3d490..5996924096 100644 --- a/hadrian/src/Settings/Default.hs +++ b/hadrian/src/Settings/Default.hs @@ -151,7 +151,6 @@ stage1Packages = do [ haddock , hpcBin , iserv - , libiserv , runGhc ] , when (winTarget && not cross) diff --git a/hadrian/src/Settings/Packages.hs b/hadrian/src/Settings/Packages.hs index 39ba685255..e2afd72ee5 100644 --- a/hadrian/src/Settings/Packages.hs +++ b/hadrian/src/Settings/Packages.hs @@ -116,9 +116,9 @@ packageArgs = do [ -- The use case here is that we want to build @iserv-proxy@ for the -- cross compiler. That one needs to be compiled by the bootstrap - -- compiler as it needs to run on the host. Hence @libiserv@ needs - -- @GHCi.TH@, @GHCi.Message@ and @GHCi.Run@ from @ghci@. And those are - -- behind the @-finternal-interpreter@ flag. + -- compiler as it needs to run on the host. Hence @iserv@ needs + -- @GHCi.TH@, @GHCi.Message@, @GHCi.Run@, and @GHCi.Server@ from + -- @ghci@. And those are behind the @-finternal-interpreter@ flag. -- -- But it may not build if we have made some changes to ghci's -- dependencies (see #16051). -- cgit v1.2.1