|
1 | | -import Control.Monad (forM) |
| 1 | +import Control.Monad (forM_) |
2 | 2 | import Development.Shake |
3 | 3 | import Development.Shake.Command |
4 | 4 | import Development.Shake.FilePath |
5 | 5 | import Development.Shake.Util |
6 | 6 |
|
7 | 7 | main :: IO () |
8 | | -main = shakeArgs shakeOptions{shakeFiles="_build"} $ do |
9 | | - want ["_build/hydra-spec" <.> "pdf"] |
| 8 | +main = shakeArgs shakeOptions{shakeFiles = "_build"} $ do |
| 9 | + want ["_build/hydra-spec" <.> "pdf"] |
10 | 10 |
|
11 | | - phony "clean" $ do |
12 | | - putInfo "Cleaning files in _build" |
13 | | - removeFilesAfter "_build" ["//*"] |
| 11 | + phony "clean" $ do |
| 12 | + putInfo "Cleaning files in _build" |
| 13 | + removeFilesAfter "_build" ["//*"] |
14 | 14 |
|
15 | | - "_build/hydra-spec" <.> "pdf" %> \out -> do |
16 | | - assets <- getDirectoryFiles "src" ["//*.sty", "Hydra/Protocol/Figures/*.svg", "//*.bib", "//*.ttf"] |
17 | | - need ["_build/latex" </> c | c <- assets] |
| 15 | + "_build/hydra-spec" <.> "pdf" %> \out -> do |
| 16 | + assets <- getDirectoryFiles "src" ["//*.sty", "Hydra/Protocol/Figures/*.svg", "//*.bib", "//*.ttf"] |
| 17 | + need ["_build/latex" </> c | c <- assets] |
18 | 18 |
|
19 | | - srcs <- getDirectoryFiles "src" ["//*.lagda", "//*.tex"] |
20 | | - need ["_build/latex" </> c -<.> "tex" | c <- srcs] |
| 19 | + srcs <- getDirectoryFiles "src" ["//*.lagda", "//*.tex"] |
| 20 | + need ["_build/latex" </> c -<.> "tex" | c <- srcs] |
21 | 21 |
|
22 | | - cmd_ (Cwd "_build/latex") "latexmk -xelatex -shell-escape -halt-on-error Hydra/Protocol/Main.tex" |
23 | | - cmd_ "cp _build/latex/Main.pdf _build/hydra-spec.pdf" |
| 22 | + cmd_ (Cwd "_build/latex") "latexmk -xelatex -shell-escape -halt-on-error Hydra/Protocol/Main.tex" |
| 23 | + cmd_ "cp _build/latex/Main.pdf _build/hydra-spec.pdf" |
24 | 24 |
|
25 | | - -- Copy assets |
26 | | - forM ["sty", "svg", "bib", "ttf"] $ \ext -> |
27 | | - ("_build/latex//*." <> ext) %> \out -> do |
28 | | - let src = "src" </> dropDirectory1 (dropDirectory1 out) |
29 | | - copyFile' src out |
30 | | - |
31 | | - -- Copy or compile from lagda files |
32 | | - "_build/latex//*.tex" %> \out -> do |
| 25 | + -- Copy assets |
| 26 | + forM_ ["sty", "svg", "bib", "ttf"] $ \ext -> |
| 27 | + ("_build/latex//*." <> ext) %> \out -> do |
33 | 28 | let src = "src" </> dropDirectory1 (dropDirectory1 out) |
34 | | - b <- doesFileExist src |
35 | | - if b then do |
| 29 | + copyFile' src out |
| 30 | + |
| 31 | + -- Copy or compile from lagda files |
| 32 | + "_build/latex//*.tex" %> \out -> do |
| 33 | + let src = "src" </> dropDirectory1 (dropDirectory1 out) |
| 34 | + b <- doesFileExist src |
| 35 | + if b |
| 36 | + then do |
36 | 37 | need [src] |
37 | 38 | copyFile' src out |
38 | 39 | else do |
|
0 commit comments