aboutsummaryrefslogtreecommitdiff
path: root/vendor/cabal-helper-0.8.1.2/cabal-helper.cabal
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/cabal-helper-0.8.1.2/cabal-helper.cabal')
-rw-r--r--vendor/cabal-helper-0.8.1.2/cabal-helper.cabal291
1 files changed, 291 insertions, 0 deletions
diff --git a/vendor/cabal-helper-0.8.1.2/cabal-helper.cabal b/vendor/cabal-helper-0.8.1.2/cabal-helper.cabal
new file mode 100644
index 0000000..18d5066
--- /dev/null
+++ b/vendor/cabal-helper-0.8.1.2/cabal-helper.cabal
@@ -0,0 +1,291 @@
+name: cabal-helper
+version: 0.8.1.2
+synopsis:
+ Simple interface to some of Cabal's configuration state, mainly used by ghc-mod
+description:
+ Cabal's little helper provides access to build information gathered by
+ @cabal@ when configuring a project. Specifically we're interested in
+ retrieving enough information to bring up a compiler session, using the GHC
+ API, which is similar to running @cabal repl@ in a project.
+ .
+ While simple in principle this is complicated by the fact that the
+ information Cabal writes to disk is in an unstable format and only really
+ accessible through the Cabal API itself.
+ .
+ Since we do not want to bind the user of a development tool which utilises
+ this library to a specific version of Cabal we compile the code which
+ interfaces with the Cabal library's API on the user's machine, at runtime,
+ against whichever version of Cabal was used to write the on disk information
+ for a given project.
+ .
+ If this version of Cabal is not available on the users machine anymore,
+ which is fairly likely since cabal-install is usually linked statically, we
+ have support for compiling the Cabal library also. In this case the library
+ is installed into a private, isolated, package database in
+ @$XDG_CACHE_HOME/cabal-helper@ so as to not interfere with the user's
+ package database.
+license: GPL-3
+license-file: LICENSE
+author: Daniel Gröber <cabal-helper@dxld.at>
+maintainer: cabal-helper@dxld.at
+category: Distribution
+build-type: Custom
+cabal-version: 2.0
+extra-source-files: README.md
+ src/CabalHelper/Runtime/*.hs
+
+ tests/*.hs
+
+ tests/exelib/*.hs
+ tests/exelib/*.cabal
+ tests/exelib/lib/*.hs
+
+ tests/exeintlib/*.hs
+ tests/exeintlib/*.cabal
+ tests/exeintlib/lib/*.hs
+ tests/exeintlib/intlib/*.hs
+
+ tests/fliblib/*.hs
+ tests/fliblib/*.cabal
+ tests/fliblib/lib/*.hs
+
+ tests/bkpregex/*.cabal
+ tests/bkpregex/*.hs
+ tests/bkpregex/regex-example/*.hs
+ tests/bkpregex/regex-indef/*.hs
+ tests/bkpregex/regex-indef/*.hsig
+ tests/bkpregex/regex-types/Regex/*.hs
+ tests/bkpregex/str-impls/Str/*.hs
+
+source-repository head
+ type: git
+ location: https://github.com/DanielG/cabal-helper.git
+
+flag dev
+ description: Build development components
+ default: False
+ manual: True
+
+custom-setup
+ setup-depends: base
+ , Cabal < 3 && >= 2.0.0.0
+
+-- [Note test dependencies] Vaious tests need access to modules used in other
+-- components, unfortunately we can't use Cabal 2.0's new internal libraries for
+-- this because we'd like to support ancient Cabal versions. Instead we just
+-- copy 'hs-source-dirs', 'build-depends' and 'other-modules' fields as
+-- appropriate.
+--
+-- The following awk command will copy paragraphs starting with:
+-- -- Common some-name
+-- to following paragraphs starting with:
+-- -- Instantiate common some-name
+--
+-- $ gawk -i inplace -f scripts/update-cabal-common-section-instantiations.awk cabal-helper.cabal
+--
+-- FIXME: We can use Cabal 2.0 features now, yey!
+
+library
+ default-language: Haskell2010
+ default-extensions: NondecreasingIndentation
+ hs-source-dirs: lib, src
+ exposed-modules: Distribution.Helper
+ other-modules:
+ CabalHelper.Shared.InterfaceTypes
+ CabalHelper.Shared.Sandbox
+ Paths_cabal_helper
+ autogen-modules: Paths_cabal_helper
+
+ ghc-options: -Wall
+
+ -- well actually this is a "runtime"-tool-depends :)
+ -- build-tool-depends: cabal-helper:cabal-helper-wrapper
+
+ build-depends: base < 5 && >= 4.7
+ build-depends: Cabal < 2.5 && >= 2.0 || < 1.26 && >= 1.14
+ , cabal-plan < 0.5 && >= 0.3.0.0
+ , containers < 1 && >= 0.5.5.1
+ , directory < 1.4 && >= 1.2.1.0
+ , filepath < 1.5 && >= 1.3.0.0
+ , transformers < 0.6 && >= 0.3.0.0
+ , mtl < 2.3 && >= 2.0
+ , process < 1.7 && >= 1.1.0.1
+ if !os(windows)
+ build-depends: unix < 2.8 && >= 2.5.1.1
+ build-depends: unix-compat < 0.6 && >= 0.4.3.1
+ , semigroupoids < 5.3 && >= 5.2
+
+
+
+executable cabal-helper-wrapper
+ main-is: CabalHelper/Compiletime/Wrapper.hs
+ if flag(dev)
+ ghc-options: -Wall
+ scope: private
+
+ -- Common c-h-wrapper-fields -- See [Note test dependencies]
+ default-language: Haskell2010
+ default-extensions: NondecreasingIndentation
+ other-extensions: TemplateHaskell
+ hs-source-dirs: src
+ other-modules:
+ CabalHelper.Compiletime.Compat.Environment
+ CabalHelper.Compiletime.Compat.ProgramDb
+ CabalHelper.Compiletime.Compat.Version
+ CabalHelper.Compiletime.Compile
+ CabalHelper.Compiletime.Data
+ CabalHelper.Compiletime.Log
+ CabalHelper.Compiletime.Types
+ CabalHelper.Shared.Common
+ CabalHelper.Shared.InterfaceTypes
+ CabalHelper.Shared.Sandbox
+ Paths_cabal_helper
+ build-tool-depends: cabal-install:cabal
+ build-depends: base < 5 && >= 4.7
+ if os(windows)
+ build-depends: base >= 4.7
+ build-depends: Cabal < 2.5 && >= 2.0 || < 1.26 && >= 1.14
+ , cabal-plan < 0.5 && >= 0.3.0.0
+ , containers < 1 && >= 0.5.5.1
+ , bytestring < 0.11 && >= 0.9.2.1
+ , directory < 1.4 && >= 1.2.1.0
+ , filepath < 1.5 && >= 1.3.0.0
+ , mtl < 2.3 && >= 2.0
+ , process < 1.7 && >= 1.1.0.1
+ , pretty-show < 1.9 && >= 1.8.1
+ , text < 1.3 && >= 1.0.0.0
+ , template-haskell < 2.14 && >= 2.7.0.0
+ , temporary < 1.3 && >= 1.2.1
+ , transformers < 0.6 && >= 0.3.0.0
+ if !os(windows)
+ build-depends: unix < 2.8 && >= 2.5.1.1
+ build-depends: unix-compat < 0.6 && >= 0.4.3.1
+ , utf8-string < 1.1 && >= 1.0.1.1
+ build-tools: cabal
+
+
+test-suite compile-test
+ type: exitcode-stdio-1.0
+ main-is: CompileTest.hs
+ hs-source-dirs: tests
+ ghc-options: -Wall
+ build-tools: cabal
+
+ -- Instantiate common c-h-wrapper-fields -- See [Note test dependencies]
+ default-language: Haskell2010
+ default-extensions: NondecreasingIndentation
+ other-extensions: TemplateHaskell
+ hs-source-dirs: src
+ other-modules:
+ CabalHelper.Compiletime.Compat.Environment
+ CabalHelper.Compiletime.Compat.ProgramDb
+ CabalHelper.Compiletime.Compat.Version
+ CabalHelper.Compiletime.Compile
+ CabalHelper.Compiletime.Data
+ CabalHelper.Compiletime.Log
+ CabalHelper.Compiletime.Types
+ CabalHelper.Shared.Common
+ CabalHelper.Shared.InterfaceTypes
+ CabalHelper.Shared.Sandbox
+ Paths_cabal_helper
+ build-tool-depends: cabal-install:cabal
+ build-depends: base < 5 && >= 4.7
+ if os(windows)
+ build-depends: base >= 4.7
+ build-depends: Cabal < 2.5 && >= 2.0 || < 1.26 && >= 1.14
+ , cabal-plan < 0.5 && >= 0.3.0.0
+ , containers < 1 && >= 0.5.5.1
+ , bytestring < 0.11 && >= 0.9.2.1
+ , directory < 1.4 && >= 1.2.1.0
+ , filepath < 1.5 && >= 1.3.0.0
+ , mtl < 2.3 && >= 2.0
+ , process < 1.7 && >= 1.1.0.1
+ , pretty-show < 1.9 && >= 1.8.1
+ , text < 1.3 && >= 1.0.0.0
+ , template-haskell < 2.14 && >= 2.7.0.0
+ , temporary < 1.3 && >= 1.2.1
+ , transformers < 0.6 && >= 0.3.0.0
+ if !os(windows)
+ build-depends: unix < 2.8 && >= 2.5.1.1
+ build-depends: unix-compat < 0.6 && >= 0.4.3.1
+ , utf8-string < 1.1 && >= 1.0.1.1
+ build-tools: cabal
+
+
+test-suite ghc-session
+ type: exitcode-stdio-1.0
+ main-is: GhcSession.hs
+ hs-source-dirs: tests
+ ghc-options: -Wall
+ build-depends: base < 5 && >= 4.7
+ , ghc < 8.5 && >= 7.8
+ , ghc-paths < 0.2 && >= 0.1.0.9
+ , cabal-helper
+
+ -- Instantiate common c-h-wrapper-fields -- See [Note test dependencies]
+ default-language: Haskell2010
+ default-extensions: NondecreasingIndentation
+ other-extensions: TemplateHaskell
+ hs-source-dirs: src
+ other-modules:
+ CabalHelper.Compiletime.Compat.Environment
+ CabalHelper.Compiletime.Compat.ProgramDb
+ CabalHelper.Compiletime.Compat.Version
+ CabalHelper.Compiletime.Compile
+ CabalHelper.Compiletime.Data
+ CabalHelper.Compiletime.Log
+ CabalHelper.Compiletime.Types
+ CabalHelper.Shared.Common
+ CabalHelper.Shared.InterfaceTypes
+ CabalHelper.Shared.Sandbox
+ Paths_cabal_helper
+ build-tool-depends: cabal-install:cabal
+ build-depends: base < 5 && >= 4.7
+ if os(windows)
+ build-depends: base >= 4.7
+ build-depends: Cabal < 2.5 && >= 2.0 || < 1.26 && >= 1.14
+ , cabal-plan < 0.5 && >= 0.3.0.0
+ , containers < 1 && >= 0.5.5.1
+ , bytestring < 0.11 && >= 0.9.2.1
+ , directory < 1.4 && >= 1.2.1.0
+ , filepath < 1.5 && >= 1.3.0.0
+ , mtl < 2.3 && >= 2.0
+ , process < 1.7 && >= 1.1.0.1
+ , pretty-show < 1.9 && >= 1.8.1
+ , text < 1.3 && >= 1.0.0.0
+ , template-haskell < 2.14 && >= 2.7.0.0
+ , temporary < 1.3 && >= 1.2.1
+ , transformers < 0.6 && >= 0.3.0.0
+ if !os(windows)
+ build-depends: unix < 2.8 && >= 2.5.1.1
+ build-depends: unix-compat < 0.6 && >= 0.4.3.1
+ , utf8-string < 1.1 && >= 1.0.1.1
+ build-tools: cabal
+
+
+executable cabal-helper-main
+ default-language: Haskell2010
+ default-extensions: NondecreasingIndentation
+ main-is: CabalHelper/Runtime/Main.hs
+ hs-source-dirs: src
+ other-modules:
+ CabalHelper.Shared.Common
+ CabalHelper.Shared.InterfaceTypes
+ CabalHelper.Shared.Sandbox
+
+ -- This component is usually built at runtime by cabal-helper-wrapper but
+ -- during development it's convinient to build it via cabal
+ if flag(dev)
+ buildable: True
+ else
+ buildable: False
+
+ -- Common c-h-main-fields -- See [Note test dependencies]
+ ghc-options: -Wall -fno-warn-unused-imports
+ build-depends: base < 5 && >= 4.7
+ , Cabal
+ , containers
+ , bytestring
+ , filepath
+ , directory
+ , ghc-prim