Cabal- A framework for packaging Haskell software

Safe HaskellSafe-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 "ming32"). So to make it more consistent and easy to use we have an OS enumeration.


Operating System

Machine Architecture

Platform is a pair of arch and OS

buildPlatform :: PlatformSource

The platform Cabal was compiled on. In most cases, LocalBuildInfo.hostPlatform should be used instead (the platform we're targeting).