module Yu.Import.Version
(
module Data.Version
, module Development.GitRev
, module System.Info
,
compileTime
, compileOs
, compileCompiler
) where
import Data.Char
import Data.Version
import Development.GitRev
import System.Info
import Yu.Import
import Yu.Import.TH
compileTime :: Q Exp
compileTime = do
now <- formatTime defaultTimeLocale "%Y-%m-%d-%H-%M-%S" <$> runIO getCurrentTime
stringE now
compileOs :: Q Exp
compileOs = stringE $ os ++ "-" ++ arch
compileCompiler :: Q Exp
compileCompiler = stringE $ toUpper <$> compilerName ++ "-" ++ showVersion compilerVersion