The shake package

[Tags: bsd3, library, program]

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: http://shakebuild.com

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).


[Skip to ReadMe]

Properties

Versions0.0, 0.1, 0.1.1, 0.1.2, 0.1.3, 0.1.4, 0.1.5, 0.2, 0.2.1, 0.2.2, 0.2.3, 0.2.4, 0.2.5, 0.2.6, 0.2.7, 0.2.8, 0.2.9, 0.2.10, 0.2.11, 0.3, 0.3.1, 0.3.2, 0.3.3, 0.3.4, 0.3.5, 0.3.6, 0.3.7, 0.3.8, 0.3.9, 0.3.10, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 0.9.1, 0.10, 0.10.1, 0.10.2, 0.10.3, 0.10.4, 0.10.5, 0.10.6, 0.10.7, 0.10.8, 0.10.9, 0.10.10, 0.11, 0.11.1, 0.11.2, 0.11.3, 0.11.4, 0.11.5, 0.11.6, 0.11.7, 0.12, 0.13, 0.13.1, 0.13.2, 0.13.3, 0.13.4, 0.14, 0.14.1, 0.14.2, 0.14.3, 0.15, 0.15.1, 0.15.2, 0.15.3, 0.15.4, 0.15.5
Change logCHANGES.txt
Dependenciesbase (==4.*), binary, bytestring, deepseq (>=1.1), directory, extra (>=1.3), filepath, hashable (>=1.1.2.3), js-flot, js-jquery, old-time, process (>=1.1), random, time, transformers (>=0.2), unix (>=2.5.1), unordered-containers (>=0.2.1), utf8-string (>=0.3) [details]
LicenseBSD3
CopyrightNeil Mitchell 2011-2015
AuthorNeil Mitchell <ndmitchell@gmail.com>
MaintainerNeil Mitchell <ndmitchell@gmail.com>
CategoryDevelopment, Shake
Home pagehttp://shakebuild.com
Bug trackerhttps://github.com/ndmitchell/shake/issues
Source repositoryhead: git clone https://github.com/ndmitchell/shake.git
Executablesshake
UploadedTue Aug 4 20:47:44 UTC 2015 by NeilMitchell
DistributionsDebian:0.15.5, Fedora:0.13.4, FreeBSD:0.15.5, LTSHaskell:0.15.5, Stackage:0.15.5
Downloads38845 total (989 in last 30 days)
Votes
2 []
StatusDocs uploaded by user
Build status unknown [no reports yet]

Modules

[Index]

Flags

NameDescriptionDefaultType
portableObtain FileTime using portable functionsDisabledAutomatic

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Maintainers' corner

For package maintainers and hackage trustees

Readme for shake-0.15.5

Shake Hackage version Build Status

Shake is a tool for writing build systems - an alternative to make, Scons, Ant etc. Shake has been used commercially for over five years, running thousands of builds per day. The website for Shake users is at shakebuild.com.

Documentation

Other links

Is your company using Shake? Write something public (even just a tweet to @ndm_haskell) and I'll include a link at on the website.