aboutsummaryrefslogtreecommitdiff
path: root/CabalHelper/Shared
diff options
context:
space:
mode:
authorDaniel Gröber <dxld@darkboxed.org>2017-09-25 10:45:03 +0200
committerDaniel Gröber <dxld@darkboxed.org>2017-09-25 13:11:28 +0200
commitb42f9095993f5862d4450a84f6cf535b7a252d48 (patch)
tree4b55984dd1258a9bb9c6cb950834961bd2a10524 /CabalHelper/Shared
parent373a468190a393fa2f7cf3851f1050dc6bf5bea1 (diff)
Remove 'Options' from shared Types module
Only needed at compiletime, were being hidden everywhere else already.
Diffstat (limited to 'CabalHelper/Shared')
-rw-r--r--CabalHelper/Shared/InterfaceTypes.hs (renamed from CabalHelper/Shared/Types.hs)55
1 files changed, 29 insertions, 26 deletions
diff --git a/CabalHelper/Shared/Types.hs b/CabalHelper/Shared/InterfaceTypes.hs
index 18d532b..88858d0 100644
--- a/CabalHelper/Shared/Types.hs
+++ b/CabalHelper/Shared/InterfaceTypes.hs
@@ -1,5 +1,5 @@
-- cabal-helper: Simple interface to Cabal's configuration state
--- Copyright (C) 2015 Daniel Gröber <dxld ÄT darkboxed DOT org>
+-- Copyright (C) 2015,2017 Daniel Gröber <dxld ÄT darkboxed DOT org>
--
-- This program is free software: you can redistribute it and/or modify
-- it under the terms of the GNU Affero General Public License as published by
@@ -15,22 +15,25 @@
-- along with this program. If not, see <http://www.gnu.org/licenses/>.
{-# LANGUAGE DeriveGeneric, DeriveDataTypeable, DefaultSignatures #-}
-module CabalHelper.Shared.Types where
-import GHC.Generics
-import Data.Version
+{-|
+Module : CabalHelper.Shared.InterfaceTypes
+Description : Types which are used by c-h library and executable to communicate
+License : AGPL-3
-newtype ChModuleName = ChModuleName String
- deriving (Eq, Ord, Read, Show, Generic)
+These types are used to communicate between the cabal-helper library and main
+executable, using Show/Read. If any types in this module change the major
+version must be bumped since this will be exposed in the @Distribution.Helper@
+module.
-data ChComponentName = ChSetupHsName
- | ChLibName
- | ChSubLibName String
- | ChFLibName String
- | ChExeName String
- | ChTestName String
- | ChBenchName String
- deriving (Eq, Ord, Read, Show, Generic)
+The cached executables in @$XDG_CACHE_DIR/cabal-helper@ use the cabal-helper
+version (among other things) as a cache key so we don't need to worry about
+talking to an old executable.
+-}
+module CabalHelper.Shared.InterfaceTypes where
+
+import GHC.Generics
+import Data.Version
data ChResponse
= ChResponseCompList [(ChComponentName, [String])]
@@ -43,6 +46,18 @@ data ChResponse
| ChResponseFlags [(String, Bool)]
deriving (Eq, Ord, Read, Show, Generic)
+data ChComponentName = ChSetupHsName
+ | ChLibName
+ | ChSubLibName String
+ | ChFLibName String
+ | ChExeName String
+ | ChTestName String
+ | ChBenchName String
+ deriving (Eq, Ord, Read, Show, Generic)
+
+newtype ChModuleName = ChModuleName String
+ deriving (Eq, Ord, Read, Show, Generic)
+
data ChEntrypoint = ChSetupEntrypoint -- ^ Almost like 'ChExeEntrypoint' but
-- @main-is@ could either be @"Setup.hs"@
-- or @"Setup.lhs"@. Since we don't know
@@ -59,15 +74,3 @@ data ChPkgDb = ChPkgGlobal
| ChPkgUser
| ChPkgSpecific FilePath
deriving (Eq, Ord, Read, Show, Generic)
-
-data Options = Options {
- verbose :: Bool
- , ghcProgram :: FilePath
- , ghcPkgProgram :: FilePath
- , cabalProgram :: FilePath
- , cabalVersion :: Maybe Version
- , cabalPkgDb :: Maybe FilePath
-}
-
-defaultOptions :: Options
-defaultOptions = Options False "ghc" "ghc-pkg" "cabal" Nothing Nothing