cabal-version: >= 1.10 build-type: Simple name: shake version: 0.11 license: BSD3 license-file: LICENSE category: Development author: Neil Mitchell maintainer: Neil Mitchell copyright: Neil Mitchell 2011-2014 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: https://github.com/ndmitchell/shake tested-with: GHC==7.6.3, GHC==7.4.2, GHC==7.2.2 extra-source-files: Examples/C/constants.c Examples/C/constants.h Examples/C/main.c Examples/MakeTutor/Makefile Examples/MakeTutor/hellofunc.c Examples/MakeTutor/hellomake.c Examples/MakeTutor/hellomake.h Examples/Tar/list.txt Examples/Ninja/*.ninja Paths.hs CHANGES.txt data-files: html/jquery.flot.js html/jquery.flot.stack.js html/jquery.js html/viz.js html/report.html html/shake-logic.js html/shake-ui.js html/shake-util.js source-repository head type: git location: https://github.com/ndmitchell/shake.git flag portable default: False description: Obtain FileTime using portable functions library default-language: Haskell2010 build-depends: base == 4.*, old-time, directory, hashable >= 1.1.2.3 && < 1.3, binary, filepath, process >= 1.1, unordered-containers >= 0.2.1 && < 0.3, bytestring, utf8-string >= 0.3, time, random, transformers >= 0.2 && < 0.4, deepseq >= 1.1 && < 1.4 if flag(portable) cpp-options: -DPORTABLE else if !os(windows) build-depends: unix >= 2.5.1 exposed-modules: Development.Shake Development.Shake.Classes Development.Shake.Command Development.Shake.FilePath Development.Shake.Rule Development.Shake.Sys Development.Shake.Util other-modules: Development.Shake.Args Development.Shake.ByteString Development.Shake.Core Development.Shake.Database Development.Shake.Derived Development.Shake.Errors Development.Shake.FilePattern Development.Shake.FileTime Development.Shake.Pool Development.Shake.Progress Development.Shake.Report Development.Shake.Resource Development.Shake.Rules.Directory Development.Shake.Rules.File Development.Shake.Rules.Files Development.Shake.Rules.Oracle Development.Shake.Rules.OrderOnly Development.Shake.Rules.Rerun Development.Shake.Shake Development.Shake.Special Development.Shake.Storage Development.Shake.Types Development.Shake.Value General.Base General.Binary General.Intern General.String General.Timing Paths_shake executable shake default-language: Haskell2010 main-is: Main.hs ghc-options: -threaded -rtsopts "-with-rtsopts=-I0 -qg -qb" build-depends: base == 4.*, old-time, directory, hashable >= 1.1.2.3 && < 1.3, binary, filepath, process >= 1.1, unordered-containers >= 0.2.1 && < 0.3, bytestring, utf8-string >= 0.3, time, random, transformers >= 0.2 && < 0.4, deepseq >= 1.1 && < 1.4 if flag(portable) cpp-options: -DPORTABLE else if !os(windows) build-depends: unix >= 2.5.1 other-modules: Development.Make.All Development.Make.Env Development.Make.Parse Development.Make.Rules Development.Make.Type Development.Ninja.All Development.Ninja.Env Development.Ninja.Lexer Development.Ninja.Parse Development.Ninja.Type Start test-suite shake-test default-language: Haskell2010 type: exitcode-stdio-1.0 main-is: Test.hs ghc-options: -rtsopts build-depends: base == 4.*, old-time, directory, hashable >= 1.1.2.3 && < 1.3, binary, filepath, process >= 1.1, unordered-containers >= 0.2.1 && < 0.3, bytestring, utf8-string >= 0.3, time, random, transformers >= 0.2 && < 0.4, deepseq >= 1.1 && < 1.4, QuickCheck >= 2.0 if flag(portable) cpp-options: -DPORTABLE else if !os(windows) build-depends: unix >= 2.5.1 other-modules: Development.Make.All Development.Make.Env Development.Make.Parse Development.Make.Rules Development.Make.Type Development.Ninja.All Development.Ninja.Parse Development.Ninja.Type Examples.Util Examples.C.Main Examples.Ninja.Main Examples.Self.Main Examples.Tar.Main Examples.Test.Assume Examples.Test.Basic Examples.Test.Benchmark Examples.Test.Cache Examples.Test.Command Examples.Test.Directory Examples.Test.Docs Examples.Test.Errors Examples.Test.FilePath Examples.Test.FilePattern Examples.Test.Files Examples.Test.Journal Examples.Test.Lint Examples.Test.Makefile Examples.Test.Oracle Examples.Test.OrderOnly Examples.Test.Pool Examples.Test.Progress Examples.Test.Random Examples.Test.Resources Examples.Test.Throttle Examples.Test.Unicode Examples.Test.Util Examples.Test.Verbosity Start