| Safe Haskell | Safe-Inferred |
|---|---|
| Language | Haskell2010 |
Package.C
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
Constructors
| CPkg | |
Fields
| |
Constructors
| BuildVars | |
Fields
| |
Instances
| Binary Version Source # | |
| FromDhall Version Source # | |
Defined in Package.C.Type.Version Methods autoWith :: InputNormalizer -> Decoder Version # | |
| Eq Version Source # | |
| Ord Version Source # | |
Defined in Package.C.Type.Version | |
| Hashable Version Source # | |
Defined in Package.C.Type.Version | |
| Pretty Version Source # | |
Defined in Package.C.Type.Version | |
Constructors
| 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 |
Instances
| Eq Verbosity Source # | |
| Ord Verbosity Source # | |
data TargetTriple Source #
Constructors
| TargetTriple | |
Fields
| |
Instances
Constructors
| CreateDirectory | |
| MakeExecutable | |
| Call | |
| SymlinkBinary | |
| SymlinkManpage | |
| Symlink | |
| Write | |
| CopyFile | |
| Patch | |
Fields | |
Instances
Constructors
| Darwin | |
| Dragonfly | |
| FreeBSD | |
| Linux | |
| OpenBSD | |
| NetBSD | |
| Solaris | |
| Windows | |
| Redox | |
| Haiku | |
| IOS | |
| AIX | |
| Hurd | |
| Android | |
| NoOs |
Instances
Constructors
| 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 Methods 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)))) | |
Constructors
| InstallDb | |
Fields | |
Constructors
| BuildCfg | |
Fields
| |
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
Arguments
| :: CPkg | |
| -> Maybe TargetTriple | |
| -> Bool | Should we build static libraries? |
| -> Bool | Should we install globally? |
| -> Bool | Was this package installed manually? |
| -> [FilePath] | Shared data directories |
| -> [FilePath] | Library directories |
| -> [FilePath] | Include directories |
| -> [FilePath] | Directories to add to |
| -> PkgM () |
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 #