Safe Haskell | None |
---|---|
Language | Haskell2010 |
Distribution.Types.ForeignLib
Synopsis
- data ForeignLib = ForeignLib {}
- emptyForeignLib :: ForeignLib
- foreignLibModules :: ForeignLib -> [ModuleName]
- foreignLibIsShared :: ForeignLib -> Bool
- foreignLibVersion :: ForeignLib -> OS -> [Int]
- data LibVersionInfo
- mkLibVersionInfo :: (Int, Int, Int) -> LibVersionInfo
- libVersionInfoCRA :: LibVersionInfo -> (Int, Int, Int)
- libVersionNumber :: LibVersionInfo -> (Int, Int, Int)
- libVersionNumberShow :: LibVersionInfo -> String
- libVersionMajor :: LibVersionInfo -> Int
Documentation
data ForeignLib Source #
A foreign library stanza is like a library stanza, except that the built code is intended for consumption by a non-Haskell client.
Constructors
ForeignLib | |
Fields
|
Instances
emptyForeignLib :: ForeignLib Source #
An empty foreign library.
foreignLibModules :: ForeignLib -> [ModuleName] Source #
Modules defined by a foreign library.
foreignLibIsShared :: ForeignLib -> Bool Source #
Is the foreign library shared?
foreignLibVersion :: ForeignLib -> OS -> [Int] Source #
Get a version number for a foreign library. If we're on Linux, and a Linux version is specified, use that. If we're on Linux, and libtool-style version-info is specified, translate that field into appropriate version numbers. Otherwise, this feature is unsupported so we don't return any version data.
data LibVersionInfo Source #
Instances
Parsec LibVersionInfo Source # | |||||
Defined in Distribution.Types.ForeignLib Methods parsec :: CabalParsing m => m LibVersionInfo Source # | |||||
Pretty LibVersionInfo Source # | |||||
Defined in Distribution.Types.ForeignLib Methods pretty :: LibVersionInfo -> Doc Source # prettyVersioned :: CabalSpecVersion -> LibVersionInfo -> Doc Source # | |||||
Structured LibVersionInfo Source # | |||||
Defined in Distribution.Types.ForeignLib Methods structure :: Proxy LibVersionInfo -> Structure Source # structureHash' :: Tagged LibVersionInfo MD5 | |||||
Binary LibVersionInfo Source # | |||||
Defined in Distribution.Types.ForeignLib Methods put :: LibVersionInfo -> Put Source # get :: Get LibVersionInfo Source # putList :: [LibVersionInfo] -> Put Source # | |||||
NFData LibVersionInfo Source # | |||||
Defined in Distribution.Types.ForeignLib Methods rnf :: LibVersionInfo -> () Source # | |||||
Data LibVersionInfo Source # | |||||
Defined in Distribution.Types.ForeignLib Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> LibVersionInfo -> c LibVersionInfo # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c LibVersionInfo # toConstr :: LibVersionInfo -> Constr # dataTypeOf :: LibVersionInfo -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c LibVersionInfo) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c LibVersionInfo) # gmapT :: (forall b. Data b => b -> b) -> LibVersionInfo -> LibVersionInfo # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> LibVersionInfo -> r # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> LibVersionInfo -> r # gmapQ :: (forall d. Data d => d -> u) -> LibVersionInfo -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> LibVersionInfo -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> LibVersionInfo -> m LibVersionInfo # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> LibVersionInfo -> m LibVersionInfo # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> LibVersionInfo -> m LibVersionInfo # | |||||
Generic LibVersionInfo Source # | |||||
Defined in Distribution.Types.ForeignLib Associated Types
Methods from :: LibVersionInfo -> Rep LibVersionInfo x # to :: Rep LibVersionInfo x -> LibVersionInfo # | |||||
Read LibVersionInfo Source # | |||||
Defined in Distribution.Types.ForeignLib Methods readsPrec :: Int -> ReadS LibVersionInfo # readList :: ReadS [LibVersionInfo] # | |||||
Show LibVersionInfo Source # | |||||
Defined in Distribution.Types.ForeignLib Methods showsPrec :: Int -> LibVersionInfo -> ShowS # show :: LibVersionInfo -> String # showList :: [LibVersionInfo] -> ShowS # | |||||
Eq LibVersionInfo Source # | |||||
Defined in Distribution.Types.ForeignLib Methods (==) :: LibVersionInfo -> LibVersionInfo -> Bool # (/=) :: LibVersionInfo -> LibVersionInfo -> Bool # | |||||
Ord LibVersionInfo Source # | |||||
Defined in Distribution.Types.ForeignLib Methods compare :: LibVersionInfo -> LibVersionInfo -> Ordering # (<) :: LibVersionInfo -> LibVersionInfo -> Bool # (<=) :: LibVersionInfo -> LibVersionInfo -> Bool # (>) :: LibVersionInfo -> LibVersionInfo -> Bool # (>=) :: LibVersionInfo -> LibVersionInfo -> Bool # max :: LibVersionInfo -> LibVersionInfo -> LibVersionInfo # min :: LibVersionInfo -> LibVersionInfo -> LibVersionInfo # | |||||
type Rep LibVersionInfo Source # | |||||
Defined in Distribution.Types.ForeignLib type Rep LibVersionInfo = D1 ('MetaData "LibVersionInfo" "Distribution.Types.ForeignLib" "Cabal-syntax-3.11.0.0-97f9" 'False) (C1 ('MetaCons "LibVersionInfo" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int)))) |
mkLibVersionInfo :: (Int, Int, Int) -> LibVersionInfo Source #
Construct LibVersionInfo
from (current, revision, age)
numbers.
For instance, mkLibVersionInfo (3,0,0)
constructs a
LibVersionInfo
representing the version-info 3:0:0
.
All version components must be non-negative.
libVersionInfoCRA :: LibVersionInfo -> (Int, Int, Int) Source #
From a given LibVersionInfo
, extract the (current, revision,
age)
numbers.
libVersionNumber :: LibVersionInfo -> (Int, Int, Int) Source #
Given a version-info field, produce a major.minor.build
version
libVersionNumberShow :: LibVersionInfo -> String Source #
Given a version-info field, return "major.minor.build"
as a
String
libVersionMajor :: LibVersionInfo -> Int Source #
Return the major
version of a version-info field.