summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHerbert Valerio Riedel <hvr@gnu.org>2013-09-28 11:10:23 +0200
committerHerbert Valerio Riedel <hvr@gnu.org>2013-09-28 12:29:11 +0200
commita7e09b46ce0b3bb46329eaf96522bd2c381a297f (patch)
tree9c6e7bd0008ca465cc5130f94337ab06f770db1a
parentdeff0ccbe976a3ef204e0a8585b5559777ca67eb (diff)
downloadhaskell-a7e09b46ce0b3bb46329eaf96522bd2c381a297f.tar.gz
Modernize and refactor `base.cabal`
- removes the redundant `impl(ghc)` conditional - unifies the `exposed-modules` list - sorts lists alphabetically - convert to uniform `,`-less & line-oriented lists (helps reduce diff-noise in future) - remove obsolete `nhc98-options` field - avoid `{}`-style Cabal grammar - remove `extensions: CPP` - add `category` field to silence Cabal warning - add missing entries to `extra-source-files` (the source distribution wasn't buildable because of this!) - list all occuring `LANGUAGE` pragmas in `other-extensions` - explicitly declare `default-language: Haskell2010` Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
-rw-r--r--libraries/base/base.cabal460
1 files changed, 262 insertions, 198 deletions
diff --git a/libraries/base/base.cabal b/libraries/base/base.cabal
index 6e8e67eb83..f8993df380 100644
--- a/libraries/base/base.cabal
+++ b/libraries/base/base.cabal
@@ -4,21 +4,36 @@ version: 4.7.0.0
license: BSD3
license-file: LICENSE
maintainer: libraries@haskell.org
-bug-reports: http://hackage.haskell.org/trac/ghc/newticket?component=libraries/base
+bug-reports: http://hackage.haskell.org/trac/ghc/newticket?component=libraries/base
synopsis: Basic libraries
+category: Unclassified
description:
This package contains the Prelude and its support libraries,
and a large collection of useful libraries ranging from data
structures to parsing combinators and debugging utilities.
-cabal-version: >=1.6
-build-type: Configure
+cabal-version: >=1.10
+build-type: Configure
+
extra-tmp-files:
- config.log config.status autom4te.cache
- include/HsBaseConfig.h include/EventConfig.h
+ autom4te.cache
+ config.log
+ config.status
+ include/EventConfig.h
+ include/HsBaseConfig.h
+
extra-source-files:
- config.guess config.sub install-sh
- aclocal.m4 configure.ac configure
- include/CTypes.h include/md5.h
+ aclocal.m4
+ base.buildinfo.in
+ config.guess
+ config.sub
+ configure
+ configure.ac
+ include/CTypes.h
+ include/EventConfig.h.in
+ include/HsBaseConfig.h.in
+ include/ieee-flpt.h
+ include/md5.h
+ install-sh
source-repository head
type: git
@@ -27,218 +42,270 @@ source-repository head
Flag integer-simple
Description: Use integer-simple
-Library {
- if impl(ghc) {
- if flag(integer-simple)
- build-depends: integer-simple
- else
- build-depends: integer-gmp
- cpp-options: -DOPTIMISE_INTEGER_GCD_LCM
- build-depends: rts, ghc-prim
- exposed-modules:
- Foreign.Concurrent,
- GHC.Arr,
- GHC.Base,
- GHC.Char,
- GHC.Conc,
- GHC.Conc.IO,
- GHC.Conc.Signal,
- GHC.Conc.Sync,
- GHC.ConsoleHandler,
- GHC.Constants,
- GHC.Desugar,
- GHC.Enum,
- GHC.Environment,
- GHC.Err,
- GHC.Exception,
- GHC.Exts,
- GHC.Fingerprint,
- GHC.Fingerprint.Type,
- GHC.Float,
- GHC.Float.ConversionUtils,
- GHC.Float.RealFracMethods,
- GHC.Foreign,
- GHC.ForeignPtr,
- GHC.Generics,
- GHC.GHCi,
- GHC.IO,
- GHC.IO.Buffer,
- GHC.IO.BufferedIO,
- GHC.IO.Device,
- GHC.IO.Encoding,
- GHC.IO.Encoding.CodePage,
- GHC.IO.Encoding.Failure,
- GHC.IO.Encoding.Iconv,
- GHC.IO.Encoding.Latin1,
- GHC.IO.Encoding.Types,
- GHC.IO.Encoding.UTF16,
- GHC.IO.Encoding.UTF32,
- GHC.IO.Encoding.UTF8,
- GHC.IO.Exception,
- GHC.IO.FD,
- GHC.IO.Handle,
- GHC.IO.Handle.FD,
- GHC.IO.Handle.Internals,
- GHC.IO.Handle.Text,
- GHC.IO.Handle.Types,
- GHC.IO.IOMode,
- GHC.IOArray,
- GHC.IORef,
- GHC.IP,
- GHC.Int,
- GHC.List,
- GHC.MVar,
- GHC.Num,
- GHC.PArr,
- GHC.Pack,
- GHC.Profiling,
- GHC.Ptr,
- GHC.Read,
- GHC.Real,
- GHC.ST,
- GHC.Stack,
- GHC.Stats,
- GHC.Show,
- GHC.Stable,
- GHC.Storable,
- GHC.STRef,
- GHC.TypeLits,
- GHC.TopHandler,
- GHC.Unicode,
- GHC.Weak,
- GHC.Word,
- System.Timeout
- if os(windows)
- exposed-modules: GHC.IO.Encoding.CodePage.API
- GHC.IO.Encoding.CodePage.Table
- GHC.Conc.Windows
- GHC.Windows
- }
+Library
+ default-language: Haskell2010
+ other-extensions:
+ BangPatterns
+ CApiFFI
+ CPP
+ ConstraintKinds
+ DataKinds
+ DeriveDataTypeable
+ DeriveGeneric
+ ExistentialQuantification
+ ExplicitForAll
+ FlexibleContexts
+ FlexibleInstances
+ FunctionalDependencies
+ GADTs
+ GeneralizedNewtypeDeriving
+ KindSignatures
+ MagicHash
+ MultiParamTypeClasses
+ NegativeLiterals
+ NoBangPatterns
+ NoImplicitPrelude
+ NondecreasingIndentation
+ OverlappingInstances
+ OverloadedStrings
+ ParallelArrays
+ PolyKinds
+ RankNTypes
+ RecordWildCards
+ RoleAnnotations
+ Safe
+ ScopedTypeVariables
+ StandaloneDeriving
+ Trustworthy
+ TypeFamilies
+ TypeOperators
+ TypeSynonymInstances
+ UnboxedTuples
+ UndecidableInstances
+ UnliftedFFITypes
+ Unsafe
+
+ build-depends: rts, ghc-prim
+ if flag(integer-simple)
+ build-depends: integer-simple
+ else
+ build-depends: integer-gmp
+ cpp-options: -DOPTIMISE_INTEGER_GCD_LCM
+
exposed-modules:
- Control.Applicative,
- Control.Arrow,
- Control.Category,
- Control.Concurrent,
- Control.Concurrent.Chan,
- Control.Concurrent.MVar,
- Control.Concurrent.QSem,
- Control.Concurrent.QSemN,
- Control.Exception,
+ Control.Applicative
+ Control.Arrow
+ Control.Category
+ Control.Concurrent
+ Control.Concurrent.Chan
+ Control.Concurrent.MVar
+ Control.Concurrent.QSem
+ Control.Concurrent.QSemN
+ Control.Exception
Control.Exception.Base
- Control.Monad,
- Control.Monad.Fix,
- Control.Monad.Instances,
- Control.Monad.ST,
- Control.Monad.ST.Safe,
- Control.Monad.ST.Unsafe,
- Control.Monad.ST.Lazy,
- Control.Monad.ST.Lazy.Safe,
- Control.Monad.ST.Lazy.Unsafe,
- Control.Monad.ST.Strict,
+ Control.Monad
+ Control.Monad.Fix
+ Control.Monad.Instances
+ Control.Monad.ST
+ Control.Monad.ST.Lazy
+ Control.Monad.ST.Lazy.Safe
+ Control.Monad.ST.Lazy.Unsafe
+ Control.Monad.ST.Safe
+ Control.Monad.ST.Strict
+ Control.Monad.ST.Unsafe
Control.Monad.Zip
- Data.Bits,
- Data.Bool,
- Data.Char,
- Data.Complex,
- Data.Dynamic,
- Data.Either,
- Data.Eq,
- Data.Data,
- Data.Fixed,
+ Data.Bits
+ Data.Bool
+ Data.Char
+ Data.Complex
+ Data.Data
+ Data.Dynamic
+ Data.Either
+ Data.Eq
+ Data.Fixed
Data.Foldable
- Data.Function,
- Data.Functor,
- Data.IORef,
- Data.Int,
- Data.Ix,
- Data.List,
- Data.Maybe,
- Data.Monoid,
- Data.Ord,
- Data.Proxy,
- Data.Ratio,
+ Data.Function
+ Data.Functor
+ Data.IORef
+ Data.Int
+ Data.Ix
+ Data.List
+ Data.Maybe
+ Data.Monoid
+ Data.OldTypeable
+ Data.OldTypeable.Internal
+ Data.Ord
+ Data.Proxy
+ Data.Ratio
Data.STRef
Data.STRef.Lazy
Data.STRef.Strict
- Data.String,
+ Data.String
Data.Traversable
- Data.Tuple,
- Data.Typeable,
- Data.Typeable.Internal,
- Data.OldTypeable,
- Data.OldTypeable.Internal,
- Data.Type.Equality,
- Data.Unique,
- Data.Version,
- Data.Word,
- Debug.Trace,
- Foreign,
- Foreign.C,
- Foreign.C.Error,
- Foreign.C.String,
- Foreign.C.Types,
- Foreign.ForeignPtr,
- Foreign.ForeignPtr.Safe,
- Foreign.ForeignPtr.Unsafe,
- Foreign.Marshal,
- Foreign.Marshal.Alloc,
- Foreign.Marshal.Array,
- Foreign.Marshal.Error,
- Foreign.Marshal.Pool,
- Foreign.Marshal.Safe,
- Foreign.Marshal.Utils,
- Foreign.Marshal.Unsafe,
- Foreign.Ptr,
- Foreign.Safe,
- Foreign.StablePtr,
- Foreign.Storable,
- Numeric,
- Prelude,
+ Data.Tuple
+ Data.Type.Equality
+ Data.Typeable
+ Data.Typeable.Internal
+ Data.Unique
+ Data.Version
+ Data.Word
+ Debug.Trace
+ Foreign
+ Foreign.C
+ Foreign.C.Error
+ Foreign.C.String
+ Foreign.C.Types
+ Foreign.Concurrent
+ Foreign.ForeignPtr
+ Foreign.ForeignPtr.Safe
+ Foreign.ForeignPtr.Unsafe
+ Foreign.Marshal
+ Foreign.Marshal.Alloc
+ Foreign.Marshal.Array
+ Foreign.Marshal.Error
+ Foreign.Marshal.Pool
+ Foreign.Marshal.Safe
+ Foreign.Marshal.Unsafe
+ Foreign.Marshal.Utils
+ Foreign.Ptr
+ Foreign.Safe
+ Foreign.StablePtr
+ Foreign.Storable
+ GHC.Arr
+ GHC.Base
+ GHC.Char
+ GHC.Conc
+ GHC.Conc.IO
+ GHC.Conc.Signal
+ GHC.Conc.Sync
+ GHC.ConsoleHandler
+ GHC.Constants
+ GHC.Desugar
+ GHC.Enum
+ GHC.Environment
+ GHC.Err
+ GHC.Exception
+ GHC.Exts
+ GHC.Fingerprint
+ GHC.Fingerprint.Type
+ GHC.Float
+ GHC.Float.ConversionUtils
+ GHC.Float.RealFracMethods
+ GHC.Foreign
+ GHC.ForeignPtr
+ GHC.GHCi
+ GHC.Generics
+ GHC.IO
+ GHC.IO.Buffer
+ GHC.IO.BufferedIO
+ GHC.IO.Device
+ GHC.IO.Encoding
+ GHC.IO.Encoding.CodePage
+ GHC.IO.Encoding.Failure
+ GHC.IO.Encoding.Iconv
+ GHC.IO.Encoding.Latin1
+ GHC.IO.Encoding.Types
+ GHC.IO.Encoding.UTF16
+ GHC.IO.Encoding.UTF32
+ GHC.IO.Encoding.UTF8
+ GHC.IO.Exception
+ GHC.IO.FD
+ GHC.IO.Handle
+ GHC.IO.Handle.FD
+ GHC.IO.Handle.Internals
+ GHC.IO.Handle.Text
+ GHC.IO.Handle.Types
+ GHC.IO.IOMode
+ GHC.IOArray
+ GHC.IORef
+ GHC.IP
+ GHC.Int
+ GHC.List
+ GHC.MVar
+ GHC.Num
+ GHC.PArr
+ GHC.Pack
+ GHC.Profiling
+ GHC.Ptr
+ GHC.Read
+ GHC.Real
+ GHC.ST
+ GHC.STRef
+ GHC.Show
+ GHC.Stable
+ GHC.Stack
+ GHC.Stats
+ GHC.Storable
+ GHC.TopHandler
+ GHC.TypeLits
+ GHC.Unicode
+ GHC.Weak
+ GHC.Word
+ Numeric
+ Prelude
+ System.CPUTime
System.Console.GetOpt
- System.CPUTime,
- System.Environment,
- System.Exit,
- System.IO,
- System.IO.Error,
- System.IO.Unsafe,
- System.Info,
- System.Mem,
- System.Mem.StableName,
- System.Mem.Weak,
- System.Posix.Internals,
- System.Posix.Types,
- Text.ParserCombinators.ReadP,
- Text.ParserCombinators.ReadPrec,
- Text.Printf,
- Text.Read,
- Text.Read.Lex,
- Text.Show,
+ System.Environment
+ System.Exit
+ System.IO
+ System.IO.Error
+ System.IO.Unsafe
+ System.Info
+ System.Mem
+ System.Mem.StableName
+ System.Mem.Weak
+ System.Posix.Internals
+ System.Posix.Types
+ System.Timeout
+ Text.ParserCombinators.ReadP
+ Text.ParserCombinators.ReadPrec
+ Text.Printf
+ Text.Read
+ Text.Read.Lex
+ Text.Show
Text.Show.Functions
Unsafe.Coerce
+
other-modules:
Control.Monad.ST.Imp
Control.Monad.ST.Lazy.Imp
Foreign.ForeignPtr.Imp
System.Environment.ExecutablePath
+
c-sources:
+ cbits/DarwinUtils.c
cbits/PrelIOUtils.c
+ cbits/SetEnv.c
cbits/WCsubst.c
cbits/Win32Utils.c
- cbits/DarwinUtils.c
cbits/consUtils.c
cbits/iconv.c
cbits/inputReady.c
- cbits/primFloat.c
cbits/md5.c
- cbits/SetEnv.c
+ cbits/primFloat.c
cbits/sysconf.c
+
include-dirs: include
- includes: HsBase.h
- install-includes: HsBase.h HsBaseConfig.h EventConfig.h WCsubst.h consUtils.h Typeable.h OldTypeable.h
- if os(windows) {
+ includes:
+ HsBase.h
+ install-includes:
+ HsBase.h
+ HsBaseConfig.h
+ EventConfig.h
+ WCsubst.h
+ consUtils.h
+ Typeable.h
+ OldTypeable.h
+
+ -- OS Specific
+ if os(windows)
extra-libraries: wsock32, user32, shell32
- }
- if !os(windows) {
+ exposed-modules:
+ GHC.IO.Encoding.CodePage.API
+ GHC.IO.Encoding.CodePage.Table
+ GHC.Conc.Windows
+ GHC.Windows
+ else
exposed-modules:
GHC.Event
other-modules:
@@ -251,15 +318,12 @@ Library {
GHC.Event.Internal
GHC.Event.KQueue
GHC.Event.Manager
- GHC.Event.TimerManager
GHC.Event.PSQ
GHC.Event.Poll
GHC.Event.Thread
+ GHC.Event.TimerManager
GHC.Event.Unique
- }
+
-- We need to set the package name to base (without a version number)
-- as it's magic.
ghc-options: -package-name base
- nhc98-options: -H4M -K3M
- extensions: CPP
-}