packages feed

lhc-0.6.20081216: lhc.cabal

cabal-version:       >= 1.6
name:                lhc
version:             0.6.20081216
synopsis:            LHC Haskell Compiler
description:
  lhc is a haskell compiler which aims to produce the most efficient programs possible via whole
  program analysis and other optimizations.
Tested-With:         GHC == 6.10.1, GHC == 6.8.3
category:            Compiler
license:             GPL
license-file:        COPYING
author:              John Meacham, David Himmelstrup
maintainer:          lhc@projects.haskell.org
homepage:            http://lhc.seize.it/
build-type:          Custom
Extra-Source-Files:  src/arch/generic.arch, src/arch/i686.arch, src/arch/x86_64.arch
extra-source-files:  lib/base/base.cabal,
                     lib/base/Setup.hs,
                     lib/base/src/Control/*.hs,
                     lib/base/src/Data/Array/*.hs,
                     lib/base/src/Data/*.hs,
                     lib/base/src/Debug/*.hs,
                     lib/base/src/Foreign/C/*.hs,
                     lib/base/src/Foreign/Marshal/*.hs,
                     lib/base/src/Foreign/*.hs,
                     lib/base/src/Foreign/Storable.m4,
                     lib/base/src/Lhc/Inst/*.hs,
                     lib/base/src/Lhc/*.hs,
                     lib/base/src/Lhc/Order.m4,
                     lib/base/src/Lhc/Text/*.hs,
                     lib/base/src/Prelude/*.hs,
                     lib/base/src/Prelude.hs,
                     lib/base/src/System/Console/GetOpt.hs,
                     lib/base/src/System/IO/*.hs,
                     lib/base/src/System/*.hs,
                     lib/base/src/*.hs,
                     lib/base/src/Text/*.hs,
                     lib/base/src/Text/Show/*.hs,
                     lib/base/src/Unsafe/*.hs
data-dir:            data
data-files:          HsFFI.h names.txt operators.txt prelude.m4 primitives.txt props.txt wsize.h 
                     rts/lhc_rts.c rts/lhc_rts2.c rts/lhc_rts_alloc.c rts/lhc_rts_header.h 
                     
flag base4
flag threaded
  default:            False
flag lhc-regress
  default:            False
flag with-base
  default:            False

Executable lhc
 main-is:             Main.hs
 Hs-Source-Dirs:      src
 cc-Options:          -std=c99 -O2 -Wall
 ghc-prof-options:    -auto-all
 Extensions:          DeriveDataTypeable, ForeignFunctionInterface, EmptyDataDecls, GeneralizedNewtypeDeriving
                      MultiParamTypeClasses, FunctionalDependencies, FlexibleInstances, FlexibleContexts
                      UndecidableInstances, TypeSynonymInstances, ScopedTypeVariables, ParallelListComp,
                      OverlappingInstances, RecursiveDo, GADTs, RankNTypes, PatternGuards, TemplateHaskell
 build-depends:       containers, mtl, pretty, array, bytestring, pureMD5,
                      binary >= 0.4.4, directory, random, regex-compat,
                      graphviz, fgl, unix, zlib, old-time, haskell98,
                      utf8-string, stringtable-atom, derive >= 0.1.4,
                      filepath, ansi-wl-pprint >= 0.5.0, ansi-terminal >= 0.5.0
                      
 ghc-options:         -fwarn-unused-imports
 if flag(base4)
  build-depends:      base >= 4 && < 5, syb
  cpp-options:        -DBASE4
 else
  build-depends:      base >= 3 && < 4
  Extensions:         PatternSignatures
 if flag(threaded)
  ghc-options:        -threaded
 if flag(with-base)
  x-build-base:       True
 else
  x-build-base:       False
 Other-modules:
  CharIO, FindFixpoint, FlagOpts, Options, PrimitiveOperators,
  DataConstructors, FlagDump, GenUtil, PackedString, RawFiles, Stats,
  C.FromGrin2 C.Arch C.FFI C.Generate C.Prims Cmm.Op
  Cmm.OpEval Cmm.Number
  DerivingDrift.RuleUtils DerivingDrift.DataP DerivingDrift.Drift DerivingDrift.StandardRules
  Doc.DocLike Doc.PPrint Doc.Pretty Doc.Chars Doc.Attr E.TypeAnalysis E.Annotate E.Arbitrary
  E.Binary E.CPR E.Demand E.Diff E.E E.Eta E.Eval E.FreeVars E.FromHs E.Inline E.LambdaLift
  E.LetFloat E.PrimOpt E.Program E.Rules E.SSimplify E.SStrictness E.Show E.Subst E.ToHs
  E.Traverse E.Type E.WorkerWrapper E.TypeCheck E.Values Fixer.Fixer Fixer.Supply Fixer.VMap
  FrontEnd.FrontEnd FrontEnd.Class FrontEnd.Desugar FrontEnd.DataConsAssump FrontEnd.DeclsDepends
  FrontEnd.DependAnalysis FrontEnd.Exports FrontEnd.Diagnostic FrontEnd.HsErrors FrontEnd.HsPretty
  FrontEnd.HsSyn FrontEnd.Infix FrontEnd.KindInfer FrontEnd.Lexer FrontEnd.ParseMonad
  FrontEnd.ParseUtils FrontEnd.Syn.Traverse FrontEnd.Syn.Options FrontEnd.Rename FrontEnd.SrcLoc
  FrontEnd.Representation FrontEnd.Tc.Class FrontEnd.Tc.Kind FrontEnd.Tc.Main FrontEnd.Tc.Module
  FrontEnd.Tc.Monad FrontEnd.Tc.Type FrontEnd.Tc.Unify FrontEnd.TypeSynonyms FrontEnd.TypeSigs
  FrontEnd.HsParser FrontEnd.TypeSyns FrontEnd.Unlit FrontEnd.Utils FrontEnd.Warning
  Grin.DeadCode Grin.Arity Grin.Devolve Grin.Embed Grin.FromE Grin.EvalInline Grin.Grin
  Grin.HashConst Grin.Interpret Grin.Lint Grin.NodeAnalyze Grin.Noodle Grin.Optimize
  Grin.SSimplify Grin.Show Grin.Simplify Grin.Unboxing Grin.Val Grin.Whiz Ho.Collected
  Ho.Binary Ho.Build Ho.Library Ho.Type Info.Binary Info.Info Info.Types Info.Properties
  Name.Prim Name.Binary Name.Id Name.Name Name.Names Name.VConsts
  Support.Tuple Support.CFF Support.FreeVars Support.CanType Support.ShowTable
  Support.Tickle Support.Transform Support.Unparse Support.MapBinaryInstance Util.Graph
  Util.Gen Util.ArbitraryInstances Util.BitSet Util.BooleanSolver Util.ContextMonad
  Util.FilterInput Util.ReaderWriter Util.Graphviz Util.HasSize Util.Histogram
  Util.Inst Util.IntBag Util.Interact Util.NameMonad Util.Once Util.Perhaps
  Util.RWS Util.Relation Util.SameShape Util.Seq Util.SetLike Util.TrueSet
  Util.UnionFind Util.UnionSolve Util.UniqueMonad Util.VarName Util.Util LHCVersion

Executable lhc-regress
  if flag(lhc-regress)
    Buildable:      True
  else
    Buildable:      False
  main-is:          Main.hs
  hs-source-dirs:   lhc-regress/
  build-depends:    process
  if flag(base4)
    build-depends:  base >= 4 && < 5
    cpp-options:    -DBASE4
  else
    build-depends:  base >= 3 && < 4