module MagicHaskeller.VersionInfo where
import Data.Time
import Language.Haskell.TH
#ifdef CABAL
import Paths_MagicHaskeller(version)
import Data.Version(showVersion)
#endif
versionInfo, mhVersion, ghcVersion, now :: String
versionInfo = mhVersion ++ " built with GHC-" ++ ghcVersion ++ " at " ++ now
#ifdef CABAL
mhVersion = showVersion version
#else
mhVersion = ""
#endif
ghcVersion = case __GLASGOW_HASKELL__ `divMod` 100 of (b,s) -> shows b $ '.' : show s
now = $(runIO getCurrentTime >>= \t -> return (LitE $ StringL $ show t))