cabal-version: >= 1.18 build-type: Simple name: shake version: 0.16.2 x-revision: 2 license: BSD3 license-file: LICENSE category: Development, Shake author: Neil Mitchell maintainer: Neil Mitchell copyright: Neil Mitchell 2011-2018 synopsis: Build system library, like Make, but more accurate dependencies. description: Shake is a Haskell library for writing build systems - designed as a replacement for @make@. See "Development.Shake" for an introduction, including an example. Further examples are included in the Cabal tarball, under the @Examples@ directory. The homepage contains links to a user manual, an academic paper and further information: . To use Shake the user writes a Haskell program that imports "Development.Shake", defines some build rules, and calls the 'Development.Shake.shakeArgs' function. Thanks to do notation and infix operators, a simple Shake build system is not too dissimilar from a simple Makefile. However, as build systems get more complex, Shake is able to take advantage of the excellent abstraction facilities offered by Haskell and easily support much larger projects. The Shake library provides all the standard features available in other build systems, including automatic parallelism and minimal rebuilds. Shake also provides more accurate dependency tracking, including seamless support for generated files, and dependencies on system information (e.g. compiler version). homepage: http://shakebuild.com bug-reports: https://github.com/ndmitchell/shake/issues tested-with: GHC==8.2.2, GHC==8.0.2, GHC==7.10.3, GHC==7.8.4, GHC==7.6.3, GHC==7.4.2 extra-doc-files: CHANGES.txt README.md extra-source-files: docs/Manual.md docs/shake-progress.png src/Paths.hs src/Test/C/constants.c src/Test/C/constants.h src/Test/C/main.c src/Test/Ninja/*.ninja src/Test/Ninja/*.output src/Test/Ninja/subdir/*.ninja src/Test/Progress/*.prog src/Test/Tar/list.txt src/Test/Tup/hello.c src/Test/Tup/newmath/root.cfg src/Test/Tup/newmath/square.c src/Test/Tup/newmath/square.h src/Test/Tup/root.cfg data-files: docs/manual/build.bat docs/manual/Build.hs docs/manual/build.sh docs/manual/constants.c docs/manual/constants.h docs/manual/main.c html/profile.html html/progress.html html/shake.js html/viz.js source-repository head type: git location: https://github.com/ndmitchell/shake.git flag portable default: False manual: True description: Obtain FileTime using portable functions library default-language: Haskell2010 hs-source-dirs: src build-depends: base >= 4.5, binary, bytestring, deepseq >= 1.1, directory, extra >= 1.6.1 && <1.7, filepath, hashable >= 1.1.2.3, js-flot, js-jquery, primitive, process >= 1.1, random, time, transformers >= 0.2, unordered-containers >= 0.2.7, utf8-string >= 0.3 if flag(portable) cpp-options: -DPORTABLE if impl(ghc < 7.6) build-depends: old-time else if !os(windows) build-depends: unix >= 2.5.1 if !os(windows) build-depends: unix if impl(ghc < 8.0) build-depends: semigroups >= 0.18 exposed-modules: Development.Shake Development.Shake.Classes Development.Shake.Command Development.Shake.Config Development.Shake.FilePath Development.Shake.Forward Development.Shake.Rule Development.Shake.Util other-modules: Development.Ninja.Env Development.Ninja.Lexer Development.Ninja.Parse Development.Ninja.Type Development.Shake.Internal.Args Development.Shake.Internal.CmdOption Development.Shake.Internal.Core.Action Development.Shake.Internal.Core.Database Development.Shake.Internal.Core.Monad Development.Shake.Internal.Core.Pool Development.Shake.Internal.Core.Rendezvous Development.Shake.Internal.Core.Rules Development.Shake.Internal.Core.Run Development.Shake.Internal.Core.Storage Development.Shake.Internal.Core.Types Development.Shake.Internal.Demo Development.Shake.Internal.Derived Development.Shake.Internal.Errors Development.Shake.Internal.FileInfo Development.Shake.Internal.FileName Development.Shake.Internal.FilePattern Development.Shake.Internal.Options Development.Shake.Internal.Profile Development.Shake.Internal.Progress Development.Shake.Internal.Resource Development.Shake.Internal.Rules.Directory Development.Shake.Internal.Rules.File Development.Shake.Internal.Rules.Files Development.Shake.Internal.Rules.Oracle Development.Shake.Internal.Rules.OrderOnly Development.Shake.Internal.Rules.Rerun Development.Shake.Internal.Shake Development.Shake.Internal.Value General.Bag General.Bilist General.Binary General.Chunks General.Cleanup General.Concurrent General.Extra General.FileLock General.GetOpt General.Ids General.Intern General.ListBuilder General.Makefile General.Process General.Template General.Timing Paths_shake executable shake default-language: Haskell2010 hs-source-dirs: src ghc-options: -main-is Run.main main-is: Run.hs ghc-options: -rtsopts -- GHC bug 7646 means -threaded causes errors if impl(ghc >= 7.8) ghc-options: -threaded "-with-rtsopts=-I0 -qg -qb" build-depends: base == 4.*, binary, bytestring, deepseq >= 1.1, directory, extra >= 1.6.1, filepath, hashable >= 1.1.2.3, js-flot, js-jquery, primitive, process >= 1.1, random, time, transformers >= 0.2, unordered-containers >= 0.2.7, utf8-string >= 0.3 if flag(portable) cpp-options: -DPORTABLE if impl(ghc < 7.6) build-depends: old-time else if !os(windows) build-depends: unix >= 2.5.1 if !os(windows) build-depends: unix if impl(ghc < 8.0) build-depends: semigroups >= 0.18 other-modules: Development.Ninja.All Development.Ninja.Env Development.Ninja.Lexer Development.Ninja.Parse Development.Ninja.Type Development.Shake Development.Shake.Classes Development.Shake.Command Development.Shake.FilePath Development.Shake.Internal.Args Development.Shake.Internal.CmdOption Development.Shake.Internal.Core.Action Development.Shake.Internal.Core.Database Development.Shake.Internal.Core.Monad Development.Shake.Internal.Core.Pool Development.Shake.Internal.Core.Rendezvous Development.Shake.Internal.Core.Rules Development.Shake.Internal.Core.Run Development.Shake.Internal.Core.Storage Development.Shake.Internal.Core.Types Development.Shake.Internal.Demo Development.Shake.Internal.Derived Development.Shake.Internal.Errors Development.Shake.Internal.FileInfo Development.Shake.Internal.FileName Development.Shake.Internal.FilePattern Development.Shake.Internal.Options Development.Shake.Internal.Profile Development.Shake.Internal.Progress Development.Shake.Internal.Resource Development.Shake.Internal.Rules.Directory Development.Shake.Internal.Rules.File Development.Shake.Internal.Rules.Files Development.Shake.Internal.Rules.Oracle Development.Shake.Internal.Rules.OrderOnly Development.Shake.Internal.Rules.Rerun Development.Shake.Internal.Shake Development.Shake.Internal.Value General.Bag General.Bilist General.Binary General.Chunks General.Cleanup General.Concurrent General.Extra General.FileLock General.GetOpt General.Ids General.Intern General.ListBuilder General.Makefile General.Process General.Template General.Timing Paths_shake test-suite shake-test default-language: Haskell2010 type: exitcode-stdio-1.0 main-is: Test.hs hs-source-dirs: src ghc-options: -main-is Test.main -rtsopts if impl(ghc >= 7.6) -- space leak introduced by -O1 in 7.4, see #445 ghc-options: -with-rtsopts=-K1K if impl(ghc >= 7.8) -- GHC bug 7646 (fixed in 7.8) means -threaded causes errors ghc-options: -threaded build-depends: base == 4.*, binary, bytestring, deepseq >= 1.1, directory, extra >= 1.6.1, filepath, hashable >= 1.1.2.3, js-flot, js-jquery, primitive, process >= 1.1, QuickCheck >= 2.0, random, time, transformers >= 0.2, unordered-containers >= 0.2.7, utf8-string >= 0.3 if flag(portable) cpp-options: -DPORTABLE if impl(ghc < 7.6) build-depends: old-time else if !os(windows) build-depends: unix >= 2.5.1 if !os(windows) build-depends: unix if impl(ghc < 8.0) build-depends: semigroups >= 0.18 other-modules: Development.Ninja.All Development.Ninja.Env Development.Ninja.Lexer Development.Ninja.Parse Development.Ninja.Type Development.Shake Development.Shake.Classes Development.Shake.Command Development.Shake.Config Development.Shake.FilePath Development.Shake.Forward Development.Shake.Internal.Args Development.Shake.Internal.CmdOption Development.Shake.Internal.Core.Action Development.Shake.Internal.Core.Database Development.Shake.Internal.Core.Monad Development.Shake.Internal.Core.Pool Development.Shake.Internal.Core.Rendezvous Development.Shake.Internal.Core.Rules Development.Shake.Internal.Core.Run Development.Shake.Internal.Core.Storage Development.Shake.Internal.Core.Types Development.Shake.Internal.Demo Development.Shake.Internal.Derived Development.Shake.Internal.Errors Development.Shake.Internal.FileInfo Development.Shake.Internal.FileName Development.Shake.Internal.FilePattern Development.Shake.Internal.Options Development.Shake.Internal.Profile Development.Shake.Internal.Progress Development.Shake.Internal.Resource Development.Shake.Internal.Rules.Directory Development.Shake.Internal.Rules.File Development.Shake.Internal.Rules.Files Development.Shake.Internal.Rules.Oracle Development.Shake.Internal.Rules.OrderOnly Development.Shake.Internal.Rules.Rerun Development.Shake.Internal.Shake Development.Shake.Internal.Value Development.Shake.Rule Development.Shake.Util General.Bag General.Bilist General.Binary General.Chunks General.Cleanup General.Concurrent General.Extra General.FileLock General.GetOpt General.Ids General.Intern General.ListBuilder General.Makefile General.Process General.Template General.Timing Paths_shake Run Test.Basic Test.Batch Test.Benchmark Test.C Test.Cache Test.Command Test.Config Test.Digest Test.Directory Test.Docs Test.Errors Test.Existence Test.FileLock Test.FilePath Test.FilePattern Test.Files Test.Forward Test.Journal Test.Lint Test.Live Test.Manual Test.Match Test.Monad Test.Ninja Test.Oracle Test.OrderOnly Test.Parallel Test.Pool Test.Progress Test.Random Test.Rebuild Test.Resources Test.Self Test.Tar Test.Tup Test.Type Test.Unicode Test.Util Test.Verbosity Test.Version