packages feed

aztecs-0.16.0: aztecs.cabal

cabal-version: 2.4
name:          aztecs
version:       0.16.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.Internal
        Aztecs.ECS.Component
        Aztecs.ECS.Component.Internal
        Aztecs.ECS.Entity
        Aztecs.ECS.Event
        Aztecs.ECS.Observer
        Aztecs.ECS.Query
        Aztecs.ECS.Query.Dynamic
        Aztecs.ECS.Query.Dynamic.Class
        Aztecs.ECS.System
        Aztecs.ECS.System.Dynamic
        Aztecs.ECS.View
        Aztecs.ECS.World
        Aztecs.ECS.World.Archetype
        Aztecs.ECS.World.Archetype.Internal
        Aztecs.ECS.World.Archetypes
        Aztecs.ECS.World.Archetypes.Internal
        Aztecs.ECS.World.Bundle
        Aztecs.ECS.World.Bundle.Dynamic
        Aztecs.ECS.World.Bundle.Dynamic.Class
        Aztecs.ECS.World.Components
        Aztecs.ECS.World.Components.Internal
        Aztecs.ECS.World.Entities
        Aztecs.ECS.World.Entities.Internal
        Aztecs.ECS.World.Internal
        Aztecs.ECS.World.Observers
        Aztecs.ECS.World.Observers.Internal
        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,
        vector >=0.12

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

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

executable observers
    main-is:          examples/Observers.hs
    default-language: Haskell2010
    ghc-options:      -Wall
    build-depends:
        base,
        aztecs,
        mtl,
        vector

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