Copyright | (c) Iñaki García Etxebarria 2016 |
---|---|
License | BSD-like |
Maintainer | cabal-devel@haskell.org |
Portability | portable |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
Read the list of packages available to pkg-config.
Synopsis
- newtype PkgConfigDb = PkgConfigDb (Map PkgconfigName (Maybe PkgconfigVersion))
- readPkgConfigDb :: Verbosity -> ProgramDb -> IO (Maybe PkgConfigDb)
- pkgConfigDbFromList :: [(String, String)] -> PkgConfigDb
- pkgConfigPkgIsPresent :: PkgConfigDb -> PkgconfigName -> PkgconfigVersionRange -> Bool
- pkgConfigDbPkgVersion :: PkgConfigDb -> PkgconfigName -> Maybe (Maybe PkgconfigVersion)
- getPkgConfigDbDirs :: Verbosity -> ProgramDb -> IO [FilePath]
Documentation
newtype PkgConfigDb Source #
The list of packages installed in the system visible to
pkg-config
.
If an entry is Nothing
, this means that the package seems to be present,
but we don't know the exact version (because parsing of the version number
failed).
PkgConfigDb (Map PkgconfigName (Maybe PkgconfigVersion)) |
Instances
readPkgConfigDb :: Verbosity -> ProgramDb -> IO (Maybe PkgConfigDb) Source #
Query pkg-config for the list of installed packages, together
with their versions. Return a PkgConfigDb
encapsulating this
information.
pkgConfigDbFromList :: [(String, String)] -> PkgConfigDb Source #
Create a PkgConfigDb
from a list of (packageName, version)
pairs.
pkgConfigPkgIsPresent :: PkgConfigDb -> PkgconfigName -> PkgconfigVersionRange -> Bool Source #
Check whether a given package range is satisfiable in the given
pkg-config
database.
pkgConfigDbPkgVersion :: PkgConfigDb -> PkgconfigName -> Maybe (Maybe PkgconfigVersion) Source #
Query the version of a package in the pkg-config
database.
Nothing
indicates the package is not in the database, while
Just Nothing
indicates that the package is in the database,
but its version is not known.
getPkgConfigDbDirs :: Verbosity -> ProgramDb -> IO [FilePath] Source #
Query pkg-config for the locations of pkg-config's package files. Use this to monitor for changes in the pkg-config DB.