Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Synopsis
- data CPkg = CPkg {
- pkgName :: String
- pkgVersion :: Version
- pkgUrl :: String
- pkgSubdir :: String
- pkgBuildDeps :: [Dep]
- pkgDeps :: [Dep]
- configureCommand :: BuildVars -> [Command]
- buildCommand :: BuildVars -> [Command]
- installCommand :: BuildVars -> [Command]
- data BuildVars = BuildVars {
- installDir :: FilePath
- currentDir :: FilePath
- targetTriple :: Maybe TargetTriple
- isCross :: Bool
- includeDirs :: [FilePath]
- preloadLibs :: [FilePath]
- shareDirs :: [FilePath]
- linkDirs :: [FilePath]
- binDirs :: [FilePath]
- buildOS :: OS
- buildArch :: Arch
- static :: Bool
- cpus :: Int
- newtype Version = Version [Natural]
- data Verbosity
- = Silent
- | Normal
- | Verbose
- | Loud
- | Diagnostic
- data TargetTriple = TargetTriple {
- arch :: Arch
- manufacturer :: Maybe Manufacturer
- os :: OS
- abi :: Maybe ABI
- data Command
- = CreateDirectory { }
- | MakeExecutable { }
- | Call { }
- | SymlinkBinary { }
- | SymlinkManpage { }
- | Symlink { }
- | Write { }
- | CopyFile { }
- | Patch { }
- data OS
- data Arch
- = X64
- | AArch
- | Arm
- | RISCV64
- | PowerPC
- | PowerPC64
- | PowerPC64le
- | Sparc64
- | S390x
- | Alpha
- | M68k
- | Mips
- | MipsEl
- | Mips64
- | Mips64El
- | X86
- | SH4
- | HPPA
- | HPPA64
- | MipsIsa32r6El
- | MipsIsa32r6
- | MipsIsa64r6El
- | MipsIsa64r6
- data Manufacturer
- data ABI
- newtype InstallDb = InstallDb {}
- data BuildCfg = BuildCfg {
- buildName :: String
- buildVersion :: Version
- pinnedBuildDeps :: [(Text, Version)]
- pinnedDeps :: [(Text, Version)]
- targetArch :: Maybe TargetTriple
- global :: Bool
- configureCmds :: [Command]
- buildCmds :: [Command]
- installCmds :: [Command]
- manual :: Bool
- data EnvVar = EnvVar {}
- type MonadDb = MonadState InstallDb
- type PkgM = StateT InstallDb (ReaderT Verbosity IO)
- type Platform = String
- data Dep = Dep {}
- buildCPkg :: CPkg -> Maybe TargetTriple -> Bool -> Bool -> Bool -> [FilePath] -> [FilePath] -> [FilePath] -> [FilePath] -> PkgM ()
- runPkgM :: Verbosity -> PkgM a -> IO a
- globalPkgDir :: MonadIO m => m FilePath
- printLinkerFlags :: (MonadIO m, MonadDb m) => String -> Maybe Platform -> m ()
- printCompilerFlags :: (MonadIO m, MonadDb m) => String -> Maybe Platform -> m ()
- printPkgConfigPath :: (MonadIO m, MonadDb m) => [String] -> Maybe Platform -> m ()
- printIncludePath :: (MonadIO m, MonadDb m) => String -> Maybe Platform -> m ()
- printLibPath :: (MonadIO m, MonadDb m) => String -> Maybe Platform -> m ()
- printLdLibPath :: (MonadIO m, MonadDb m) => [String] -> Maybe Platform -> m ()
- printCabalFlags :: (MonadIO m, MonadDb m) => [String] -> Maybe Platform -> m ()
- buildByName :: PackId -> Maybe TargetTriple -> Maybe String -> Bool -> Bool -> PkgM ()
- uninstallPkgByName :: (MonadReader Verbosity m, MonadIO m, MonadDb m) => String -> Maybe TargetTriple -> m ()
- garbageCollect :: (MonadIO m, MonadDb m, MonadReader Verbosity m) => m ()
- cleanCache :: MonadIO m => m ()
- cPkgDhallToCPkg :: CPkg -> CPkg
- getCPkg :: Verbosity -> FilePath -> IO CPkg
- getPkgs :: Verbosity -> FilePath -> IO [CPkg]
- displayPackageSet :: Maybe String -> IO ()
- displayPackage :: String -> IO ()
- allPackages :: IO [String]
- parseTriple :: Parser TargetTriple
- parseTripleIO :: MonadIO m => String -> m TargetTriple
- parseHostIO :: MonadIO m => Maybe Platform -> m (Maybe TargetTriple)
- defaultPackageSetHash :: Text
Types
CPkg | |
|
BuildVars | |
|
Instances
Silent | Display nothing |
Normal | Display progress information |
Verbose | Display stderr from builds |
Loud | Display stdout and stderr from builds |
Diagnostic | Display stdout and stderr from builds, and display debug information |
data TargetTriple Source #
TargetTriple | |
|
Instances
Instances
Instances
X64 | |
AArch | |
Arm | |
RISCV64 | |
PowerPC | |
PowerPC64 | |
PowerPC64le | |
Sparc64 | |
S390x | |
Alpha | |
M68k | |
Mips | |
MipsEl | |
Mips64 | |
Mips64El | |
X86 | |
SH4 | |
HPPA | |
HPPA64 | |
MipsIsa32r6El | |
MipsIsa32r6 | |
MipsIsa64r6El | |
MipsIsa64r6 |
Instances
data Manufacturer Source #
Instances
Instances
Generic ABI Source # | |
Binary ABI Source # | |
ToDhall ABI Source # | |
Defined in Package.C.Triple.Type injectWith :: InputNormalizer -> Encoder ABI # | |
Eq ABI Source # | |
Ord ABI Source # | |
Hashable ABI Source # | |
Defined in Package.C.Triple.Type | |
Pretty ABI Source # | |
Defined in Package.C.Triple.Type | |
type Rep ABI Source # | |
Defined in Package.C.Triple.Type type Rep ABI = D1 ('MetaData "ABI" "Package.C.Triple.Type" "cpkg-0.2.5.8-inplace" 'False) ((C1 ('MetaCons "GNU" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "GNUabi64" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "GNUeabi" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "GNUeabihf" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "GNUspe" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "MinGw" 'PrefixI 'False) (U1 :: Type -> Type)))) |
BuildCfg | |
|
Instances
Instances
Generic EnvVar Source # | |
Binary EnvVar Source # | |
Eq EnvVar Source # | |
Ord EnvVar Source # | |
Hashable EnvVar Source # | |
Defined in Package.C.Type | |
type Rep EnvVar Source # | |
Defined in Package.C.Type type Rep EnvVar = D1 ('MetaData "EnvVar" "Package.C.Type" "cpkg-0.2.5.8-inplace" 'False) (C1 ('MetaCons "EnvVar" 'PrefixI 'True) (S1 ('MetaSel ('Just "var") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String) :*: S1 ('MetaSel ('Just "value") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String))) |
type MonadDb = MonadState InstallDb Source #
Functions
globalPkgDir :: MonadIO m => m FilePath Source #
buildByName :: PackId -> Maybe TargetTriple -> Maybe String -> Bool -> Bool -> PkgM () Source #
Manually install a package
uninstallPkgByName :: (MonadReader Verbosity m, MonadIO m, MonadDb m) => String -> Maybe TargetTriple -> m () Source #
Since: 0.2.3.0
garbageCollect :: (MonadIO m, MonadDb m, MonadReader Verbosity m) => m () Source #
cleanCache :: MonadIO m => m () Source #
Since: 0.2.3.0
Dhall functionality
cPkgDhallToCPkg :: CPkg -> CPkg Source #
Packaging
displayPackage :: String -> IO () Source #
allPackages :: IO [String] Source #
Parsers
parseTriple :: Parser TargetTriple Source #
parseTripleIO :: MonadIO m => String -> m TargetTriple Source #
parseHostIO :: MonadIO m => Maybe Platform -> m (Maybe TargetTriple) Source #