battleships-1.0.0: battleships.cabal
name: battleships
version: 1.0.0
cabal-version: >= 1.8
build-type: Simple
category: Game
author: Meike Grewing, Lukas Heidemann, Fabian Thorand, Fabian Zaiser
maintainer: thorand@cs.uni-bonn.de
license: BSD3
license-file: LICENSE
Bug-Reports: https://github.com/zrho/afp/issues
Homepage: https://github.com/zrho/afp
synopsis: A web-based implementation of battleships including an AI opponent.
description: This package provides a web-based implementation of the popular
battleships game, developed over the course of a practical functional
programming class at the University of Bonn (<http://www.iai.uni-bonn.de/~jv/teaching/afp13/>).
Alongside with the classical gameplay against an AI opponent, a game mode
is provided in which players may move their undamaged ships.
Extra-Source-Files:
messages/*.msg
config/routes
config/settings.yml
config/key.aes
templates/*.cassius
templates/*.hamlet
templates/*.julius
static/.htaccess
static/js/*.js
static/img/*.svg
static/img/*.ico
static/img/*.png
Flag dev
Description: Turn on development settings, like auto-reload templates.
Default: False
Flag library-only
Description: Build for use with "yesod devel"; also turns on development settings.
Default: False
library
exposed-modules: Application
Foundation
Import
Settings
Settings.Development
Settings.StaticFiles
Handler.About
Handler.GameEnded
Handler.Home
Handler.PlaceShips
Handler.Play
Handler.Replay
Handler.Rules
Handler.Util
Handler.SaveGame
Logic.Util
Logic.AIUtil
Logic.Binary
Logic.CleverAI
Logic.Debug
Logic.DefaultAI
Logic.Game
Logic.GameExt
Logic.Random
Logic.Render
Logic.StupidAI
Logic.Types
ghc-options: -Wall
if flag(dev) || flag(library-only)
cpp-options: -DDEVELOPMENT
ghc-options: -O0
else
ghc-options: -O2
extensions: TemplateHaskell
QuasiQuotes
OverloadedStrings
NoImplicitPrelude
RecordWildCards
FlexibleContexts
build-depends: base >= 4 && < 5
-- * needed for yesod
, yesod >= 1.2 && < 1.2.5
, yesod-core >= 1.2 && < 1.3
, yesod-static >= 1.2 && < 1.3
, yesod-routes
, hamlet >= 1.1 && < 1.2
, shakespeare-text >= 1.0 && < 1.1
, wai-extra
, wai-logger
, cookie
, hjsmin
-- * more monads
, mtl
, MonadRandom
-- * data types
, bytestring >= 0.9 && < 0.11
, text >= 0.11 && < 0.12
, aeson
, containers
, array
-- * diagrams
, blaze-svg
, diagrams-svg
, diagrams-lib
, colour
-- * other
, template-haskell
, data-default
, fast-logger >= 0.3.2
, cereal
, transformers
, base64-bytestring
, SimpleAES
, attoparsec
, word8
, shakespeare-js
, yaml
, filepath
if flag(library-only)
build-depends: warp
, directory >= 1.1 && < 1.3
executable main.fcgi
if flag(library-only)
Buildable: False
ghc-options: -threaded -Wall
if flag(dev)
cpp-options: -DDEVELOPMENT
ghc-options: -O0
build-depends: warp
else
ghc-options: -O2
build-depends: wai-handler-fastcgi >= 1.3 && < 2.1
main-is: main.hs
hs-source-dirs: app
build-depends: base
, battleships
, yesod
executable img-gen
if flag(library-only)
Buildable: False
extensions: FlexibleContexts
main-is: Main.hs
hs-source-dirs: img-gen
ghc-options: -Wall
build-depends: base
, mtl
, battleships
, bytestring
, blaze-svg
, diagrams-svg
, diagrams-lib
, filepath
executable aibenchmark
if flag(library-only)
Buildable: False
main-is: Main.hs
hs-source-dirs: aibenchmark
ghc-options: -O2 -Wall
build-depends: base
, battleships
, mtl
, transformers
, containers
, MonadRandom
executable key-gen
if flag(library-only)
Buildable: False
main-is: Main.hs
hs-source-dirs: key-gen
ghc-options: -Wall
build-depends: base
, mtl
, bytestring
, crypto-random