-- 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 . Name: bishbosh Version: 0.0.0.6 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 manually disable, use "runhaskell Setup configure -f -polyparse --verbose"; which may be required to access Parsec's more precise error-messages. flag polyparse Description: Link with package "polyparse" when available, rather than "parsec". Default: True -- Automatically disabled when the required package isn't available. -- To manually disable, use "runhaskell Setup configure -f -hxtrelaxng --verbose", under which circumstances the XML-configuration will be validated against the packaged DTD instead. 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.Coordinate BishBosh.Notation.ICCFNumeric BishBosh.Notation.MoveNotation BishBosh.Notation.Smith BishBosh.Property.Empty 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.Coordinate BishBosh.Test.QuickCheck.Notation.ICCFNumeric BishBosh.Test.QuickCheck.Notation.MoveNotation 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