    module Paths_Cabal (
        version,
        getBinDir, getLibDir, getDataDir, getLibexecDir,
        getDataFileName, getSysconfDir
      ) where

    import qualified Control.Exception as Exception
    import Data.Version (Version(..))
    import System.Environment (getEnv)
    import Prelude

    catchIO :: IO a -> (Exception.IOException -> IO a) -> IO a
    catchIO = Exception.catch

    version :: Version
    version = Version [1,22,4,0] []
    bindir, libdir, datadir, libexecdir, sysconfdir :: FilePath

    bindir     = "/usr/local/bin"
    libdir     = "/usr/local/lib/i386-freebsd-ghc-7.10.2/Cabal-1.22.4.0-96aI7pZyaxU3dsgngOxbdK"
    datadir    = "/usr/local/share/i386-freebsd-ghc-7.10.2/Cabal-1.22.4.0"
    libexecdir = "/usr/local/libexec"
    sysconfdir = "/usr/local/etc"

    getBinDir, getLibDir, getDataDir, getLibexecDir, getSysconfDir :: IO FilePath
    getBinDir = catchIO (getEnv "Cabal_bindir") (\_ -> return bindir)
    getLibDir = catchIO (getEnv "Cabal_libdir") (\_ -> return libdir)
    getDataDir = catchIO (getEnv "Cabal_datadir") (\_ -> return datadir)
    getLibexecDir = catchIO (getEnv "Cabal_libexecdir") (\_ -> return libexecdir)
    getSysconfDir = catchIO (getEnv "Cabal_sysconfdir") (\_ -> return sysconfdir)

    getDataFileName :: FilePath -> IO FilePath
    getDataFileName name = do
      dir <- getDataDir
      return (dir ++ "/" ++ name)