Portability | portable |
---|---|
Maintainer | cabal-devel@haskell.org |
Safe Haskell | Safe-Inferred |
Cabal often needs to do slightly different things on specific platforms. You
probably know about the os
however using that is very
inconvenient because it is a string and different Haskell implementations
do not agree on using the same strings for the same platforms! (In
particular see the controversy over "windows" vs "mingw32"). So to make it
more consistent and easy to use we have an OS
enumeration.
Operating System
data OS
Machine Architecture
data Arch
Platform is a pair of arch and OS
data Platform
The platform Cabal was compiled on. In most cases,
LocalBuildInfo.hostPlatform
should be used instead (the platform we're
targeting).
platformFromTriple :: String -> Maybe Platform
Internal
knownArches :: [Arch]