PackageData.hs 1.29 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
module Hadrian.Haskell.Cabal.PackageData where

import Development.Shake.Classes
import Hadrian.Package.Type
import GHC.Generics

data PackageData = PackageData
    { dependencies :: [PackageName]
    , name         :: PackageName
    , version      :: String
    -- * used to be pkg Data
    , componentId  :: String
    , modules      :: [String]
    , otherModules :: [String]
    , synopsis     :: String
    , description  :: String
    , srcDirs      :: [String]
    , deps         :: [String]
    , depIpIds     :: [String]
    , depNames     :: [String]
    , depCompIds   :: [String]
    , includeDirs  :: [String]
    , includes     :: [String]
    , installIncludes :: [String]
    , extraLibs    :: [String]
    , extraLibDirs :: [String]
    , asmSrcs      :: [String]
    , cSrcs        :: [String]
    , cmmSrcs      :: [String]
    , dataFiles    :: [String]
    , hcOpts       :: [String]
    , asmOpts      :: [String]
    , ccOpts       :: [String]
    , cmmOpts      :: [String]
    , cppOpts      :: [String]
    , ldOpts       :: [String]
    , depIncludeDirs :: [String]
    , depCcOpts    :: [String]
    , depLdOpts    :: [String]
    , buildGhciLib :: Bool
    } deriving (Eq, Read, Show, Typeable, Generic)

instance Binary PackageData

instance Hashable PackageData
instance NFData PackageData