packages feed

aztecs-0.15.0: aztecs.cabal

cabal-version: 2.4
name:          aztecs
version:       0.15.0
license:       BSD-3-Clause
license-file:  LICENSE
maintainer:    matt@hunzinger.me
author:        Matt Hunzinger
homepage:      https://github.com/aztecs-hs/aztecs
synopsis:
    A modular game engine and Entity-Component-System (ECS) for Haskell.

description:
    A modular game engine and Entity-Component-System (ECS) for Haskell.
    An ECS is a modern approach to organizing your application state as a database,
    providing patterns for data-oriented design and parallel processing.
    Aztecs provides side-effect free components and systems,
    as well as backends for rendering and input (such as `aztecs-sdl`),
    allowing you to structure your game as simple function of `Input -> World -> World`.

category:      Game Engine

source-repository head
    type:     git
    location: https://github.com/aztecs-hs/aztecs.git

library
    exposed-modules:
        Aztecs
        Aztecs.ECS
        Aztecs.ECS.Access
        Aztecs.ECS.Access.Class
        Aztecs.ECS.Component
        Aztecs.ECS.Entity
        Aztecs.ECS.Query
        Aztecs.ECS.Query.Class
        Aztecs.ECS.Query.Dynamic
        Aztecs.ECS.Query.Dynamic.Class
        Aztecs.ECS.Query.Dynamic.Reader
        Aztecs.ECS.Query.Dynamic.Reader.Class
        Aztecs.ECS.Query.Reader
        Aztecs.ECS.Query.Reader.Class
        Aztecs.ECS.System
        Aztecs.ECS.System.Class
        Aztecs.ECS.System.Dynamic.Class
        Aztecs.ECS.System.Dynamic.Reader.Class
        Aztecs.ECS.System.Reader.Class
        Aztecs.ECS.View
        Aztecs.ECS.World
        Aztecs.ECS.World.Archetype
        Aztecs.ECS.World.Archetypes
        Aztecs.ECS.World.Bundle
        Aztecs.ECS.World.Bundle.Class
        Aztecs.ECS.World.Bundle.Dynamic
        Aztecs.ECS.World.Bundle.Dynamic.Class
        Aztecs.ECS.World.Components
        Aztecs.ECS.World.Entities
        Aztecs.ECS.World.Storage
        Aztecs.ECS.World.Storage.Dynamic
        Aztecs.Hierarchy

    hs-source-dirs:   src
    default-language: Haskell2010
    ghc-options:      -Wall
    build-depends:
        base >=4.2 && <5,
        containers >=0.6,
        mtl >=2,
        stm >=2,
        vector >=0.12

executable ecs
    main-is:          examples/ECS.hs
    default-language: Haskell2010
    ghc-options:      -Wall
    build-depends:
        base,
        aztecs

test-suite aztecs-test
    type:             exitcode-stdio-1.0
    main-is:          Main.hs
    hs-source-dirs:   test
    default-language: Haskell2010
    ghc-options:      -Wall
    build-depends:
        base >=4.2 && <5,
        aztecs,
        containers >=0.6,
        deepseq >=1,
        hspec >=2,
        QuickCheck >=2,
        vector >=0.12

benchmark aztecs-bench
    type:             exitcode-stdio-1.0
    main-is:          Bench.hs
    hs-source-dirs:   bench
    default-language: Haskell2010
    ghc-options:      -Wall
    build-depends:
        base >=4.2 && <5,
        aztecs,
        criterion >=1,
        deepseq >=1,
        vector >=0.12