packages feed

mischief-input-0.1.0.0: mischief-input.cabal

cabal-version: 3.0
-- The cabal-version field refers to the version of the .cabal specification,
-- and can be different from the cabal-install (the tool) version and the
-- Cabal (the library) version you are using. As such, the Cabal (the library)
-- version used must be equal or greater than the version stated in this field.
-- Starting from the specification version 2.2, the cabal-version field must be
-- the first thing in the cabal file.
-- Initial package description 'mischief' generated by
-- 'cabal init'. For further documentation, see:
--   http://haskell.org/cabal/users-guide/
--
-- The name of the package.
name: mischief-input
-- The package version.
-- See the Haskell package versioning policy (PVP) for standards
-- guiding when and how versions should be incremented.
-- https://pvp.haskell.org
-- PVP summary:     +-+------- breaking API changes
--                  | | +----- non-breaking API additions
--                  | | | +--- code changes with no API change
version: 0.1.0.0
-- A short (one-line) description of the package.
-- synopsis:
-- A longer description of the package.
-- description:
-- The license under which the package is released.
license: BSD-3-Clause
-- The file containing the license text.
license-file: LICENSE
-- The package author(s).
author: Damon
-- An email address to which users can send suggestions, bug reports, and patches.
maintainer: pvdoriginal2019@gmail.com
homepage: https://codeberg.org/mischief/mischief
synopsis: Input for the Mischief game engine
-- A copyright notice.
-- copyright:
build-type: Simple
-- Extra doc files to be distributed with the package, such as a CHANGELOG or a README.
extra-doc-files:
  CHANGELOG.md
  README.md

-- Extra source files to be distributed with the package, such as examples, or a tutorial module.
-- extra-source-files:
common warnings
  ghc-options:
    "-Wall,"
    -Wno-name-shadowing

library
  -- Import common warning flags.
  import: warnings
  -- Modules exported by the library.
  exposed-modules:
    Mischief.Input
    Mischief.Input.Keys
    Mischief.Input.Mouse

  -- Modules included in this library but not exported.
  -- other-modules:
  other-modules:
  -- LANGUAGE extensions used by modules in this package.z
  default-extensions:
    DefaultSignatures
    DeriveAnyClass
    DuplicateRecordFields
    FunctionalDependencies
    ImportQualifiedPost
    MagicHash
    MultiWayIf
    NoFieldSelectors
    NoGeneralizedNewtypeDeriving
    OverloadedRecordDot
    OverloadedStrings
    PatternSynonyms
    RequiredTypeArguments
    TemplateHaskell
    TypeFamilyDependencies
    UndecidableInstances

  -- other-extensions:
  -- Other library packages from which modules are imported.
  build-depends:
    base >=4.21.0 && <4.22,
    bytestring >=0.12.2 && <0.13,
    containers >=0.7 && <0.8,
    data-default >=0.8.0 && <0.9,
    mischief-ecs >=0.2.1 && <0.3,
    mischief-sdl >=0.1.0 && <0.2,
    primitive >=0.9.1 && <0.10,
    sdl3-bindgen-sys >=0.0.1 && <0.1,

  -- Directories containing source files.
  hs-source-dirs:
    src

  -- Base language which the package is written in.
  default-language:
    GHC2024

  ghc-options: -fno-omit-yields

test-suite mischief-test
  -- Import common warning flags.
  import: warnings
  ghc-options:
    -fno-omit-yields
    -Wno-unused-do-bind

  -- Base language which the package is written in.
  default-language: GHC2024
  -- Modules included in this executable, other than Main.
  -- other-modules:
  -- LANGUAGE extensions used by modules in this package.
  default-extensions:
    DeriveAnyClass
    DuplicateRecordFields
    MagicHash
    NoFieldSelectors
    NoGeneralizedNewtypeDeriving
    OverloadedRecordDot
    OverloadedStrings
    QuasiQuotes
    RequiredTypeArguments
    TypeFamilyDependencies

  -- other-extensions:
  -- The interface type and version of the test suite.
  type: exitcode-stdio-1.0
  -- Directories containing source files.
  hs-source-dirs: test
  -- The entrypoint to the test suite.
  main-is: Main.hs
  -- Test dependencies.
  build-depends:
    base >=4.21.0.0 && <4.22,
    containers,
    data-default,
    mischief-ecs,
    mischief-input,
    primitive,
    sdl3-bindgen-sys,
    transformers,