packages feed

qbe-1.1.0.0: qbe.cabal

cabal-version:      3.0
name:               qbe
-- First component matches the QBE major version
version:            1.1.0.0
synopsis:           Types and prettyprinter for the IL of the QBE compiler backend
description:
  This library provides types representing
  the [intermediate language](https://c9x.me/compile/doc/il.html)
  of the [QBE](https://c9x.me/compile/) compiler backend.
  It also provides pretty-printing instances based on
  the [@prettyprinter@](https://hackage.haskell.org/package/prettyprinter)
  library, that emit the textual representation of the IL.
homepage:           https://sr.ht/~fgaz/qbe-hs
bug-reports:        https://todo.sr.ht/~fgaz/qbe-hs
license:            BSD-3-Clause
license-file:       LICENSE
author:             Francesco Gazzetta
maintainer:         Francesco Gazzetta <fgaz@fgaz.me>
copyright:          2022 Francesco Gazzetta
category:           Language
build-type:         Simple
extra-doc-files:    CHANGELOG.md
extra-source-files: README.md golden/*.qbe
tested-with:
    , GHC == 8.10.7
    , GHC == 9.0.2
    , GHC == 9.2.2

source-repository head
    type:     git
    location: https://git.sr.ht/~fgaz/qbe-hs

common common
    ghc-options: -Wall
                 -Wunused-packages
                 -Wmissing-home-modules
                 -Wredundant-constraints
                 -Wincomplete-uni-patterns
                 -Wincomplete-record-updates
    default-language: Haskell2010

library
    import:           common
    exposed-modules:  Language.QBE
    -- other-modules:
    other-extensions: DataKinds
                      KindSignatures
                      GeneralizedNewtypeDeriving
                      FlexibleInstances
                      OverloadedStrings
                      PatternSynonyms
    build-depends:    base              ^>= 4.16.1.0
                                     || ^>= 4.14
                                     || ^>= 4.15
                    , text              ^>= 1.2.5
                                     || ^>= 2.0
                    , text-short        ^>= 0.1
                    , bytestring        ^>= 0.11.3
                    , hashable          ^>= 1.4.0
                    , deepseq           ^>= 1.4.4
                    , prettyprinter     ^>= 1.7.1
    hs-source-dirs:   src

test-suite golden
    import:           common
    type:             exitcode-stdio-1.0
    hs-source-dirs:   test
    main-is:          Main.hs
    build-depends:    base
                    , qbe
                    , prettyprinter
                    , filepath          ^>= 1.4.2.2
                    , tasty             ^>= 1.4.2.3
                    , tasty-silver      ^>= 3.3.1.1
    other-extensions: TypeApplications
                      OverloadedStrings
                      DataKinds
                      ExistentialQuantification