shaker-0.3.1: shaker.cabal
name: shaker
version: 0.3.1
cabal-version: >= 1.8
build-type: Custom
license: BSD3
license-file: LICENSE
copyright: Copyright (c) 2010 Anthonin Bonnefoy
author: Anthonin Bonnefoy
maintainer: anthonin.bonnefoy@gmail.com
homepage: http://github.com/bonnefoa/Shaker
bug-reports: http://github.com/bonnefoa/Shaker/issues
Stability:alpha
Tested-With:GHC == 6.12.1
category: Development
synopsis: simple and interactive command-line build tool
description:
Shaker is a build tool which allow to compile an haskell project with some features like continuous action similar to SBT.
.
For the moment, all configuration are made via cabal. Shaker will read cabal configuration to discover source directories, compilation options and targets to compile.
.
/Usage/
.
The cabal configuration file should be generated beforehand with /runhaskell Setup.hs configure/. If you change your cabal configuration, you need to recreate the configuration file.
.
/Execution/
.
In the root of your haskell project, launch shaker. An interactive prompt will allow you to execute differents action.
.
/Action execution/
.
[@Simple Execution@] An action can be launched normally, by entering the action name
.
[@Multiple action execution@] You can specify multiple action to execute simply by separating action by spaces.
.
[@Continuous Action@] A continuous action will execute the action when a changement on files has been detected.
Every action are elligible to continuous action, you simply need to prefix them with '~'
.
/Available actions/
.
[@Compile@] Compile the project. Targets of the compilation are main file (in case of executable) or exposed modules (in case of library).
.
[@FullCompile@] Compile all hs files found in source directory. It is usefull to compile test sources.
.
[@Clean@] Clean the directory containing .o and .hi files.
.
[@QuickCheck@] Launch all QuickCheck properties of the project.
.
[@IQuickCheck@] Intelligent QuickCheck launch. Only launch necessary properties (beta).
.
[@HUnit@] Launch all HUnit tests of the project.
.
[@IHUnit@] Intelligent HUnit launch. Only launch necessary tests (beta).
.
[@Quit@] Exit the application.
.
/Examples/
.
[@% Compile@] Simply compile the project
.
[@% Clean Compile@] Clean and compile the project
.
[@% ~Compile@] Switch to continuous mode and will compile the project when sources are modified.
.
[@% ~Clean Compile@] Switch to continuous mode and will clean and compile the project when sources are modified.
extra-source-files: README TODO testsuite/tests/resources/invalidMain/dist/setup-config
testsuite/tests/resources/invalidMain/src/Main.hs
testsuite/tests/resources/invalidMain/tests/Dummy.hs
testsuite/tests/resources/invalidMain/invalidMain.cabal
testsuite/tests/resources/cabalTest/dist/setup-config
testsuite/tests/resources/cabalTest/cabalTest.cabal
testsuite/tests/resources/cabalTest/src/Main.hs
testsuite/tests/resources/cabalTest/src/CabalTest.hs
testsuite/tests/resources/noSourceConfig/noHsSource.hs
testsuite/tests/resources/noSourceConfig/noHsSource.cabal
testsuite/tests/resources/noSourceConfig/dist/setup-config
source-repository head
type: git
location: git://github.com/bonnefoa/Shaker.git
source-repository this
type: git
location: git://github.com/bonnefoa/Shaker.git
tag: 0.3.1
Library
ghc-options: -Wall -fno-warn-orphans
hs-source-dirs: src
exposed-modules:
Shaker.Parser
Shaker.Action.Standard
Shaker.Action.Test
Shaker.Action.Execute
Shaker.Action.Compile
Shaker.Conductor
Shaker.Config
Shaker.TestTH
Shaker.PluginConfig
Shaker.Reflexivite
Shaker.Regex
Shaker.Cli
Shaker.Io
Shaker.SourceHelper
Shaker.Cabal.CabalInfo
Shaker.Type
Shaker.Listener
build-depends: base >= 4.1,
Cabal >= 1.8.0.6,
containers >= 0.3,
haskeline >= 0.6.2.2
,directory >= 1.0.1.0,
filepath >= 1.1,
ghc >= 6,
ghc-paths >= 0.1,
haskell98 >= 1.0,
mtl >= 1.0,
parsec >= 3.0,
regex-posix >= 0.94.1,
old-time >= 1.0.0
,bytestring >= 0.9.1.5
,HUnit >= 1.2.2.1
,QuickCheck >= 2.1.1.1
,template-haskell >= 2.4.0.0
Executable shaker
Main-Is: Shaker.hs
ghc-options: -Wall -fno-warn-orphans
hs-source-dirs: prog
build-depends: base >= 4.1 && < 5 ,
shaker
,Cabal >= 1.8.0.6,
containers >= 0.3,
haskeline >= 0.6.2.2
,directory >= 1.0.1.0,
filepath >= 1.1,
ghc >= 6,
ghc-paths >= 0.1,
haskell98 >= 1.0,
mtl >= 1.0,
parsec >= 3.0,
regex-posix >= 0.94.1,
old-time >= 1.0.0
,bytestring >= 0.9.1.5
,HUnit >= 1.2.2.1
,QuickCheck >= 2.1.1.1
,template-haskell >= 2.4.0.0
flag test
description: Build test program.
default: False
Executable test
hs-source-dirs: testsuite/tests
main-is: RunTestTH.hs
ghc-options: -Wall -fno-warn-orphans
other-modules:
RunTestTH
Shaker.RegexTest
Shaker.Properties
Shaker.Action.CompileTest
Shaker.IoTest
Shaker.CliTest
Shaker.CommonTest
Shaker.ParserTest
Shaker.SourceHelperTest
Shaker.Cabal.CabalInfoTest
Shaker.ListenerTest
Shaker.ReflexiviteTest
Shaker.ConductorTest
build-depends: base >= 4.1,
shaker
,Cabal >= 1.8.0.6,
containers >= 0.3,
haskeline >= 0.6.2.2
,directory >= 1.0.1.0,
filepath >= 1.1,
ghc >= 6,
ghc-paths >= 0.1,
haskell98 >= 1.0,
mtl >= 1.0,
parsec >= 3.0,
regex-posix >= 0.94.1,
old-time >= 1.0.0
,bytestring >= 0.9.1.5
,HUnit >= 1.2.2.1
,QuickCheck >= 2.1.1.1
,template-haskell >= 2.4.0.0
if !flag(test)
buildable: False