PLFA agda exercises
cabal-version: 3.6
name:          plfa
version:       22.8
description:   Programming Language Foundations in Agda
homepage:      https://plfa.github.io
license-file:  LICENSE
author:        Wen Kokke
copyright:     © 2017-2022 Wen Kokke
category:      Web
build-type:    Simple
tested-with:   GHC ==8.10.7 || ==9.0.2 || ==9.2.8 || ==9.4.8 || ==9.6.3

common language-haskell
  build-depends:      base
  default-language:   Haskell2010
  default-extensions:
    FlexibleContexts
    FlexibleInstances
    GADTs
    ImplicitParams
    ImportQualifiedPost
    LambdaCase
    MultiParamTypeClasses
    MultiWayIf
    NamedFieldPuns
    OverloadedStrings
    PatternSynonyms
    RecordWildCards
    Strict
    TupleSections
    TypeApplications
    TypeSynonymInstances

executable builder
  import:        language-haskell
  main-is:       tools/Buildfile.hs
  build-depends:
    , base
    , base64              >=1.0
    , bytestring
    , containers
    , data-default-class
    , directory
    , hashable
    , mtl
    , multimap
    , plfa
    , process
    , SHA
    , shoggoth
    , text

executable update-contributors
  import:        language-haskell
  main-is:       tools/UpdateContributors.hs
  build-depends:
    , bytestring
    , containers
    , directory
    , exceptions
    , filemanip
    , filepath
    , frontmatter
    , github       >=0.28
    , plfa
    , shoggoth
    , text
    , vector
    , yaml

library
  import:          language-haskell
  hs-source-dirs:  tools/
  exposed-modules:
    Buildfile.Author
    Buildfile.Book
    Buildfile.Configuration
    Buildfile.Contributor
    Buildfile.Script
    Buildfile.Stylesheet

  build-depends:
    , aeson               >=2
    , base
    , bimap
    , data-default-class
    , mtl
    , shoggoth
    , tagsoup
    , text
    , transformers