bishbosh-0.0.0.8: bishbosh.cabal
-- This file is part of BishBosh.
--
-- BishBosh is free software: you can redistribute it and/or modify
-- it under the terms of the GNU General Public License as published by
-- the Free Software Foundation, either version 3 of the License, or
-- (at your option) any later version.
--
-- BishBosh is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-- GNU General Public License for more details.
--
-- You should have received a copy of the GNU General Public License
-- along with BishBosh. If not, see <http://www.gnu.org/licenses/>.
Name: bishbosh
Version: 0.0.0.8
Cabal-version: >= 1.10
Copyright: (C) 2018 Dr. Alistair Ward
License: GPL
License-file: LICENSE
Author: Dr. Alistair Ward
Stability: stable
Synopsis: Plays chess.
Build-type: Simple
Description: A chess-game which can be rendered in a terminal (emulator) in raw ASCII, or used as an engine by xboard.
Category: Game
Tested-with: GHC == 8.0, GHC == 8.2, GHC == 8.4, GHC == 8.6, GHC == 8.8, GHC == 8.10
Homepage: https://functionalley.com/BishBosh/bishbosh.html
Maintainer: mailto:bishbosh@functionalley.com
Bug-reports: mailto:bishbosh@functionalley.com
-- Files which can be located by the application using 'Paths_bishbosh.datadir'.
Data-files:
config/bishbosh.dtd
config/bishbosh.rng
config/CECP/*.xml
config/Raw/*.xml
pgn/*.pgn
-- Files which are packaged, but not required at runtime.
Extra-source-files:
.ghci
bishbosh.spec
bishbosh.svg
changelog.markdown
copyright
man/man1/bishbosh.1
man/man5/bishbosh.5
README.markdown
source-repository head
type: git
location: https://github.com/functionalley/BishBosh
-- Enable using: 'runhaskell Setup configure -f llvm --verbose'.
flag llvm
Description: Whether the 'llvm' compiler-backend has been installed and is required for code-generation.
Manual: True
Default: False
-- Automatically disabled when the required package isn't available.
-- To access Parsec's more precise error-messages, manually disable using one of:
-- runhaskell Setup configure -f -polyparse --verbose;
-- stack build --flag 'bishbosh:-polyparse' --cabal-verbose;
flag polyparse
Description: Link with package "polyparse" when available, rather than "parsec".
Default: True
-- Automatically disabled when the required package isn't available.
-- To force validation of the XML-configuration against the packaged DTD, manually disable using one of:
-- runhaskell Setup configure -f -hxtrelaxng --verbose;
-- stack build --flag 'bishbosh:-hxtrelaxng' --cabal-verbose;
flag hxtrelaxng
Description: Link with package "hxt-relaxng" when available, for more precise specification of the XML-configuration than a traditional DTD.
Default: True
-- Whether to use narrower numerical types than machine-defaults. CAVEAT: this option increases both the space allocated & the execution-time.
flag narrownumbers
Description: Use narrow numerical types.
Manual: True
Default: False
-- Concurrency is used to implement Pondering, & parallelism is used when searching through archived games.
flag threaded
Description: Build for parallel runtime.
Manual: True
Default: True
-- Automatically disabled when the required package isn't available.
-- CAVEAT: on MS-Windows, it may be available but won't necessarily build, so specify "-f -unix --verbose" when configuring the package.
flag unix
Description: Link with package "unix" when available.
Default: True
Library
Default-language: Haskell2010
GHC-options: -O2 -Wall -fno-warn-tabs
Hs-source-dirs: src-lib
Exposed-modules:
BishBosh.Attribute.CaptureMoveSortAlgorithm
BishBosh.Attribute.ColourScheme
BishBosh.Attribute.CriterionValue
BishBosh.Attribute.CriterionWeight
BishBosh.Attribute.Direction
BishBosh.Attribute.LogicalColour
BishBosh.Attribute.LogicalColourOfSquare
BishBosh.Attribute.MoveType
BishBosh.Attribute.PhysicalColour
BishBosh.Attribute.Rank
BishBosh.Attribute.RankValues
BishBosh.Attribute.WeightedMeanAndCriterionValues
BishBosh.Cartesian.Abscissa
BishBosh.Cartesian.Coordinates
BishBosh.Cartesian.Ordinate
BishBosh.Cartesian.Vector
BishBosh.Component.EitherQualifiedMove
BishBosh.Component.Move
BishBosh.Component.Piece
BishBosh.Component.PieceSquareArray
BishBosh.Component.QualifiedMove
BishBosh.Component.Turn
BishBosh.Component.Zobrist
BishBosh.ContextualNotation.PGN
BishBosh.ContextualNotation.PGNComment
BishBosh.ContextualNotation.PGNDatabase
BishBosh.ContextualNotation.PositionHashQualifiedMoveTree
BishBosh.ContextualNotation.QualifiedMoveForest
BishBosh.ContextualNotation.StandardAlgebraic
BishBosh.Data.Bool
BishBosh.Data.Either
BishBosh.Data.Exception
BishBosh.Data.Float
BishBosh.Data.Integral
BishBosh.Data.Num
BishBosh.Data.Ratio
BishBosh.Data.RoseTree
BishBosh.Data.Time
BishBosh.Evaluation.Fitness
BishBosh.Evaluation.PositionHashQuantifiedGameTree
BishBosh.Evaluation.QuantifiedGame
BishBosh.Input.CECPFeatures
BishBosh.Input.CECPOptions
BishBosh.Input.CriteriaWeights
BishBosh.Input.EvaluationOptions
BishBosh.Input.IOOptions
BishBosh.Input.NativeUIOptions
BishBosh.Input.Options
BishBosh.Input.PGNOptions
BishBosh.Input.PieceSquareTable
BishBosh.Input.SearchOptions
BishBosh.Input.StandardOpeningOptions
BishBosh.Input.UIOptions
BishBosh.Input.Verbosity
BishBosh.Model.DrawReason
BishBosh.Model.Game
BishBosh.Model.GameTerminationReason
BishBosh.Model.GameTree
BishBosh.Model.MoveFrequency
BishBosh.Model.PositionHashTree
BishBosh.Model.Result
BishBosh.Notation.ICCFNumeric
BishBosh.Notation.MoveNotation
BishBosh.Notation.PureCoordinate
BishBosh.Notation.Smith
BishBosh.Property.Empty
BishBosh.Property.ExtendedPositionDescription
BishBosh.Property.ForsythEdwards
BishBosh.Property.Null
BishBosh.Property.Opposable
BishBosh.Property.Orientated
BishBosh.Property.Reflectable
BishBosh.Property.Rotatable
BishBosh.Property.ShowFloat
BishBosh.Property.Tree
BishBosh.Search.AlphaBeta
BishBosh.Search.DynamicMoveData
BishBosh.Search.EphemeralData
BishBosh.Search.KillerMoves
BishBosh.Search.Search
BishBosh.Search.SearchState
BishBosh.Search.Transpositions
BishBosh.Search.TranspositionValue
BishBosh.State.Board
BishBosh.State.CastleableRooksByLogicalColour
BishBosh.State.Censor
BishBosh.State.CoordinatesByRankByLogicalColour
BishBosh.State.EnPassantAbscissa
BishBosh.State.InstancesByPosition
BishBosh.State.MaybePieceByCoordinates
BishBosh.State.Position
BishBosh.State.TurnsByLogicalColour
BishBosh.Text.Encoding
BishBosh.Text.ShowList
BishBosh.Types
BishBosh.UI.Command
BishBosh.UI.PrintObject
BishBosh.UI.SetObject
Build-depends:
array >= 0.5.1.1,
base >= 4.9 && < 5.0,
Cabal >= 1.10,
containers,
data-default,
deepseq >= 1.4.1,
extra,
factory >= 0.3.1,
filepath,
hxt,
mtl,
parallel >= 3.0,
random,
time,
toolshed >= 0.18
if impl(ghc >= 7.0)
if flag(llvm)
GHC-options: -fllvm
if impl(ghc >= 7.4.1)
GHC-prof-options: -fprof-auto -fprof-cafs
if impl(ghc >= 8.0)
GHC-options: -Wredundant-constraints
else
GHC-prof-options: -auto-all -caf-all
if flag(polyparse)
Build-depends: polyparse
CPP-Options: -DUSE_POLYPARSE=1
Exposed-modules: BishBosh.Text.Poly
else
Build-depends: parsec
if flag(narrownumbers)
CPP-Options: -DUSE_NARROW_NUMBERS=1
Executable bishbosh
Default-language: Haskell2010
GHC-options: -O2 -Wall -fno-warn-tabs
Hs-source-dirs: src-exe
Main-is: Main.hs
-- N.B.: required for 'cabal sdist'.
Other-modules:
BishBosh.Concurrent.Pondering
BishBosh.Input.CommandLineOption
BishBosh.Play
BishBosh.State.ApplicationTerminationReason
BishBosh.State.PlayState
BishBosh.Text.Show
BishBosh.UI.CECP
BishBosh.UI.Raw
Paths_bishbosh
if flag(unix)
Other-modules:
BishBosh.Concurrent.SignalHandlers
Build-depends:
array >= 0.5.1.1,
base >= 4.9 && < 5.0,
bishbosh,
Cabal >= 1.10,
containers,
data-default,
deepseq >= 1.4.1,
directory,
extra,
factory >= 0.3.1,
filepath,
hxt,
mtl,
parallel >= 3.0,
random,
time,
toolshed >= 0.18
if impl(ghc >= 7.0)
if flag(llvm)
GHC-options: -fllvm
if flag(threaded)
GHC-options: -rtsopts "-with-rtsopts=-N -H100M"
if impl(ghc >= 7.4.1)
GHC-prof-options: -fprof-auto -fprof-cafs -rtsopts -with-rtsopts=-H100M
if impl(ghc >= 8.0)
GHC-options: -Wredundant-constraints
else
GHC-prof-options: -auto-all -caf-all
if flag(polyparse)
Build-depends: polyparse
CPP-Options: -DUSE_POLYPARSE=1
else
Build-depends: parsec
if flag(hxtrelaxng)
Build-depends: hxt-relaxng
CPP-Options: -DUSE_HXTRELAXNG=1
if flag(narrownumbers)
CPP-Options: -DUSE_NARROW_NUMBERS=1
if flag(threaded)
GHC-options: -threaded
-- N.B.: The Haskell package 'unix' may be available on MS-Windows, but building it will probably be laborious.
if flag(unix)
Other-modules: BishBosh.Concurrent.SignalHandlers
Build-depends: unix
CPP-Options: -DUSE_UNIX
Test-Suite test
Default-language: Haskell2010
GHC-options: -O2 -Wall -fno-warn-tabs
Hs-source-dirs: src-test
Main-is: Main.hs
Type: exitcode-stdio-1.0
-- Required for 'cabal sdist'.
Other-modules:
BishBosh.Test.HUnit.Attribute.Direction
BishBosh.Test.HUnit.Attribute.LogicalColour
BishBosh.Test.HUnit.Attribute.Rank
BishBosh.Test.HUnit.Cartesian.Coordinates
BishBosh.Test.HUnit.Cartesian.Vector
BishBosh.Test.HUnit.Component.Move
BishBosh.Test.HUnit.Component.Piece
BishBosh.Test.HUnit.Component.Zobrist
BishBosh.Test.HUnit.ContextualNotation.PGN
BishBosh.Test.HUnit.ContextualNotation.PositionHashQualifiedMoveTree
BishBosh.Test.HUnit.ContextualNotation.StandardAlgebraic
BishBosh.Test.HUnit.Evaluation.Fitness
BishBosh.Test.HUnit.Input.Options
BishBosh.Test.HUnit.Model.Game
BishBosh.Test.HUnit.Model.GameTree
BishBosh.Test.HUnit.Model.PositionHashTree
BishBosh.Test.HUnit.Search.Search
BishBosh.Test.HUnit.State.Board
BishBosh.Test.QuickCheck.Attribute.CaptureMoveSortAlgorithm
BishBosh.Test.QuickCheck.Attribute.CriterionWeight
BishBosh.Test.QuickCheck.Attribute.Direction
BishBosh.Test.QuickCheck.Attribute.LogicalColour
BishBosh.Test.QuickCheck.Attribute.MoveType
BishBosh.Test.QuickCheck.Attribute.Rank
BishBosh.Test.QuickCheck.Attribute.RankValues
BishBosh.Test.QuickCheck.Cartesian.Coordinates
BishBosh.Test.QuickCheck.Cartesian.Vector
BishBosh.Test.QuickCheck.Component.Move
BishBosh.Test.QuickCheck.Component.Piece
BishBosh.Test.QuickCheck.Component.QualifiedMove
BishBosh.Test.QuickCheck.Component.Turn
BishBosh.Test.QuickCheck.Component.Zobrist
BishBosh.Test.QuickCheck.ContextualNotation.PGN
BishBosh.Test.QuickCheck.ContextualNotation.PGNComment
BishBosh.Test.QuickCheck.ContextualNotation.PositionHashQualifiedMoveTree
BishBosh.Test.QuickCheck.ContextualNotation.QualifiedMoveForest
BishBosh.Test.QuickCheck.ContextualNotation.StandardAlgebraic
BishBosh.Test.QuickCheck.Data.Integral
BishBosh.Test.QuickCheck.Evaluation.PositionHashQuantifiedGameTree
BishBosh.Test.QuickCheck.Input.CECPFeatures
BishBosh.Test.QuickCheck.Input.CECPOptions
BishBosh.Test.QuickCheck.Input.CriteriaWeights
BishBosh.Test.QuickCheck.Input.EvaluationOptions
BishBosh.Test.QuickCheck.Input.IOOptions
BishBosh.Test.QuickCheck.Input.NativeUIOptions
BishBosh.Test.QuickCheck.Input.Options
BishBosh.Test.QuickCheck.Input.PGNOptions
BishBosh.Test.QuickCheck.Input.PieceSquareTable
BishBosh.Test.QuickCheck.Input.SearchOptions
BishBosh.Test.QuickCheck.Input.StandardOpeningOptions
BishBosh.Test.QuickCheck.Input.UIOptions
BishBosh.Test.QuickCheck.Input.Verbosity
BishBosh.Test.QuickCheck.Model.DrawReason
BishBosh.Test.QuickCheck.Model.Game
BishBosh.Test.QuickCheck.Model.GameTerminationReason
BishBosh.Test.QuickCheck.Model.GameTree
BishBosh.Test.QuickCheck.Model.MoveFrequency
BishBosh.Test.QuickCheck.Model.Result
BishBosh.Test.QuickCheck.Notation.ICCFNumeric
BishBosh.Test.QuickCheck.Notation.MoveNotation
BishBosh.Test.QuickCheck.Notation.PureCoordinate
BishBosh.Test.QuickCheck.Notation.Smith
BishBosh.Test.QuickCheck.Search.KillerMoves
BishBosh.Test.QuickCheck.Search.Search
BishBosh.Test.QuickCheck.Search.SearchState
BishBosh.Test.QuickCheck.State.Board
BishBosh.Test.QuickCheck.State.CastleableRooksByLogicalColour
BishBosh.Test.QuickCheck.State.Censor
BishBosh.Test.QuickCheck.State.InstancesByPosition
BishBosh.Test.QuickCheck.State.Position
BishBosh.Test.QuickCheck.State.TurnsByLogicalColour
BishBosh.Test.QuickCheck.Text.Encoding
BishBosh.Test.QuickCheck.UI.Command
BishBosh.Test.QuickCheck.UI.PrintObject
BishBosh.Test.QuickCheck.UI.SetObject
Paths_bishbosh
Build-depends:
array >= 0.5.1.1,
base >= 4.9 && < 5.0,
bishbosh,
Cabal >= 1.10,
containers,
data-default,
extra,
filepath,
HUnit,
hxt,
mtl,
QuickCheck >= 2.8.2,
random,
toolshed >= 0.18
if impl(ghc >= 7.0)
GHC-options: -with-rtsopts=-H100M
if impl(ghc >= 7.4.1)
GHC-prof-options: -fprof-auto -fprof-cafs -rtsopts -with-rtsopts=-H100M
if impl(ghc >= 8.0)
GHC-options: -Wredundant-constraints
else
GHC-prof-options: -auto-all -caf-all
if flag(polyparse)
Build-depends: polyparse
CPP-Options: -DUSE_POLYPARSE=1
else
Build-depends: parsec