-- WARNING: template-haskell.cabal is automatically generated from template-haskell.cabal.in by
-- ../../configure.  Make sure you are editing template-haskell.cabal.in, not
-- template-haskell.cabal.

name:           template-haskell
version:        2.17.0.0
-- NOTE: Don't forget to update ./changelog.md
license:        BSD3
license-file:   LICENSE
category:       Template Haskell
maintainer:     libraries@haskell.org
bug-reports:    https://gitlab.haskell.org/ghc/ghc/issues/new
synopsis:       Support library for Template Haskell
build-type:     Simple
Cabal-Version:  >= 1.10
description:
    This package provides modules containing facilities for manipulating
    Haskell source code using Template Haskell.
    .
    See <http://www.haskell.org/haskellwiki/Template_Haskell> for more
    information.

extra-source-files: changelog.md

source-repository head
    type:     git
    location: https://gitlab.haskell.org/ghc/ghc.git
    subdir:   libraries/template-haskell

Library
    default-language: Haskell2010
    other-extensions:
        BangPatterns
        CPP
        DefaultSignatures
        DeriveDataTypeable
        DeriveGeneric
        FlexibleInstances
        RankNTypes
        RoleAnnotations
        ScopedTypeVariables

    exposed-modules:
        Language.Haskell.TH
        Language.Haskell.TH.Lib
        Language.Haskell.TH.Ppr
        Language.Haskell.TH.PprLib
        Language.Haskell.TH.Quote
        Language.Haskell.TH.Syntax
        Language.Haskell.TH.LanguageExtensions
        Language.Haskell.TH.CodeDo
        Language.Haskell.TH.Lib.Internal

    other-modules:
        Language.Haskell.TH.Lib.Map

    build-depends:
        base        >= 4.11 && < 4.16,
        ghc-boot-th == 9.0.1,
        ghc-prim,
        pretty      == 1.1.*

    ghc-options: -Wall

    -- We need to set the unit ID to template-haskell (without a
    -- version number) as it's magic.
    ghc-options: -this-unit-id template-haskell

    -- This should match the default-extensions used in 'ghc.cabal'. This way,
    -- GHCi can be used to load it along with the compiler.
    Default-Extensions:
        NoImplicitPrelude