Ben Gamari pushed to branch wip/coverage at Glasgow Haskell Compiler / GHC

Commits:

3 changed files:

Changes:

  • .gitmodules
    ... ... @@ -118,3 +118,12 @@
    118 118
     [submodule "libraries/file-io"]
    
    119 119
     	path = libraries/file-io
    
    120 120
     	url = https://gitlab.haskell.org/ghc/packages/file-io.git
    
    121
    +[submodule "libraries/attoparsec"]
    
    122
    +	path = libraries/attoparsec
    
    123
    +	url = https://github.com/haskell/attoparsec
    
    124
    +[submodule "libraries/scientific"]
    
    125
    +	path = libraries/scientific
    
    126
    +	url = https://github.com/basvandijk/scientific
    
    127
    +[submodule "libraries/integer-logarithms"]
    
    128
    +	path = libraries/integer-logarithms
    
    129
    +	url = https://github.com/haskellari/integer-logarithms

  • hadrian/src/Packages.hs
    1 1
     {-# OPTIONS_GHC -fno-warn-missing-signatures #-}
    
    2 2
     module Packages (
    
    3 3
         -- * GHC packages
    
    4
    -    array, base, binary, bytestring, cabal, cabalSyntax, checkPpr,
    
    4
    +    attoparsec, array, base, binary, bytestring, cabal, cabalSyntax, checkPpr,
    
    5 5
         checkExact, countDeps,
    
    6 6
         compareSizes, compiler, containers, deepseq, deriveConstants, directory, dumpDecls,
    
    7 7
         exceptions, filepath, fileio, genapply, genprimopcode, ghc, ghcBignum, ghcBoot, ghcBootTh, ghcBootThNext, ghcPlatform,
    
    8 8
         ghcCompact, ghcConfig, ghcExperimental, ghcHeap, ghcInternal, ghci, ghciWrapper, ghcPkg, ghcPrim,
    
    9 9
         ghcToolchain, ghcToolchainBin, haddockApi, haddockLibrary, haddock, haskeline,
    
    10
    -    hsc2hs, hp2ps, hpc, hpcBin, integerGmp, iserv, iservProxy,
    
    10
    +    hsc2hs, hp2ps, hpc, hpcBin, integerGmp, integerLogarithms, iserv, iservProxy,
    
    11 11
         libffi, mtl, osString, parsec, pretty, primitive, process, remoteIserv, rts,
    
    12
    -    runGhc, semaphoreCompat, stm, templateHaskell, terminfo, text, time, timeout,
    
    12
    +    runGhc, scientific, semaphoreCompat, stm, templateHaskell, terminfo, text, time, timeout,
    
    13 13
         transformers, unlit, unix, win32, xhtml,
    
    14 14
         lintersCommon, lintNotes, lintCodes, lintCommitMsg, lintSubmoduleRefs, lintWhitespace,
    
    15 15
         ghcPackages, isGhcPackage,
    
    ... ... @@ -33,13 +33,13 @@ import Oracles.Setting
    33 33
     -- packages and modify build default build conditions in "UserSettings".
    
    34 34
     ghcPackages :: [Package]
    
    35 35
     ghcPackages =
    
    36
    -    [ array, base, binary, bytestring, cabalSyntax, cabal, checkPpr, checkExact, countDeps
    
    36
    +    [ attoparsec, array, base, binary, bytestring, cabalSyntax, cabal, checkPpr, checkExact, countDeps
    
    37 37
         , compareSizes, compiler, containers, deepseq, deriveConstants, directory, dumpDecls
    
    38 38
         , exceptions, filepath, genapply, genprimopcode, ghc, ghcBignum, ghcBoot, ghcBootTh, ghcBootThNext, ghcPlatform
    
    39 39
         , ghcCompact, ghcConfig, ghcExperimental, ghcHeap, ghcInternal, ghci, ghciWrapper, ghcPkg, ghcPrim
    
    40 40
         , ghcToolchain, ghcToolchainBin, haddockApi, haddockLibrary, haddock, haskeline, hsc2hs
    
    41
    -    , hp2ps, hpc, hpcBin, integerGmp, iserv, libffi, mtl, osString
    
    42
    -    , parsec, pretty, process, rts, runGhc, stm, semaphoreCompat, templateHaskell
    
    41
    +    , hp2ps, hpc, hpcBin, integerGmp, integerLogarithms, iserv, libffi, mtl, osString
    
    42
    +    , parsec, pretty, process, rts, runGhc, scientific, stm, semaphoreCompat, templateHaskell
    
    43 43
         , terminfo, text, time, transformers, unlit, unix, win32, xhtml, fileio
    
    44 44
         , timeout
    
    45 45
         , lintersCommon
    
    ... ... @@ -50,17 +50,18 @@ isGhcPackage :: Package -> Bool
    50 50
     isGhcPackage = (`elem` ghcPackages)
    
    51 51
     
    
    52 52
     -- | Package definitions, see 'Package'.
    
    53
    -array, base, binary, bytestring, cabalSyntax, cabal, checkPpr, checkExact, countDeps,
    
    53
    +attoparsec, array, base, binary, bytestring, cabalSyntax, cabal, checkPpr, checkExact, countDeps,
    
    54 54
       compareSizes, compiler, containers, deepseq, deriveConstants, directory, dumpDecls,
    
    55 55
       exceptions, filepath, genapply, genprimopcode, ghc, ghcBignum, ghcBoot, ghcBootTh, ghcBootThNext, ghcPlatform,
    
    56 56
       ghcCompact, ghcConfig, ghcExperimental, ghcHeap, ghci, ghcInternal, ghciWrapper, ghcPkg, ghcPrim,
    
    57 57
       ghcToolchain, ghcToolchainBin, haddockLibrary, haddockApi, haddock, haskeline, hsc2hs,
    
    58
    -  hp2ps, hpc, hpcBin, integerGmp, iserv, iservProxy, remoteIserv, libffi, mtl,
    
    58
    +  hp2ps, hpc, hpcBin, integerGmp, integerLogarithms, iserv, iservProxy, remoteIserv, libffi, mtl,
    
    59 59
       osString, parsec, pretty, primitive, process, rts, runGhc, semaphoreCompat, stm, templateHaskell,
    
    60 60
       terminfo, text, time, transformers, unlit, unix, win32, xhtml,
    
    61 61
       timeout,
    
    62 62
       lintersCommon, lintNotes, lintCodes, lintCommitMsg, lintSubmoduleRefs, lintWhitespace
    
    63 63
         :: Package
    
    64
    +attoparsec          = lib  "attoparsec"
    
    64 65
     array               = lib  "array"
    
    65 66
     base                = lib  "base"
    
    66 67
     binary              = lib  "binary"
    
    ... ... @@ -109,6 +110,7 @@ hp2ps = util "hp2ps"
    109 110
     hpc                 = lib  "hpc"
    
    110 111
     hpcBin              = util "hpc-bin"         `setPath` "utils/hpc"
    
    111 112
     integerGmp          = lib  "integer-gmp"
    
    113
    +integerLogarithms   = lib  "integer-logarithsm"
    
    112 114
     iserv               = util "iserv"
    
    113 115
     iservProxy          = util "iserv-proxy"
    
    114 116
     libffi              = top  "libffi"
    
    ... ... @@ -121,6 +123,7 @@ process = lib "process"
    121 123
     remoteIserv         = util "remote-iserv"
    
    122 124
     rts                 = top  "rts"
    
    123 125
     runGhc              = util "runghc"
    
    126
    +scientific          = lib  "scientific"
    
    124 127
     semaphoreCompat     = lib  "semaphore-compat"
    
    125 128
     stm                 = lib  "stm"
    
    126 129
     templateHaskell     = lib  "template-haskell"
    

  • hadrian/src/Settings/Default.hs
    ... ... @@ -80,7 +80,8 @@ stageBootPackages = return
    80 80
     stage0Packages :: Action [Package]
    
    81 81
     stage0Packages = do
    
    82 82
         cross <- flag CrossCompiling
    
    83
    -    return $ [ cabalSyntax
    
    83
    +    return $ [ attoparsec
    
    84
    +             , cabalSyntax
    
    84 85
                  , cabal
    
    85 86
                  , compiler
    
    86 87
                  , directory -- depends on filepath, fileIo
    
    ... ... @@ -102,9 +103,11 @@ stage0Packages = do
    102 103
                  , hpc
    
    103 104
                  , hpcBin
    
    104 105
                  , hsc2hs
    
    106
    +             , integerLogarithms
    
    105 107
                  , osString -- new library not yet present for boot compilers
    
    106 108
                  , process -- depends on filepath
    
    107 109
                  , runGhc
    
    110
    +             , scientific
    
    108 111
                  , semaphoreCompat -- depends on
    
    109 112
                  , time -- depends on win32
    
    110 113
                  , unlit