Каков правильный способ для need
сгенерированного файла? Вот что я пробовал:В зависимости от сгенерированного файла
import Development.Shake
import System.IO
import Control.Monad
main = do
s <- withBinaryFile "/dev/urandom" ReadMode $ replicateM 10 . hGetChar
shakeArgs shakeOptions $ do
want ["a.out"]
"generated" *> \target -> writeFileChanged target s
"*.out" *> \out -> do
need ["generated"]
writeFile' out =<< readFile' "generated"
Но это приводит к правилу generated
не получает повторена, так a.out
остается тем же после повторных запусков.
Да, действительно, и реализация '' writeFile' '' '.out '' и генерация '' сгенерированных '' являются заглушками, стоящими для более вовлеченных операций. – Cactus