kansas-lava-shake-0.1.1: src/Development/KansasLava/Shake.hs
module Development.KansasLava.Shake
( lavaRules
) where
import Development.Shake
import Development.Shake.FilePath
import Language.KansasLava.VHDL (writeVhdlPrelude)
lavaRules :: FilePath -> String -> String -> Rules ()
lavaRules modName vhdl ucf = do
gensrc modName <.> "vhdl" *> \target -> do
alwaysRerun
writeFileChanged target vhdl
gensrc modName <.> "ucf" *> \target -> do
alwaysRerun
writeFileChanged target ucf
gensrc "lava-prelude.vhdl" *> liftIO . writeVhdlPrelude
where
gensrc f = "gensrc" </> f